Hi folks,
I'm still working on getting these Heinzinger PCU 50-300 supplies doing everything I want using EPICS. Today I thought I'd try reading the status word from the supply, so I added an mbbiDirect record. The custom sections of my .db file now read:
record(ai, "$(P)$(R)GetCurrent") {
field(DESC, "Read output current")
field(DTYP, "stream")
field(INP, "@devPCU50_300.proto getCurrent $(PORT) $(A)")
# field(SCAN, "1 second")
field(SCAN, "Passive")
# field(PINI, "YES")
field(EGU, "Amps")
field(ESLO, "0.001")
field(LINR, "SLOPE")
}
record(ao, "$(P)$(R)SetCurrent") {
field(DESC, "Write output current")
field(DTYP, "stream")
# field(SCAN, "1 second")
field(SCAN, "Passive")
field(OUT, "@devPCU50_300.proto setCurrent(%d) $(PORT) $(A)")
field(PINI, "YES")
field(VAL, "0")
# field(FLNK, "$(P)$(R)GetCurrent")
field(EGU, "Amps")
field(ESLO, "0.001")
field(LINR, "SLOPE")
}
record(mbbiDirect, "$(P)$(R)StatusRegister") {
field(DESC, "Status Register")
field(NOBT, "24")
field(DTYP, "stream")
field(INP, "@devPCU50_300.proto getStatus $(PORT) $(A)")
field(PINI, "YES")
field(SCAN, "Passive")
}
But I'm seeing some unexpected behavior, somehow related to my other records. Above, the PINI field for the GetCurrent record is commented out. When I start the IOC in this state, the StatusRegister record is properly populated. If I set PINI to YES and start the IOC, the StatusRegister record is not properly populated. Running the command 'dbtr PCU50_300testStatusRegister' on the "broken" startup will update it so that it has the correct status. I've watched the console output when launching st.cmd, and browsed the logfiles that I generated, but I can't spot what I'm doing wrong. I've attached a logfile where I have the problem, and another where I don't. My .db, .proto, and st.cmd are at: https://github.com/leblancOUAL/PCU_50-300/
I feel like the root cause is that somehow the replies to the different serial commands are getting mixed up, but I can't see how that's possible. It is more likely that I've done something silly along the way. Any hints for troubleshooting are greatly appreciated!
Greg
--
Gregory Leblanc
Accelerator Engineer
Edwards Accelerator Lab - Ohio University
123 University Terrace
Athens, OH 45701 USA
leblanc at ohio.edu
M: (401) 52-OUAL1 or (401) 526-8251
2023/06/26 12:46:58 StreamEpics.cc:451: drvStreamInit()
2023/06/26 12:46:58 StreamEpics.cc:473: StreamProtocolParser::path = /home/leblanc/EPICS/PCU50-300/db
2023/06/26 12:46:58.682991 _main_ StreamEpics.cc:588: streamInitRecord(PCU50_300testSetCurrent): SEVR=0
2023/06/26 12:46:58.683028 _main_ StreamEpics.cc:593: streamInitRecord(PCU50_300testSetCurrent): create new Stream object
2023/06/26 12:46:58.683180 _main_ StreamEpics.cc:623: streamInitRecord(PCU50_300testSetCurrent): calling initRecord
2023/06/26 12:46:58.683209 _main_ StreamEpics.cc:775: Stream::initRecord PCU50_300testSetCurrent: parse link string "devPCU50_300.proto setCurrent(%d) USB0 0"
2023/06/26 12:46:58.683226 _main_ StreamEpics.cc:807: Stream::initRecord PCU50_300testSetCurrent: filename="devPCU50_300.proto" protocol="setCurrent(%d)" bus="USB0" addr=0 params=""
2023/06/26 12:46:58.683239 _main_ StreamEpics.cc:827: Stream::initRecord PCU50_300testSetCurrent: attachBus("USB0", 0, "")
2023/06/26 12:46:58.683254 _main_ StreamBusInterface.cc:65: StreamBusInterface::find(PCU50_300testSetCurrent, USB0, 0, "")
2023/06/26 12:46:58.683266 _main_ StreamBusInterface.cc:71: StreamBusInterface::find PCU50_300testSetCurrent check DebugInterface
2023/06/26 12:46:58.683281 _main_ StreamBusInterface.cc:74: StreamBusInterface::find DebugInterface does not match
2023/06/26 12:46:58.683292 _main_ StreamBusInterface.cc:71: StreamBusInterface::find PCU50_300testSetCurrent check DummyInterface
2023/06/26 12:46:58.683304 _main_ StreamBusInterface.cc:74: StreamBusInterface::find DummyInterface does not match
2023/06/26 12:46:58.683314 _main_ StreamBusInterface.cc:71: StreamBusInterface::find PCU50_300testSetCurrent check AsynDriverInterface
2023/06/26 12:46:58.683327 _main_ AsynDriverInterface.cc:369: AsynDriverInterface::getBusInterface(PCU50_300testSetCurrent, USB0, 0)
2023/06/26 12:46:58.683340 _main_ AsynDriverInterface.cc:285: AsynDriverInterface(PCU50_300testSetCurrent)
2023/06/26 12:46:58.683349 _main_ AsynDriverInterface.cc:299: AsynDriverInterface(PCU50_300testSetCurrent) createAsynUser
2023/06/26 12:46:58.683362 _main_ AsynDriverInterface.cc:310: AsynDriverInterface(PCU50_300testSetCurrent) epicsTimerQueueActive::allocate(true)
2023/06/26 12:46:58.683375 _main_ AsynDriverInterface.cc:314: AsynDriverInterface(PCU50_300testSetCurrent) timerQueue->createTimer()
2023/06/26 12:46:58.683384 _main_ AsynDriverInterface.cc:318: AsynDriverInterface(PCU50_300testSetCurrent) done
2023/06/26 12:46:58.683397 _main_ AsynDriverInterface.cc:451: PCU50_300testSetCurrent: AsynDriverInterface::connectToBus(USB0, 0): pasynManager->connectDevice(0x16fd858, USB0, 0) = asynSuccess
2023/06/26 12:46:58.683413 _main_ AsynDriverInterface.cc:523: PCU50_300testSetCurrent: AsynDriverInterface::connectToBus(USB0, 0): device is now connected
2023/06/26 12:46:58.683425 _main_ AsynDriverInterface.cc:374: AsynDriverInterface::getBusInterface(USB0, 0): new interface allocated
2023/06/26 12:46:58.683435 _main_ StreamBusInterface.cc:74: StreamBusInterface::find AsynDriverInterface matches
2023/06/26 12:46:58.683452 _main_ StreamCore.cc:167: StreamCore::attachBus(busname="USB0", addr=0, param="") businterface=0x1710760
2023/06/26 12:46:58.683463 _main_ StreamEpics.cc:837: Stream::initRecord PCU50_300testSetCurrent: parse("devPCU50_300.proto", "setCurrent(%d)")
2023/06/26 12:46:58.683497 _main_ StreamCore.cc:229: StreamCore::parse "setCurrent(%d)" -> "setCurrent[7m<00>[27m%d"
2023/06/26 12:46:58.683511 _main_ StreamProtocol.cc:207: StreamProtocolParser::readFile: try '/home/leblanc/EPICS/PCU50-300/db/devPCU50_300.proto'
2023/06/26 12:46:58.683539 _main_ StreamProtocol.cc:210: StreamProtocolParser::readFile: found '/home/leblanc/EPICS/PCU50-300/db/devPCU50_300.proto'
2023/06/26 12:46:58.683590 _main_ StreamProtocol.cc:782: new Protocol(name="getidn", line=1)
2023/06/26 12:46:58.683618 _main_ StreamProtocol.cc:782: new Protocol(name="cmd", line=7)
2023/06/26 12:46:58.683634 _main_ StreamProtocol.cc:782: new Protocol(name="setd", line=11)
2023/06/26 12:46:58.683651 _main_ StreamProtocol.cc:782: new Protocol(name="getd", line=14)
2023/06/26 12:46:58.683688 _main_ StreamProtocol.cc:782: new Protocol(name="getcurrent", line=20)
2023/06/26 12:46:58.683711 _main_ StreamProtocol.cc:782: new Protocol(name="getvoltage", line=25)
2023/06/26 12:46:58.683729 _main_ StreamProtocol.cc:782: new Protocol(name="setcurrent", line=30)
2023/06/26 12:46:58.683745 _main_ StreamProtocol.cc:782: new Protocol(name="setstandby", line=34)
2023/06/26 12:46:58.683760 _main_ StreamProtocol.cc:782: new Protocol(name="seton", line=38)
2023/06/26 12:46:58.683796 _main_ StreamProtocol.cc:782: new Protocol(name="setoff", line=42)
2023/06/26 12:46:58.683830 _main_ StreamProtocol.cc:782: new Protocol(name="getstatus", line=46)
2023/06/26 12:46:58.683858 _main_ StreamProtocol.cc:782: new Protocol(name="setcurrent", line=30)
2023/06/26 12:46:58.683870 _main_ StreamProtocol.cc:797: StreamProtocolParser::Protocol::Protocol $1="%d"
2023/06/26 12:46:58.683905 _main_ StreamEpics.cc:868: Stream::initRecord PCU50_300testSetCurrent: initialize the first time
2023/06/26 12:46:58.683924 _main_ StreamEpics.cc:635: streamInitRecord(PCU50_300testSetCurrent) done status=0x2
2023/06/26 12:46:58.683937 _main_ StreamEpics.cc:588: streamInitRecord(PCU50_300testStatusRegister): SEVR=3
2023/06/26 12:46:58.683947 _main_ StreamEpics.cc:593: streamInitRecord(PCU50_300testStatusRegister): create new Stream object
2023/06/26 12:46:58.683961 _main_ StreamEpics.cc:623: streamInitRecord(PCU50_300testStatusRegister): calling initRecord
2023/06/26 12:46:58.683971 _main_ StreamEpics.cc:775: Stream::initRecord PCU50_300testStatusRegister: parse link string "devPCU50_300.proto getStatus USB0 0"
2023/06/26 12:46:58.683981 _main_ StreamEpics.cc:807: Stream::initRecord PCU50_300testStatusRegister: filename="devPCU50_300.proto" protocol="getStatus" bus="USB0" addr=0 params=""
2023/06/26 12:46:58.683991 _main_ StreamEpics.cc:827: Stream::initRecord PCU50_300testStatusRegister: attachBus("USB0", 0, "")
2023/06/26 12:46:58.684001 _main_ StreamBusInterface.cc:65: StreamBusInterface::find(PCU50_300testStatusRegister, USB0, 0, "")
2023/06/26 12:46:58.684012 _main_ StreamBusInterface.cc:71: StreamBusInterface::find PCU50_300testStatusRegister check DebugInterface
2023/06/26 12:46:58.684021 _main_ StreamBusInterface.cc:74: StreamBusInterface::find DebugInterface does not match
2023/06/26 12:46:58.684031 _main_ StreamBusInterface.cc:71: StreamBusInterface::find PCU50_300testStatusRegister check DummyInterface
2023/06/26 12:46:58.684040 _main_ StreamBusInterface.cc:74: StreamBusInterface::find DummyInterface does not match
2023/06/26 12:46:58.684060 _main_ StreamBusInterface.cc:71: StreamBusInterface::find PCU50_300testStatusRegister check AsynDriverInterface
2023/06/26 12:46:58.684074 _main_ AsynDriverInterface.cc:369: AsynDriverInterface::getBusInterface(PCU50_300testStatusRegister, USB0, 0)
2023/06/26 12:46:58.684085 _main_ AsynDriverInterface.cc:285: AsynDriverInterface(PCU50_300testStatusRegister)
2023/06/26 12:46:58.684094 _main_ AsynDriverInterface.cc:299: AsynDriverInterface(PCU50_300testStatusRegister) createAsynUser
2023/06/26 12:46:58.684106 _main_ AsynDriverInterface.cc:310: AsynDriverInterface(PCU50_300testStatusRegister) epicsTimerQueueActive::allocate(true)
2023/06/26 12:46:58.684117 _main_ AsynDriverInterface.cc:314: AsynDriverInterface(PCU50_300testStatusRegister) timerQueue->createTimer()
2023/06/26 12:46:58.684126 _main_ AsynDriverInterface.cc:318: AsynDriverInterface(PCU50_300testStatusRegister) done
2023/06/26 12:46:58.684136 _main_ AsynDriverInterface.cc:451: PCU50_300testStatusRegister: AsynDriverInterface::connectToBus(USB0, 0): pasynManager->connectDevice(0x1711778, USB0, 0) = asynSuccess
2023/06/26 12:46:58.684150 _main_ AsynDriverInterface.cc:523: PCU50_300testStatusRegister: AsynDriverInterface::connectToBus(USB0, 0): device is now connected
2023/06/26 12:46:58.684161 _main_ AsynDriverInterface.cc:374: AsynDriverInterface::getBusInterface(USB0, 0): new interface allocated
2023/06/26 12:46:58.684171 _main_ StreamBusInterface.cc:74: StreamBusInterface::find AsynDriverInterface matches
2023/06/26 12:46:58.684187 _main_ StreamCore.cc:167: StreamCore::attachBus(busname="USB0", addr=0, param="") businterface=0x17115a0
2023/06/26 12:46:58.684198 _main_ StreamEpics.cc:837: Stream::initRecord PCU50_300testStatusRegister: parse("devPCU50_300.proto", "getStatus")
2023/06/26 12:46:58.684209 _main_ StreamProtocol.cc:782: new Protocol(name="getstatus", line=46)
2023/06/26 12:46:58.684224 _main_ StreamEpics.cc:868: Stream::initRecord PCU50_300testStatusRegister: initialize the first time
2023/06/26 12:46:58.684236 _main_ StreamEpics.cc:635: streamInitRecord(PCU50_300testStatusRegister) done status=0x2
2023/06/26 12:46:59.185953 _main_ StreamEpics.cc:908: Stream::process(PCU50_300testSetCurrent)
2023/06/26 12:46:59.186085 _main_ StreamEpics.cc:934: Stream::process(PCU50_300testSetCurrent) start
2023/06/26 12:46:59.186106 _main_ StreamCore.cc:429: StreamCore::startProtocol(PCU50_300testSetCurrent, startMode=StartNormal)
2023/06/26 12:46:59.186126 _main_ StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testSetCurrent): activeCommand = out
2023/06/26 12:46:59.186142 _main_ StreamCore.cc:689: StreamCore::formatOutput(PCU50_300testSetCurrent): format = %d
2023/06/26 12:46:59.186153 _main_ StreamEpics.cc:1173: Stream::formatValue(PCU50_300testSetCurrent, format=%d, fieldaddr=(nil)
2023/06/26 12:46:59.186165 _main_ StreamEpics.cc:1298: Stream::formatValue(PCU50_300testSetCurrent) format=%d type=DBF_LONG
2023/06/26 12:46:59.186177 _main_ StreamEpics.cc:693: streamPrintf(PCU50_300testSetCurrent,format=%d)
2023/06/26 12:46:59.186193 _main_ StreamCore.cc:777: StreamCore::printValue(PCU50_300testSetCurrent, %d, 0 = 0x0): "DA 0,0"
2023/06/26 12:46:59.186205 _main_ StreamCore.cc:612: StreamCore::evalOut: outputLine = "DA 0,0"
2023/06/26 12:46:59.186215 _main_ StreamCore.cc:623: StreamCore::evalOut(PCU50_300testSetCurrent): lockRequest(5000)
2023/06/26 12:46:59.186226 _main_ AsynDriverInterface.cc:549: AsynDriverInterface::lockRequest(PCU50_300testSetCurrent, 5000 msec)
2023/06/26 12:46:59.186266 _main_ StreamEpics.cc:948: Stream::process(PCU50_300testSetCurrent): protocol started
2023/06/26 12:46:59.186286 _main_ StreamEpics.cc:908: Stream::process(PCU50_300testStatusRegister)
2023/06/26 12:46:59.186296 _main_ StreamEpics.cc:934: Stream::process(PCU50_300testStatusRegister) start
2023/06/26 12:46:59.186306 _main_ StreamCore.cc:429: StreamCore::startProtocol(PCU50_300testStatusRegister, startMode=StartNormal)
2023/06/26 12:46:59.186316 _main_ StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testStatusRegister): activeCommand = out
2023/06/26 12:46:59.186327 _main_ StreamCore.cc:612: StreamCore::evalOut: outputLine = "S1H"
2023/06/26 12:46:59.186336 _main_ StreamCore.cc:623: StreamCore::evalOut(PCU50_300testStatusRegister): lockRequest(5000)
2023/06/26 12:46:59.186369 _main_ AsynDriverInterface.cc:549: AsynDriverInterface::lockRequest(PCU50_300testStatusRegister, 5000 msec)
2023/06/26 12:46:59.186328 USB0 AsynDriverInterface.cc:590: AsynDriverInterface::lockHandler(PCU50_300testSetCurrent)
2023/06/26 12:46:59.186395 2023/06/26 12:46:59.186509 _main_ StreamEpics.cc:948: Stream::process(PCU50_300testStatusRegister): protocol started
USB0 StreamCore.cc:832: StreamCore::lockCallback(PCU50_300testSetCurrent, StreamIoSuccess)
2023/06/26 12:46:59.186561 USB0 AsynDriverInterface.cc:627: AsynDriverInterface::writeRequest(PCU50_300testSetCurrent, "DA 0,0", 100 msec)
2023/06/26 12:46:59.186616 USB0 AsynDriverInterface.cc:649: AsynDriverInterface::writeHandler(PCU50_300testSetCurrent)
2023/06/26 12:46:59.186628 USB0 AsynDriverInterface.cc:667: AsynDriverInterface::writeHandler(PCU50_300testSetCurrent): reading old input
2023/06/26 12:46:59.186902 USB0 AsynDriverInterface.cc:715: AsynDriverInterface::writeHandler(PCU50_300testSetCurrent): write(..., "DA 0,0", outputSize=6, written=6) [timeout=0.1 sec] = asynSuccess
2023/06/26 12:46:59.186933 USB0 StreamCore.cc:877: StreamCore::writeCallback(PCU50_300testSetCurrent, StreamIoSuccess)
2023/06/26 12:46:59.186947 USB0 StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testSetCurrent): activeCommand = end
2023/06/26 12:46:59.186979 USB0 StreamCore.cc:465: StreamCore::finishProtocol(PCU50_300testSetCurrent, Success) bus owner
2023/06/26 12:46:59.186991 USB0 AsynDriverInterface.cc:610: AsynDriverInterface::unlock(PCU50_300testSetCurrent)
2023/06/26 12:46:59.187002 USB0 AsynDriverInterface.cc:1468: AsynDriverInterface::finish(PCU50_300testSetCurrent) start
2023/06/26 12:46:59.187012 USB0 AsynDriverInterface.cc:1478: AsynDriverInterface::finish(PCU50_300testSetCurrent) done
2023/06/26 12:46:59.187021 USB0 StreamEpics.cc:1034: Stream::protocolFinishHook(PCU50_300testSetCurrent, Success)
2023/06/26 12:46:59.187065 USB0 AsynDriverInterface.cc:590: AsynDriverInterface::lockHandler(PCU50_300testStatusRegister)
2023/06/26 12:46:59.187110 USB0 StreamCore.cc:832: StreamCore::lockCallback(PCU50_300testStatusRegister, StreamIoSuccess)
2023/06/26 12:46:59.187122 USB0 AsynDriverInterface.cc:627: AsynDriverInterface::writeRequest(PCU50_300testStatusRegister, "S1H", 100 msec)
2023/06/26 12:46:59.187144 USB0 AsynDriverInterface.cc:649: AsynDriverInterface::writeHandler(PCU50_300testStatusRegister)
2023/06/26 12:46:59.187155 USB0 AsynDriverInterface.cc:667: AsynDriverInterface::writeHandler(PCU50_300testStatusRegister): reading old input
2023/06/26 12:46:59.187176 cbLow StreamEpics.cc:1112: recordProcessCallback(PCU50_300testSetCurrent) processing record
2023/06/26 12:46:59.187308 USB0 AsynDriverInterface.cc:715: AsynDriverInterface::writeHandler(PCU50_300testStatusRegister): write(..., "S1H", outputSize=3, written=3) [timeout=0.1 sec] = asynSuccess
2023/06/26 12:46:59.187436 USB0 StreamCore.cc:877: StreamCore::writeCallback(PCU50_300testStatusRegister, StreamIoSuccess)
2023/06/26 12:46:59.187454 USB0 StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testStatusRegister): activeCommand = in
2023/06/26 12:46:59.187471 USB0 AsynDriverInterface.cc:806: AsynDriverInterface::readRequest(PCU50_300testStatusRegister, 1000 msec reply, 100 msec read, expect 0 bytes, async=no)
2023/06/26 12:46:59.187507 USB0 AsynDriverInterface.cc:831: AsynDriverInterface::readRequest PCU50_300testStatusRegister: queueRequest(..., priority=0, queueTimeout=1 sec) = asynSuccess [async=false]
2023/06/26 12:46:59.187592 cbLow StreamEpics.cc:908: Stream::process(PCU50_300testSetCurrent)
2023/06/26 12:46:59.187608 cbLow StreamEpics.cc:922: Stream::process(PCU50_300testSetCurrent) ready. don't convert
2023/06/26 12:46:59.187665 cbLow StreamEpics.cc:1116: recordProcessCallback(PCU50_300testSetCurrent) processing record done
2023/06/26 12:46:59.206457 USB0 AsynDriverInterface.cc:951: AsynDriverInterface::readHandler(PCU50_300testStatusRegister): ioAction=Read read(1 bytes, timeout=1 sec) returned status asynSuccess: received=1 bytes, eomReason=CNT, buffer="4"
2023/06/26 12:46:59.206565 USB0 AsynDriverInterface.cc:990: AsynDriverInterface::readHandler(PCU50_300testStatusRegister): received 1 of 1 bytes "4" eomReason=CNT
2023/06/26 12:46:59.206581 USB0 StreamCore.cc:963: StreamCore::readCallback(PCU50_300testStatusRegister, StreamIoSuccess input="4", size=1)
2023/06/26 12:46:59.206593 USB0 StreamCore.cc:1015: StreamCore::readCallback(PCU50_300testStatusRegister) inputBuffer="4", size 1
2023/06/26 12:46:59.206603 USB0 StreamCore.cc:1096: StreamCore::readCallback(PCU50_300testStatusRegister) wait for more input
2023/06/26 12:46:59.206613 USB0 AsynDriverInterface.cc:1123: AsynDriverInterface::readHandler(PCU50_300testStatusRegister) readMore=-1 bytesToRead=63
2023/06/26 12:46:59.206625 USB0 AsynDriverInterface.cc:951: AsynDriverInterface::readHandler(PCU50_300testStatusRegister): ioAction=Read read(63 bytes, timeout=0.1 sec) returned status asynSuccess: received=5 bytes, eomReason=EOS, buffer="08000"
2023/06/26 12:46:59.206638 USB0 AsynDriverInterface.cc:990: AsynDriverInterface::readHandler(PCU50_300testStatusRegister): received 5 of 63 bytes "08000" eomReason=EOS
2023/06/26 12:46:59.206648 USB0 StreamCore.cc:963: StreamCore::readCallback(PCU50_300testStatusRegister, StreamIoEnd input="08000", size=5)
2023/06/26 12:46:59.206658 USB0 StreamCore.cc:1015: StreamCore::readCallback(PCU50_300testStatusRegister) inputBuffer="408000", size 6
2023/06/26 12:46:59.206690 USB0 StreamCore.cc:1067: StreamCore::readCallback(PCU50_300testStatusRegister) end flag received
2023/06/26 12:46:59.206701 USB0 StreamCore.cc:1127: StreamCore::readCallback(PCU50_300testStatusRegister) input line: "408000"
2023/06/26 12:46:59.206720 USB0 StreamCore.cc:1216: StreamCore::matchInput(PCU50_300testStatusRegister): format = "%d"
2023/06/26 12:46:59.206745 USB0 StreamCore.cc:1494: StreamCore::scanValue(PCU50_300testStatusRegister, format=%d, long) input="408000" value=408000
2023/06/26 12:46:59.206756 USB0 StreamEpics.cc:1000: Stream::scan() currentValueLength=6
2023/06/26 12:46:59.206766 USB0 StreamEpics.cc:1572: Stream::matchValue(PCU50_300testStatusRegister): success, 6 bytes consumed
2023/06/26 12:46:59.206778 USB0 StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testStatusRegister): activeCommand = end
2023/06/26 12:46:59.206788 USB0 StreamCore.cc:465: StreamCore::finishProtocol(PCU50_300testStatusRegister, Success) bus owner
2023/06/26 12:46:59.206798 USB0 AsynDriverInterface.cc:610: AsynDriverInterface::unlock(PCU50_300testStatusRegister)
2023/06/26 12:46:59.206809 USB0 AsynDriverInterface.cc:1468: AsynDriverInterface::finish(PCU50_300testStatusRegister) start
2023/06/26 12:46:59.206820 USB0 AsynDriverInterface.cc:1478: AsynDriverInterface::finish(PCU50_300testStatusRegister) done
2023/06/26 12:46:59.206830 USB0 StreamEpics.cc:1034: Stream::protocolFinishHook(PCU50_300testStatusRegister, Success)
2023/06/26 12:46:59.206910 cbLow StreamEpics.cc:1112: recordProcessCallback(PCU50_300testStatusRegister) processing record
2023/06/26 12:46:59.206995 cbLow StreamEpics.cc:908: Stream::process(PCU50_300testStatusRegister)
2023/06/26 12:46:59.207007 cbLow StreamEpics.cc:922: Stream::process(PCU50_300testStatusRegister) ready. don't convert
2023/06/26 12:46:59.207023 cbLow StreamEpics.cc:1116: recordProcessCallback(PCU50_300testStatusRegister) processing record done
2023/06/26 12:37:12 StreamEpics.cc:451: drvStreamInit()
2023/06/26 12:37:12 StreamEpics.cc:473: StreamProtocolParser::path = /home/leblanc/EPICS/PCU50-300/db
2023/06/26 12:37:12.497297 _main_ StreamEpics.cc:588: streamInitRecord(PCU50_300testGetCurrent): SEVR=3
2023/06/26 12:37:12.497340 _main_ StreamEpics.cc:593: streamInitRecord(PCU50_300testGetCurrent): create new Stream object
2023/06/26 12:37:12.497477 _main_ StreamEpics.cc:623: streamInitRecord(PCU50_300testGetCurrent): calling initRecord
2023/06/26 12:37:12.497498 _main_ StreamEpics.cc:775: Stream::initRecord PCU50_300testGetCurrent: parse link string "devPCU50_300.proto getCurrent USB0 0"
2023/06/26 12:37:12.497515 _main_ StreamEpics.cc:807: Stream::initRecord PCU50_300testGetCurrent: filename="devPCU50_300.proto" protocol="getCurrent" bus="USB0" addr=0 params=""
2023/06/26 12:37:12.497528 _main_ StreamEpics.cc:827: Stream::initRecord PCU50_300testGetCurrent: attachBus("USB0", 0, "")
2023/06/26 12:37:12.497542 _main_ StreamBusInterface.cc:65: StreamBusInterface::find(PCU50_300testGetCurrent, USB0, 0, "")
2023/06/26 12:37:12.497554 _main_ StreamBusInterface.cc:71: StreamBusInterface::find PCU50_300testGetCurrent check DebugInterface
2023/06/26 12:37:12.497569 _main_ StreamBusInterface.cc:74: StreamBusInterface::find DebugInterface does not match
2023/06/26 12:37:12.497579 _main_ StreamBusInterface.cc:71: StreamBusInterface::find PCU50_300testGetCurrent check DummyInterface
2023/06/26 12:37:12.497591 _main_ StreamBusInterface.cc:74: StreamBusInterface::find DummyInterface does not match
2023/06/26 12:37:12.497601 _main_ StreamBusInterface.cc:71: StreamBusInterface::find PCU50_300testGetCurrent check AsynDriverInterface
2023/06/26 12:37:12.497613 _main_ AsynDriverInterface.cc:369: AsynDriverInterface::getBusInterface(PCU50_300testGetCurrent, USB0, 0)
2023/06/26 12:37:12.497630 _main_ AsynDriverInterface.cc:285: AsynDriverInterface(PCU50_300testGetCurrent)
2023/06/26 12:37:12.497641 _main_ AsynDriverInterface.cc:299: AsynDriverInterface(PCU50_300testGetCurrent) createAsynUser
2023/06/26 12:37:12.497653 _main_ AsynDriverInterface.cc:310: AsynDriverInterface(PCU50_300testGetCurrent) epicsTimerQueueActive::allocate(true)
2023/06/26 12:37:12.497664 _main_ AsynDriverInterface.cc:314: AsynDriverInterface(PCU50_300testGetCurrent) timerQueue->createTimer()
2023/06/26 12:37:12.497675 _main_ AsynDriverInterface.cc:318: AsynDriverInterface(PCU50_300testGetCurrent) done
2023/06/26 12:37:12.497688 _main_ AsynDriverInterface.cc:451: PCU50_300testGetCurrent: AsynDriverInterface::connectToBus(USB0, 0): pasynManager->connectDevice(0x6f7898, USB0, 0) = asynSuccess
2023/06/26 12:37:12.497705 _main_ AsynDriverInterface.cc:523: PCU50_300testGetCurrent: AsynDriverInterface::connectToBus(USB0, 0): device is now connected
2023/06/26 12:37:12.497716 _main_ AsynDriverInterface.cc:374: AsynDriverInterface::getBusInterface(USB0, 0): new interface allocated
2023/06/26 12:37:12.497728 _main_ StreamBusInterface.cc:74: StreamBusInterface::find AsynDriverInterface matches
2023/06/26 12:37:12.497745 _main_ StreamCore.cc:167: StreamCore::attachBus(busname="USB0", addr=0, param="") businterface=0x70aff0
2023/06/26 12:37:12.497756 _main_ StreamEpics.cc:837: Stream::initRecord PCU50_300testGetCurrent: parse("devPCU50_300.proto", "getCurrent")
2023/06/26 12:37:12.497779 _main_ StreamProtocol.cc:207: StreamProtocolParser::readFile: try '/home/leblanc/EPICS/PCU50-300/db/devPCU50_300.proto'
2023/06/26 12:37:12.497806 _main_ StreamProtocol.cc:210: StreamProtocolParser::readFile: found '/home/leblanc/EPICS/PCU50-300/db/devPCU50_300.proto'
2023/06/26 12:37:12.497884 _main_ StreamProtocol.cc:782: new Protocol(name="getidn", line=1)
2023/06/26 12:37:12.497933 _main_ StreamProtocol.cc:782: new Protocol(name="cmd", line=7)
2023/06/26 12:37:12.497950 _main_ StreamProtocol.cc:782: new Protocol(name="setd", line=11)
2023/06/26 12:37:12.497965 _main_ StreamProtocol.cc:782: new Protocol(name="getd", line=14)
2023/06/26 12:37:12.497988 _main_ StreamProtocol.cc:782: new Protocol(name="getcurrent", line=20)
2023/06/26 12:37:12.498006 _main_ StreamProtocol.cc:782: new Protocol(name="getvoltage", line=25)
2023/06/26 12:37:12.498043 _main_ StreamProtocol.cc:782: new Protocol(name="setcurrent", line=30)
2023/06/26 12:37:12.498061 _main_ StreamProtocol.cc:782: new Protocol(name="setstandby", line=34)
2023/06/26 12:37:12.498088 _main_ StreamProtocol.cc:782: new Protocol(name="seton", line=38)
2023/06/26 12:37:12.498122 _main_ StreamProtocol.cc:782: new Protocol(name="setoff", line=42)
2023/06/26 12:37:12.498140 _main_ StreamProtocol.cc:782: new Protocol(name="getstatus", line=46)
2023/06/26 12:37:12.498171 _main_ StreamProtocol.cc:782: new Protocol(name="getcurrent", line=20)
2023/06/26 12:37:12.498212 _main_ StreamEpics.cc:868: Stream::initRecord PCU50_300testGetCurrent: initialize the first time
2023/06/26 12:37:12.498233 _main_ StreamEpics.cc:635: streamInitRecord(PCU50_300testGetCurrent) done status=0x2
2023/06/26 12:37:12.498247 _main_ StreamEpics.cc:588: streamInitRecord(PCU50_300testSetCurrent): SEVR=0
2023/06/26 12:37:12.498258 _main_ StreamEpics.cc:593: streamInitRecord(PCU50_300testSetCurrent): create new Stream object
2023/06/26 12:37:12.498272 _main_ StreamEpics.cc:623: streamInitRecord(PCU50_300testSetCurrent): calling initRecord
2023/06/26 12:37:12.498283 _main_ StreamEpics.cc:775: Stream::initRecord PCU50_300testSetCurrent: parse link string "devPCU50_300.proto setCurrent(%d) USB0 0"
2023/06/26 12:37:12.498294 _main_ StreamEpics.cc:807: Stream::initRecord PCU50_300testSetCurrent: filename="devPCU50_300.proto" protocol="setCurrent(%d)" bus="USB0" addr=0 params=""
2023/06/26 12:37:12.498305 _main_ StreamEpics.cc:827: Stream::initRecord PCU50_300testSetCurrent: attachBus("USB0", 0, "")
2023/06/26 12:37:12.498315 _main_ StreamBusInterface.cc:65: StreamBusInterface::find(PCU50_300testSetCurrent, USB0, 0, "")
2023/06/26 12:37:12.498325 _main_ StreamBusInterface.cc:71: StreamBusInterface::find PCU50_300testSetCurrent check DebugInterface
2023/06/26 12:37:12.498336 _main_ StreamBusInterface.cc:74: StreamBusInterface::find DebugInterface does not match
2023/06/26 12:37:12.498346 _main_ StreamBusInterface.cc:71: StreamBusInterface::find PCU50_300testSetCurrent check DummyInterface
2023/06/26 12:37:12.498355 _main_ StreamBusInterface.cc:74: StreamBusInterface::find DummyInterface does not match
2023/06/26 12:37:12.498365 _main_ StreamBusInterface.cc:71: StreamBusInterface::find PCU50_300testSetCurrent check AsynDriverInterface
2023/06/26 12:37:12.498374 _main_ AsynDriverInterface.cc:369: AsynDriverInterface::getBusInterface(PCU50_300testSetCurrent, USB0, 0)
2023/06/26 12:37:12.498385 _main_ AsynDriverInterface.cc:285: AsynDriverInterface(PCU50_300testSetCurrent)
2023/06/26 12:37:12.498395 _main_ AsynDriverInterface.cc:299: AsynDriverInterface(PCU50_300testSetCurrent) createAsynUser
2023/06/26 12:37:12.498408 _main_ AsynDriverInterface.cc:310: AsynDriverInterface(PCU50_300testSetCurrent) epicsTimerQueueActive::allocate(true)
2023/06/26 12:37:12.498419 _main_ AsynDriverInterface.cc:314: AsynDriverInterface(PCU50_300testSetCurrent) timerQueue->createTimer()
2023/06/26 12:37:12.498430 _main_ AsynDriverInterface.cc:318: AsynDriverInterface(PCU50_300testSetCurrent) done
2023/06/26 12:37:12.498440 _main_ AsynDriverInterface.cc:451: PCU50_300testSetCurrent: AsynDriverInterface::connectToBus(USB0, 0): pasynManager->connectDevice(0x70c008, USB0, 0) = asynSuccess
2023/06/26 12:37:12.498453 _main_ AsynDriverInterface.cc:523: PCU50_300testSetCurrent: AsynDriverInterface::connectToBus(USB0, 0): device is now connected
2023/06/26 12:37:12.498464 _main_ AsynDriverInterface.cc:374: AsynDriverInterface::getBusInterface(USB0, 0): new interface allocated
2023/06/26 12:37:12.498474 _main_ StreamBusInterface.cc:74: StreamBusInterface::find AsynDriverInterface matches
2023/06/26 12:37:12.498485 _main_ StreamCore.cc:167: StreamCore::attachBus(busname="USB0", addr=0, param="") businterface=0x70be30
2023/06/26 12:37:12.498496 _main_ StreamEpics.cc:837: Stream::initRecord PCU50_300testSetCurrent: parse("devPCU50_300.proto", "setCurrent(%d)")
2023/06/26 12:37:12.498515 _main_ StreamCore.cc:229: StreamCore::parse "setCurrent(%d)" -> "setCurrent[7m<00>[27m%d"
2023/06/26 12:37:12.498534 _main_ StreamProtocol.cc:782: new Protocol(name="setcurrent", line=30)
2023/06/26 12:37:12.498546 _main_ StreamProtocol.cc:797: StreamProtocolParser::Protocol::Protocol $1="%d"
2023/06/26 12:37:12.498562 _main_ StreamEpics.cc:868: Stream::initRecord PCU50_300testSetCurrent: initialize the first time
2023/06/26 12:37:12.498576 _main_ StreamEpics.cc:635: streamInitRecord(PCU50_300testSetCurrent) done status=0x2
2023/06/26 12:37:12.498590 _main_ StreamEpics.cc:588: streamInitRecord(PCU50_300testStatusRegister): SEVR=3
2023/06/26 12:37:12.498601 _main_ StreamEpics.cc:593: streamInitRecord(PCU50_300testStatusRegister): create new Stream object
2023/06/26 12:37:12.498615 _main_ StreamEpics.cc:623: streamInitRecord(PCU50_300testStatusRegister): calling initRecord
2023/06/26 12:37:12.498625 _main_ StreamEpics.cc:775: Stream::initRecord PCU50_300testStatusRegister: parse link string "devPCU50_300.proto getStatus USB0 0"
2023/06/26 12:37:12.498636 _main_ StreamEpics.cc:807: Stream::initRecord PCU50_300testStatusRegister: filename="devPCU50_300.proto" protocol="getStatus" bus="USB0" addr=0 params=""
2023/06/26 12:37:12.498647 _main_ StreamEpics.cc:827: Stream::initRecord PCU50_300testStatusRegister: attachBus("USB0", 0, "")
2023/06/26 12:37:12.498657 _main_ StreamBusInterface.cc:65: StreamBusInterface::find(PCU50_300testStatusRegister, USB0, 0, "")
2023/06/26 12:37:12.498667 _main_ StreamBusInterface.cc:71: StreamBusInterface::find PCU50_300testStatusRegister check DebugInterface
2023/06/26 12:37:12.498677 _main_ StreamBusInterface.cc:74: StreamBusInterface::find DebugInterface does not match
2023/06/26 12:37:12.498687 _main_ StreamBusInterface.cc:71: StreamBusInterface::find PCU50_300testStatusRegister check DummyInterface
2023/06/26 12:37:12.498697 _main_ StreamBusInterface.cc:74: StreamBusInterface::find DummyInterface does not match
2023/06/26 12:37:12.498706 _main_ StreamBusInterface.cc:71: StreamBusInterface::find PCU50_300testStatusRegister check AsynDriverInterface
2023/06/26 12:37:12.498716 _main_ AsynDriverInterface.cc:369: AsynDriverInterface::getBusInterface(PCU50_300testStatusRegister, USB0, 0)
2023/06/26 12:37:12.498732 _main_ AsynDriverInterface.cc:285: AsynDriverInterface(PCU50_300testStatusRegister)
2023/06/26 12:37:12.498743 _main_ AsynDriverInterface.cc:299: AsynDriverInterface(PCU50_300testStatusRegister) createAsynUser
2023/06/26 12:37:12.498754 _main_ AsynDriverInterface.cc:310: AsynDriverInterface(PCU50_300testStatusRegister) epicsTimerQueueActive::allocate(true)
2023/06/26 12:37:12.498765 _main_ AsynDriverInterface.cc:314: AsynDriverInterface(PCU50_300testStatusRegister) timerQueue->createTimer()
2023/06/26 12:37:12.498776 _main_ AsynDriverInterface.cc:318: AsynDriverInterface(PCU50_300testStatusRegister) done
2023/06/26 12:37:12.498786 _main_ AsynDriverInterface.cc:451: PCU50_300testStatusRegister: AsynDriverInterface::connectToBus(USB0, 0): pasynManager->connectDevice(0x70e178, USB0, 0) = asynSuccess
2023/06/26 12:37:12.498799 _main_ AsynDriverInterface.cc:523: PCU50_300testStatusRegister: AsynDriverInterface::connectToBus(USB0, 0): device is now connected
2023/06/26 12:37:12.498810 _main_ AsynDriverInterface.cc:374: AsynDriverInterface::getBusInterface(USB0, 0): new interface allocated
2023/06/26 12:37:12.498821 _main_ StreamBusInterface.cc:74: StreamBusInterface::find AsynDriverInterface matches
2023/06/26 12:37:12.498831 _main_ StreamCore.cc:167: StreamCore::attachBus(busname="USB0", addr=0, param="") businterface=0x70dfa0
2023/06/26 12:37:12.498841 _main_ StreamEpics.cc:837: Stream::initRecord PCU50_300testStatusRegister: parse("devPCU50_300.proto", "getStatus")
2023/06/26 12:37:12.498853 _main_ StreamProtocol.cc:782: new Protocol(name="getstatus", line=46)
2023/06/26 12:37:12.498867 _main_ StreamEpics.cc:868: Stream::initRecord PCU50_300testStatusRegister: initialize the first time
2023/06/26 12:37:12.498879 _main_ StreamEpics.cc:635: streamInitRecord(PCU50_300testStatusRegister) done status=0x2
2023/06/26 12:37:12.999949 _main_ StreamEpics.cc:908: Stream::process(PCU50_300testGetCurrent)
2023/06/26 12:37:13.000122 _main_ StreamEpics.cc:934: Stream::process(PCU50_300testGetCurrent) start
2023/06/26 12:37:13.000142 _main_ StreamCore.cc:429: StreamCore::startProtocol(PCU50_300testGetCurrent, startMode=StartNormal)
2023/06/26 12:37:13.000158 _main_ StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testGetCurrent): activeCommand = out
2023/06/26 12:37:13.000175 _main_ StreamCore.cc:612: StreamCore::evalOut: outputLine = "AD 0"
2023/06/26 12:37:13.000186 _main_ StreamCore.cc:623: StreamCore::evalOut(PCU50_300testGetCurrent): lockRequest(5000)
2023/06/26 12:37:13.000197 _main_ AsynDriverInterface.cc:549: AsynDriverInterface::lockRequest(PCU50_300testGetCurrent, 5000 msec)
2023/06/26 12:37:13.000236 _main_ StreamEpics.cc:948: Stream::process(PCU50_300testGetCurrent): protocol started
2023/06/26 12:37:13.000261 _main_ StreamEpics.cc:908: Stream::process(PCU50_300testSetCurrent)
2023/06/26 12:37:13.000273 _main_ StreamEpics.cc:934: Stream::process(PCU50_300testSetCurrent) start
2023/06/26 12:37:13.000283 _main_ StreamCore.cc:429: StreamCore::startProtocol(PCU50_300testSetCurrent, startMode=StartNormal)
2023/06/26 12:37:13.000293 _main_ StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testSetCurrent): activeCommand = out
2023/06/26 12:37:13.000304 _main_ StreamCore.cc:689: StreamCore::formatOutput(PCU50_300testSetCurrent): format = %d
2023/06/26 12:37:13.000315 _main_ StreamEpics.cc:1173: Stream::formatValue(PCU50_300testSetCurrent, format=%d, fieldaddr=(nil)
2023/06/26 12:37:13.000293 2023/06/26 12:37:13.000336 _main_ StreamEpics.cc:1298: Stream::formatValue(PCU50_300testSetCurrent) format=%d type=DBF_LONG
USB0 2023/06/26 12:37:13.000354 AsynDriverInterface.cc:590: _main_ AsynDriverInterface::lockHandler(PCU50_300testGetCurrent)
StreamEpics.cc:693: 2023/06/26 12:37:13.000410 USB0 StreamCore.cc:832: streamPrintf(PCU50_300testSetCurrent,format=%d)
StreamCore::lockCallback(PCU50_300testGetCurrent, StreamIoSuccess)
2023/06/26 12:37:13.000442 _main_ StreamCore.cc:777: StreamCore::printValue(PCU50_300testSetCurrent, %d, 0 = 0x0): "DA 0,0"
2023/06/26 12:37:13.000478 _main_ StreamCore.cc:612: StreamCore::evalOut: outputLine = "DA 0,0"
2023/06/26 12:37:13.000489 _main_ StreamCore.cc:623: StreamCore::evalOut(PCU50_300testSetCurrent): lockRequest(5000)
2023/06/26 12:37:13.000499 _main_ AsynDriverInterface.cc:549: AsynDriverInterface::lockRequest(PCU50_300testSetCurrent, 5000 msec)
2023/06/26 12:37:13.000460 USB0 2023/06/26 12:37:13.000524 AsynDriverInterface.cc:627: _main_ AsynDriverInterface::writeRequest(PCU50_300testGetCurrent, "AD 0", 100 msec)
StreamEpics.cc:948: Stream::process(PCU50_300testSetCurrent): protocol started
2023/06/26 12:37:13.000564 USB0 AsynDriverInterface.cc:649: AsynDriverInterface::writeHandler(PCU50_300testGetCurrent)
2023/06/26 12:37:13.000584 USB0 AsynDriverInterface.cc:667: AsynDriverInterface::writeHandler(PCU50_300testGetCurrent): reading old input
2023/06/26 12:37:13.000570 _main_ StreamEpics.cc:908: Stream::process(PCU50_300testStatusRegister)
2023/06/26 12:37:13.000619 _main_ StreamEpics.cc:934: Stream::process(PCU50_300testStatusRegister) start
2023/06/26 12:37:13.000630 _main_ StreamCore.cc:429: StreamCore::startProtocol(PCU50_300testStatusRegister, startMode=StartNormal)
2023/06/26 12:37:13.000640 _main_ StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testStatusRegister): activeCommand = out
2023/06/26 12:37:13.000651 _main_ StreamCore.cc:612: StreamCore::evalOut: outputLine = "S1H"
2023/06/26 12:37:13.000661 _main_ StreamCore.cc:623: StreamCore::evalOut(PCU50_300testStatusRegister): lockRequest(5000)
2023/06/26 12:37:13.000670 _main_ AsynDriverInterface.cc:549: AsynDriverInterface::lockRequest(PCU50_300testStatusRegister, 5000 msec)
2023/06/26 12:37:13.000684 _main_ StreamEpics.cc:948: Stream::process(PCU50_300testStatusRegister): protocol started
2023/06/26 12:37:13.000887 USB0 AsynDriverInterface.cc:715: AsynDriverInterface::writeHandler(PCU50_300testGetCurrent): write(..., "AD 0", outputSize=4, written=4) [timeout=0.1 sec] = asynSuccess
2023/06/26 12:37:13.000946 USB0 StreamCore.cc:877: StreamCore::writeCallback(PCU50_300testGetCurrent, StreamIoSuccess)
2023/06/26 12:37:13.000960 USB0 StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testGetCurrent): activeCommand = in
2023/06/26 12:37:13.000974 USB0 AsynDriverInterface.cc:806: AsynDriverInterface::readRequest(PCU50_300testGetCurrent, 1000 msec reply, 100 msec read, expect 0 bytes, async=no)
2023/06/26 12:37:13.001078 USB0 AsynDriverInterface.cc:831: AsynDriverInterface::readRequest PCU50_300testGetCurrent: queueRequest(..., priority=0, queueTimeout=1 sec) = asynSuccess [async=false]
2023/06/26 12:37:13.016932 USB0 AsynDriverInterface.cc:951: AsynDriverInterface::readHandler(PCU50_300testGetCurrent): ioAction=Read read(1 bytes, timeout=1 sec) returned status asynSuccess: received=1 bytes, eomReason=CNT, buffer="0"
2023/06/26 12:37:13.017001 USB0 AsynDriverInterface.cc:990: AsynDriverInterface::readHandler(PCU50_300testGetCurrent): received 1 of 1 bytes "0" eomReason=CNT
2023/06/26 12:37:13.017017 USB0 StreamCore.cc:963: StreamCore::readCallback(PCU50_300testGetCurrent, StreamIoSuccess input="0", size=1)
2023/06/26 12:37:13.017097 USB0 StreamCore.cc:1015: StreamCore::readCallback(PCU50_300testGetCurrent) inputBuffer="0", size 1
2023/06/26 12:37:13.017113 USB0 StreamCore.cc:1096: StreamCore::readCallback(PCU50_300testGetCurrent) wait for more input
2023/06/26 12:37:13.017124 USB0 AsynDriverInterface.cc:1123: AsynDriverInterface::readHandler(PCU50_300testGetCurrent) readMore=-1 bytesToRead=63
2023/06/26 12:37:13.017136 USB0 AsynDriverInterface.cc:951: AsynDriverInterface::readHandler(PCU50_300testGetCurrent): ioAction=Read read(63 bytes, timeout=0.1 sec) returned status asynSuccess: received=5 bytes, eomReason=EOS, buffer="00000"
2023/06/26 12:37:13.017152 USB0 AsynDriverInterface.cc:990: AsynDriverInterface::readHandler(PCU50_300testGetCurrent): received 5 of 63 bytes "00000" eomReason=EOS
2023/06/26 12:37:13.017163 USB0 StreamCore.cc:963: StreamCore::readCallback(PCU50_300testGetCurrent, StreamIoEnd input="00000", size=5)
2023/06/26 12:37:13.017173 USB0 StreamCore.cc:1015: StreamCore::readCallback(PCU50_300testGetCurrent) inputBuffer="000000", size 6
2023/06/26 12:37:13.017183 USB0 StreamCore.cc:1067: StreamCore::readCallback(PCU50_300testGetCurrent) end flag received
2023/06/26 12:37:13.017194 USB0 StreamCore.cc:1127: StreamCore::readCallback(PCU50_300testGetCurrent) input line: "000000"
2023/06/26 12:37:13.017213 USB0 StreamCore.cc:1216: StreamCore::matchInput(PCU50_300testGetCurrent): format = "%d"
2023/06/26 12:37:13.017239 USB0 StreamCore.cc:1494: StreamCore::scanValue(PCU50_300testGetCurrent, format=%d, long) input="000000" value=0
2023/06/26 12:37:13.017251 USB0 StreamEpics.cc:1000: Stream::scan() currentValueLength=6
2023/06/26 12:37:13.017262 USB0 StreamEpics.cc:1572: Stream::matchValue(PCU50_300testGetCurrent): success, 6 bytes consumed
2023/06/26 12:37:13.017274 USB0 StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testGetCurrent): activeCommand = end
2023/06/26 12:37:13.017286 USB0 StreamCore.cc:465: StreamCore::finishProtocol(PCU50_300testGetCurrent, Success) bus owner
2023/06/26 12:37:13.017297 USB0 AsynDriverInterface.cc:610: AsynDriverInterface::unlock(PCU50_300testGetCurrent)
2023/06/26 12:37:13.017311 USB0 AsynDriverInterface.cc:1468: AsynDriverInterface::finish(PCU50_300testGetCurrent) start
2023/06/26 12:37:13.017322 USB0 AsynDriverInterface.cc:1478: AsynDriverInterface::finish(PCU50_300testGetCurrent) done
2023/06/26 12:37:13.017332 USB0 StreamEpics.cc:1034: Stream::protocolFinishHook(PCU50_300testGetCurrent, Success)
2023/06/26 12:37:13.017366 USB0 AsynDriverInterface.cc:590: AsynDriverInterface::lockHandler(PCU50_300testSetCurrent)
2023/06/26 12:37:13.017380 USB0 StreamCore.cc:832: StreamCore::lockCallback(PCU50_300testSetCurrent, StreamIoSuccess)
2023/06/26 12:37:13.017391 USB0 AsynDriverInterface.cc:627: AsynDriverInterface::writeRequest(PCU50_300testSetCurrent, "DA 0,0", 100 msec)
2023/06/26 12:37:13.017420 USB0 AsynDriverInterface.cc:649: AsynDriverInterface::writeHandler(PCU50_300testSetCurrent)
2023/06/26 12:37:13.017454 USB0 AsynDriverInterface.cc:667: AsynDriverInterface::writeHandler(PCU50_300testSetCurrent): reading old input
2023/06/26 12:37:13.017481 cbLow StreamEpics.cc:1112: recordProcessCallback(PCU50_300testGetCurrent) processing record
2023/06/26 12:37:13.017571 cbLow StreamEpics.cc:908: Stream::process(PCU50_300testGetCurrent)
2023/06/26 12:37:13.017586 cbLow StreamEpics.cc:922: Stream::process(PCU50_300testGetCurrent) ready. don't convert
2023/06/26 12:37:13.017618 cbLow StreamEpics.cc:1116: recordProcessCallback(PCU50_300testGetCurrent) processing record done
2023/06/26 12:37:13.017637 USB0 AsynDriverInterface.cc:672: AsynDriverInterface::writeHandler(PCU50_300testSetCurrent): flushing 1 bytes: "[7m<0d>[27m"
2023/06/26 12:37:13.017740 USB0 AsynDriverInterface.cc:715: AsynDriverInterface::writeHandler(PCU50_300testSetCurrent): write(..., "DA 0,0", outputSize=6, written=6) [timeout=0.1 sec] = asynSuccess
2023/06/26 12:37:13.017761 USB0 StreamCore.cc:877: StreamCore::writeCallback(PCU50_300testSetCurrent, StreamIoSuccess)
2023/06/26 12:37:13.017773 USB0 StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testSetCurrent): activeCommand = end
2023/06/26 12:37:13.017784 USB0 StreamCore.cc:465: StreamCore::finishProtocol(PCU50_300testSetCurrent, Success) bus owner
2023/06/26 12:37:13.017795 USB0 AsynDriverInterface.cc:610: AsynDriverInterface::unlock(PCU50_300testSetCurrent)
2023/06/26 12:37:13.017805 USB0 AsynDriverInterface.cc:1468: AsynDriverInterface::finish(PCU50_300testSetCurrent) start
2023/06/26 12:37:13.017816 USB0 AsynDriverInterface.cc:1478: AsynDriverInterface::finish(PCU50_300testSetCurrent) done
2023/06/26 12:37:13.017826 USB0 StreamEpics.cc:1034: Stream::protocolFinishHook(PCU50_300testSetCurrent, Success)
2023/06/26 12:37:13.017850 USB0 AsynDriverInterface.cc:590: AsynDriverInterface::lockHandler(PCU50_300testStatusRegister)
2023/06/26 12:37:13.017894 2023/06/26 12:37:13.017897 USB0 cbLow StreamCore.cc:832: StreamEpics.cc:1112: StreamCore::lockCallback(PCU50_300testStatusRegister, StreamIoSuccess)
recordProcessCallback(PCU50_300testSetCurrent) processing record
2023/06/26 12:37:13.017968 2023/06/26 12:37:13.017988 USB0 AsynDriverInterface.cc:627: cbLow AsynDriverInterface::writeRequest(PCU50_300testStatusRegister, "S1H", 100 msec)
StreamEpics.cc:908: Stream::process(PCU50_300testSetCurrent)
2023/06/26 12:37:13.018022 USB0 AsynDriverInterface.cc:649: AsynDriverInterface::writeHandler(PCU50_300testStatusRegister)
2023/06/26 12:37:13.018040 USB0 AsynDriverInterface.cc:667: AsynDriverInterface::writeHandler(PCU50_300testStatusRegister): reading old input
2023/06/26 12:37:13.018026 cbLow StreamEpics.cc:922: Stream::process(PCU50_300testSetCurrent) ready. don't convert
2023/06/26 12:37:13.018117 2023/06/26 12:37:13.018164 cbLow StreamEpics.cc:1116: USB0 recordProcessCallback(PCU50_300testSetCurrent) processing record done
AsynDriverInterface.cc:715: AsynDriverInterface::writeHandler(PCU50_300testStatusRegister): write(..., "S1H", outputSize=3, written=3) [timeout=0.1 sec] = asynSuccess
2023/06/26 12:37:13.018220 USB0 StreamCore.cc:877: StreamCore::writeCallback(PCU50_300testStatusRegister, StreamIoSuccess)
2023/06/26 12:37:13.018233 USB0 StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testStatusRegister): activeCommand = in
2023/06/26 12:37:13.018244 USB0 AsynDriverInterface.cc:806: AsynDriverInterface::readRequest(PCU50_300testStatusRegister, 1000 msec reply, 100 msec read, expect 0 bytes, async=no)
2023/06/26 12:37:13.018264 USB0 AsynDriverInterface.cc:831: AsynDriverInterface::readRequest PCU50_300testStatusRegister: queueRequest(..., priority=0, queueTimeout=1 sec) = asynSuccess [async=false]
2023/06/26 12:37:13.033226 USB0 AsynDriverInterface.cc:951: AsynDriverInterface::readHandler(PCU50_300testStatusRegister): ioAction=Read read(1 bytes, timeout=1 sec) returned status asynSuccess: received=1 bytes, eomReason=CNT, buffer="0"
2023/06/26 12:37:13.033374 USB0 AsynDriverInterface.cc:990: AsynDriverInterface::readHandler(PCU50_300testStatusRegister): received 1 of 1 bytes "0" eomReason=CNT
2023/06/26 12:37:13.033409 USB0 StreamCore.cc:963: StreamCore::readCallback(PCU50_300testStatusRegister, StreamIoSuccess input="0", size=1)
2023/06/26 12:37:13.033422 USB0 StreamCore.cc:1015: StreamCore::readCallback(PCU50_300testStatusRegister) inputBuffer="0", size 1
2023/06/26 12:37:13.033432 USB0 StreamCore.cc:1096: StreamCore::readCallback(PCU50_300testStatusRegister) wait for more input
2023/06/26 12:37:13.033442 USB0 AsynDriverInterface.cc:1123: AsynDriverInterface::readHandler(PCU50_300testStatusRegister) readMore=-1 bytesToRead=63
2023/06/26 12:37:13.049004 USB0 AsynDriverInterface.cc:951: AsynDriverInterface::readHandler(PCU50_300testStatusRegister): ioAction=Read read(63 bytes, timeout=0.1 sec) returned status asynSuccess: received=5 bytes, eomReason=EOS, buffer="00000"
2023/06/26 12:37:13.049109 USB0 AsynDriverInterface.cc:990: AsynDriverInterface::readHandler(PCU50_300testStatusRegister): received 5 of 63 bytes "00000" eomReason=EOS
2023/06/26 12:37:13.049128 USB0 StreamCore.cc:963: StreamCore::readCallback(PCU50_300testStatusRegister, StreamIoEnd input="00000", size=5)
2023/06/26 12:37:13.049141 USB0 StreamCore.cc:1015: StreamCore::readCallback(PCU50_300testStatusRegister) inputBuffer="000000", size 6
2023/06/26 12:37:13.049151 USB0 StreamCore.cc:1067: StreamCore::readCallback(PCU50_300testStatusRegister) end flag received
2023/06/26 12:37:13.049162 USB0 StreamCore.cc:1127: StreamCore::readCallback(PCU50_300testStatusRegister) input line: "000000"
2023/06/26 12:37:13.049175 USB0 StreamCore.cc:1216: StreamCore::matchInput(PCU50_300testStatusRegister): format = "%d"
2023/06/26 12:37:13.049189 USB0 StreamCore.cc:1494: StreamCore::scanValue(PCU50_300testStatusRegister, format=%d, long) input="000000" value=0
2023/06/26 12:37:13.049200 USB0 StreamEpics.cc:1000: Stream::scan() currentValueLength=6
2023/06/26 12:37:13.049211 USB0 StreamEpics.cc:1572: Stream::matchValue(PCU50_300testStatusRegister): success, 6 bytes consumed
2023/06/26 12:37:13.049222 USB0 StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testStatusRegister): activeCommand = end
2023/06/26 12:37:13.049232 USB0 StreamCore.cc:465: StreamCore::finishProtocol(PCU50_300testStatusRegister, Success) bus owner
2023/06/26 12:37:13.049243 USB0 AsynDriverInterface.cc:610: AsynDriverInterface::unlock(PCU50_300testStatusRegister)
2023/06/26 12:37:13.049256 USB0 AsynDriverInterface.cc:1468: AsynDriverInterface::finish(PCU50_300testStatusRegister) start
2023/06/26 12:37:13.049267 USB0 AsynDriverInterface.cc:1478: AsynDriverInterface::finish(PCU50_300testStatusRegister) done
2023/06/26 12:37:13.049277 USB0 StreamEpics.cc:1034: Stream::protocolFinishHook(PCU50_300testStatusRegister, Success)
2023/06/26 12:37:13.049333 cbLow StreamEpics.cc:1112: recordProcessCallback(PCU50_300testStatusRegister) processing record
2023/06/26 12:37:13.049412 cbLow StreamEpics.cc:908: Stream::process(PCU50_300testStatusRegister)
2023/06/26 12:37:13.049426 cbLow StreamEpics.cc:922: Stream::process(PCU50_300testStatusRegister) ready. don't convert
2023/06/26 12:37:13.049444 cbLow StreamEpics.cc:1116: recordProcessCallback(PCU50_300testStatusRegister) processing record done
2023/06/26 12:40:40.842101 _main_ StreamEpics.cc:908: Stream::process(PCU50_300testStatusRegister)
2023/06/26 12:40:40.842223 _main_ StreamEpics.cc:934: Stream::process(PCU50_300testStatusRegister) start
2023/06/26 12:40:40.842237 _main_ StreamCore.cc:429: StreamCore::startProtocol(PCU50_300testStatusRegister, startMode=StartNormal)
2023/06/26 12:40:40.842255 _main_ StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testStatusRegister): activeCommand = out
2023/06/26 12:40:40.842267 _main_ StreamCore.cc:612: StreamCore::evalOut: outputLine = "S1H"
2023/06/26 12:40:40.842275 _main_ StreamCore.cc:623: StreamCore::evalOut(PCU50_300testStatusRegister): lockRequest(5000)
2023/06/26 12:40:40.842285 _main_ AsynDriverInterface.cc:549: AsynDriverInterface::lockRequest(PCU50_300testStatusRegister, 5000 msec)
2023/06/26 12:40:40.842321 _main_ StreamEpics.cc:948: Stream::process(PCU50_300testStatusRegister): protocol started
2023/06/26 12:40:40.842366 USB0 AsynDriverInterface.cc:590: AsynDriverInterface::lockHandler(PCU50_300testStatusRegister)
2023/06/26 12:40:40.842385 USB0 StreamCore.cc:832: StreamCore::lockCallback(PCU50_300testStatusRegister, StreamIoSuccess)
2023/06/26 12:40:40.842397 USB0 AsynDriverInterface.cc:627: AsynDriverInterface::writeRequest(PCU50_300testStatusRegister, "S1H", 100 msec)
2023/06/26 12:40:40.842459 USB0 AsynDriverInterface.cc:649: AsynDriverInterface::writeHandler(PCU50_300testStatusRegister)
2023/06/26 12:40:40.842472 USB0 AsynDriverInterface.cc:667: AsynDriverInterface::writeHandler(PCU50_300testStatusRegister): reading old input
2023/06/26 12:40:40.842485 USB0 AsynDriverInterface.cc:672: AsynDriverInterface::writeHandler(PCU50_300testStatusRegister): flushing 6 bytes: "[7m<0d>[27m08000"
2023/06/26 12:40:40.842497 USB0 AsynDriverInterface.cc:667: AsynDriverInterface::writeHandler(PCU50_300testStatusRegister): reading old input
2023/06/26 12:40:40.842723 USB0 AsynDriverInterface.cc:672: AsynDriverInterface::writeHandler(PCU50_300testStatusRegister): flushing 1 bytes: "[7m<0d>[27m"
2023/06/26 12:40:40.842801 USB0 AsynDriverInterface.cc:715: AsynDriverInterface::writeHandler(PCU50_300testStatusRegister): write(..., "S1H", outputSize=3, written=3) [timeout=0.1 sec] = asynSuccess
2023/06/26 12:40:40.842827 USB0 StreamCore.cc:877: StreamCore::writeCallback(PCU50_300testStatusRegister, StreamIoSuccess)
2023/06/26 12:40:40.842839 USB0 StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testStatusRegister): activeCommand = in
2023/06/26 12:40:40.842850 USB0 AsynDriverInterface.cc:806: AsynDriverInterface::readRequest(PCU50_300testStatusRegister, 1000 msec reply, 100 msec read, expect 0 bytes, async=no)
2023/06/26 12:40:40.842871 USB0 AsynDriverInterface.cc:831: AsynDriverInterface::readRequest PCU50_300testStatusRegister: queueRequest(..., priority=0, queueTimeout=1 sec) = asynSuccess [async=false]
2023/06/26 12:40:40.860265 USB0 AsynDriverInterface.cc:951: AsynDriverInterface::readHandler(PCU50_300testStatusRegister): ioAction=Read read(1 bytes, timeout=1 sec) returned status asynSuccess: received=1 bytes, eomReason=CNT, buffer="4"
2023/06/26 12:40:40.860373 USB0 AsynDriverInterface.cc:990: AsynDriverInterface::readHandler(PCU50_300testStatusRegister): received 1 of 1 bytes "4" eomReason=CNT
2023/06/26 12:40:40.860390 USB0 StreamCore.cc:963: StreamCore::readCallback(PCU50_300testStatusRegister, StreamIoSuccess input="4", size=1)
2023/06/26 12:40:40.860422 USB0 StreamCore.cc:1015: StreamCore::readCallback(PCU50_300testStatusRegister) inputBuffer="4", size 1
2023/06/26 12:40:40.860452 USB0 StreamCore.cc:1096: StreamCore::readCallback(PCU50_300testStatusRegister) wait for more input
2023/06/26 12:40:40.860462 USB0 AsynDriverInterface.cc:1123: AsynDriverInterface::readHandler(PCU50_300testStatusRegister) readMore=-1 bytesToRead=63
2023/06/26 12:40:40.860473 USB0 AsynDriverInterface.cc:951: AsynDriverInterface::readHandler(PCU50_300testStatusRegister): ioAction=Read read(63 bytes, timeout=0.1 sec) returned status asynSuccess: received=5 bytes, eomReason=EOS, buffer="08000"
2023/06/26 12:40:40.860488 USB0 AsynDriverInterface.cc:990: AsynDriverInterface::readHandler(PCU50_300testStatusRegister): received 5 of 63 bytes "08000" eomReason=EOS
2023/06/26 12:40:40.860499 USB0 StreamCore.cc:963: StreamCore::readCallback(PCU50_300testStatusRegister, StreamIoEnd input="08000", size=5)
2023/06/26 12:40:40.860509 USB0 StreamCore.cc:1015: StreamCore::readCallback(PCU50_300testStatusRegister) inputBuffer="408000", size 6
2023/06/26 12:40:40.860519 USB0 StreamCore.cc:1067: StreamCore::readCallback(PCU50_300testStatusRegister) end flag received
2023/06/26 12:40:40.860528 USB0 StreamCore.cc:1127: StreamCore::readCallback(PCU50_300testStatusRegister) input line: "408000"
2023/06/26 12:40:40.860540 USB0 StreamCore.cc:1216: StreamCore::matchInput(PCU50_300testStatusRegister): format = "%d"
2023/06/26 12:40:40.860554 USB0 StreamCore.cc:1494: StreamCore::scanValue(PCU50_300testStatusRegister, format=%d, long) input="408000" value=408000
2023/06/26 12:40:40.860584 USB0 StreamEpics.cc:1000: Stream::scan() currentValueLength=6
2023/06/26 12:40:40.860595 USB0 StreamEpics.cc:1572: Stream::matchValue(PCU50_300testStatusRegister): success, 6 bytes consumed
2023/06/26 12:40:40.860606 USB0 StreamCore.cc:564: StreamCore::evalCommand(PCU50_300testStatusRegister): activeCommand = end
2023/06/26 12:40:40.860616 USB0 StreamCore.cc:465: StreamCore::finishProtocol(PCU50_300testStatusRegister, Success) bus owner
2023/06/26 12:40:40.860626 USB0 AsynDriverInterface.cc:610: AsynDriverInterface::unlock(PCU50_300testStatusRegister)
2023/06/26 12:40:40.860638 USB0 AsynDriverInterface.cc:1468: AsynDriverInterface::finish(PCU50_300testStatusRegister) start
2023/06/26 12:40:40.860650 USB0 AsynDriverInterface.cc:1478: AsynDriverInterface::finish(PCU50_300testStatusRegister) done
2023/06/26 12:40:40.860659 USB0 StreamEpics.cc:1034: Stream::protocolFinishHook(PCU50_300testStatusRegister, Success)
2023/06/26 12:40:40.860702 cbLow StreamEpics.cc:1112: recordProcessCallback(PCU50_300testStatusRegister) processing record
2023/06/26 12:40:40.860764 cbLow StreamEpics.cc:908: Stream::process(PCU50_300testStatusRegister)
2023/06/26 12:40:40.860777 cbLow StreamEpics.cc:922: Stream::process(PCU50_300testStatusRegister) ready. don't convert
2023/06/26 12:40:40.860793 cbLow StreamEpics.cc:1116: recordProcessCallback(PCU50_300testStatusRegister) processing record done
- Replies:
- Re: Strangeness in ai/mbbiDirect with StreamDevice on PINI Michael Davidsaver via Tech-talk
- Re: Strangeness in ai/mbbiDirect with StreamDevice on PINI Zimoch Dirk via Tech-talk
- Navigate by Date:
- Prev:
Strangeness in ai/mbbiDirect with StreamDevice on PINI Leblanc, Gregory via Tech-talk
- Next:
Re: Strangeness in ai/mbbiDirect with StreamDevice on PINI Michael Davidsaver via Tech-talk
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
<2023>
2024
- Navigate by Thread:
- Prev:
Strangeness in ai/mbbiDirect with StreamDevice on PINI Leblanc, Gregory via Tech-talk
- Next:
Re: Strangeness in ai/mbbiDirect with StreamDevice on PINI Michael Davidsaver via Tech-talk
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
<2023>
2024
|