epics-modules / delaygen Goto Github PK
View Code? Open in Web Editor NEWAPS BCDA synApps module: delaygen
Home Page: http://epics-modules.github.io/delaygen/
License: Other
APS BCDA synApps module: delaygen
Home Page: http://epics-modules.github.io/delaygen/
License: Other
When I change a setting that uses either a MBBI or BI as it's "readback", the gpibRead a gets string that it can't deal with. Here's the ioc console output for such a case with most of the asyn traces on when the trigger sourc is changed to "External":
2022/11/09 15:27:32.184 [L1,-1,0] [drvAsynIPPort.c:596] [L1,0x12a83b0,50] 164.54.104.15:4001 write 12
wrt 15\nTM 1\r
2022/11/09 15:27:32.184 [L1,-1,0] [devSupportGpib.c:1388] [L1,0x12a83b0,50] 25ide:DG535:E1:trigModeSetMO writeIt
TM 1
2022/11/09 15:27:32.184 [L1,-1,0] [drvAsynIPPort.c:863] [L1,0x12a83b0,50] 164.54.104.15:4001 flushed 63 bytes
2022/11/09 15:27:32.184 [L1,-1,0] [drvAsynIPPort.c:596] [L1,0x12a83b0,50] 164.54.104.15:4001 write 11
wrt 15\nTM \r
2022/11/09 15:27:32.184 [L1,-1,0] [devSupportGpib.c:1388] [L1,0x12a83b0,50] 25ide:DG535:E1:trigModeMI writeIt
TM
2022/11/09 15:27:32.184 [L1,-1,0] [drvAsynIPPort.c:596] [L1,0x12a83b0,50] 164.54.104.15:4001 write 10
rd #60 15\r
2022/11/09 15:27:32.201 [L1,-1,0] [drvAsynIPPort.c:794] [L1,0x12a83b0,50] 164.54.104.15:4001 read 63
1\r\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0003\r\n
2022/11/09 15:27:35.204 [L1,-1,0] [devSupportGpib.c:982] [L1,0x12a83b0,50] 25ide:DG535:E1:trigModeMI gpibRead
TM 1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\321\v\000\000\000\000\000\000\200\000\000\330v\177\000\000\200\000\000\330v\177\000
2022/11/09 15:27:35.204 [L1,-1,0] [devCommonGpib.c:749] [L1,0x12a83b0,50] 25ide:DG535:E1:trigModeMI can't convert msg >TM 1<
When I change a setting whose readback is a combination of MBBI and an AI PVs, I don't see such behavior. Here's the output on the console when I change the A channels delay to 2.0:
2022/11/09 15:30:38.390 [L1,-1,0] [drvAsynIPPort.c:596] [L1,0x12a83b0,50] 164.54.104.15:4001 write 12
wrt 15\nDT 2\r
2022/11/09 15:30:38.390 [L1,-1,0] [drvAsynIPPort.c:596] [L1,0x12a83b0,50] 164.54.104.15:4001 write 10
rd #60 15\r
2022/11/09 15:30:38.405 [L1,-1,0] [drvAsynIPPort.c:794] [L1,0x12a83b0,50] 164.54.104.15:4001 read 64
1,+1.600000000000\r\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\00019\r\n
2022/11/09 15:30:38.405 [L1,-1,0] [drvAsynIPPort.c:596] [L1,0x12a83b0,50] 164.54.104.15:4001 write 12
wrt 15\nDT 2\r
2022/11/09 15:30:38.405 [L1,-1,0] [drvAsynIPPort.c:596] [L1,0x12a83b0,50] 164.54.104.15:4001 write 10
rd #60 15\r
2022/11/09 15:30:38.419 [L1,-1,0] [drvAsynIPPort.c:794] [L1,0x12a83b0,50] 164.54.104.15:4001 read 64
1,+1.600000000000\r\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\00019\r\n
2022/11/09 15:30:38.419 [L1,-1,0] [drvAsynIPPort.c:596] [L1,0x12a83b0,50] 164.54.104.15:4001 write 29
wrt 15\nDT 2,1,2.000000000000\r
2022/11/09 15:30:38.419 [L1,-1,0] [devSupportGpib.c:1388] [L1,0x12a83b0,50] 25ide:DG535:E1:aDelaySetAO writeIt
DT 2,1,2.000000000000
2022/11/09 15:30:38.421 [L1,-1,0] [drvAsynIPPort.c:596] [L1,0x12a83b0,50] 164.54.104.15:4001 write 12
wrt 15\nDT 2\r
2022/11/09 15:30:38.421 [L1,-1,0] [devSupportGpib.c:1388] [L1,0x12a83b0,50] 25ide:DG535:E1:aDelayAI writeIt
DT 2
2022/11/09 15:30:38.421 [L1,-1,0] [drvAsynIPPort.c:596] [L1,0x12a83b0,50] 164.54.104.15:4001 write 10
rd #60 15\r
2022/11/09 15:30:38.589 [L1,-1,0] [drvAsynIPPort.c:794] [L1,0x12a83b0,50] 164.54.104.15:4001 read 64
1,+2.000000000000\r\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\00019\r\n
2022/11/09 15:30:38.589 [L1,-1,0] [devSupportGpib.c:982] [L1,0x12a83b0,50] 25ide:DG535:E1:aDelayAI gpibRead
1,+2.000000000000
2022/11/09 15:30:38.589 [L1,-1,0] [drvAsynIPPort.c:596] [L1,0x12a83b0,50] 164.54.104.15:4001 write 12
wrt 15\nDT 2\r
2022/11/09 15:30:38.589 [L1,-1,0] [devSupportGpib.c:1388] [L1,0x12a83b0,50] 25ide:DG535:E1:aDelaySI writeIt
DT 2
2022/11/09 15:30:38.589 [L1,-1,0] [drvAsynIPPort.c:596] [L1,0x12a83b0,50] 164.54.104.15:4001 write 10
rd #60 15\r
2022/11/09 15:30:38.603 [L1,-1,0] [drvAsynIPPort.c:794] [L1,0x12a83b0,50] 164.54.104.15:4001 read 64
1,+2.000000000000\r\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\00019\r\n
2022/11/09 15:30:38.603 [L1,-1,0] [devSupportGpib.c:982] [L1,0x12a83b0,50] 25ide:DG535:E1:aDelaySI gpibRead
1,+2.000000000000
In this case the gpibRead seems to get or is able to process the string to remove the stuff after the \r\n.
Is this the expected behavior? Is this an asyn problem?
Details of setup
epics 7.0.4.1
asyn 4-42
delaygen 1-2
Hardware Setup
SRS DG535 <-GPIB-> NI GPIB-RS232 <-RS-232-> Moxa <-ethernet-> network
Hardware settings
RS-232 (both on Moxa and NI GPIB-RS232): 115200, 8, N, 1, no flow control (tried hardware and software control, same result)
NI GPIB-RS232 set for S-mode operation
SRS DG535 address set to 15
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.