EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

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  <20252026  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  <20252026 
<== Date ==> <== Thread ==>

Subject: Re: Further OMS PC78 questions
From: "James P. Withrow via Tech-talk" <[email protected]>
To: "Peterson, Kevin M." <[email protected]>, Tech Talk EPICS <[email protected]>
Date: Fri, 5 Dec 2025 14:11:43 +0000
Kevin - 

I retested this morning with asynSetTraceMask reset to your specified values, in addition to sending the controller an 'EF' command via screen before starting the IOC.
The output does indeed look different between the driver's communication and my manual transaction with caput:

Driver:

 Starting iocInit
############################################################################
## EPICS R7.0.9
## Rev. 2025-11-28T09:00-0600
## Rev. Date build date/time: 
############################################################################
2025/12/05 07:57:34.087 /dev/ttyS0 write 2
WY
2025/12/05 07:57:34.087 /dev/ttyS0 write 2
WY
2025/12/05 07:57:34.087 /dev/ttyS0 write 2
WY
recGblRecordError: motor_init_record_com(): card does not exist! Illegal field value PV: serial:m1
iocRun: All initialization complete
## Start any sequence programs
#seq sncserial,"user=necat"
epics> 

caput:

2025/12/05 07:58:37.732 /dev/ttyS0 write 2
WY
2025/12/05 07:58:37.744 /dev/ttyS0 read 8
\n\rPC78 v
Invalid entry-card #0
2025/12/05 07:58:37.752 /dev/ttyS0 read 8
er 1.21-
Invalid entry-card #0
2025/12/05 07:58:37.761 /dev/ttyS0 read 8
46 S/N 0
Invalid entry-card #0
2025/12/05 07:58:37.769 /dev/ttyS0 read 8
00995 FP
Invalid entry-card #0
2025/12/05 07:58:37.777 /dev/ttyS0 read 8
GA:B4 - 
Invalid entry-card #0


Thank you all for the assistance you've provided. As a newcomer to the EPICS world, I truly appreciate the patience and generosity of this community.

-Jim

Jim Withrow, Research Support Specialist - [email protected]
NE-CAT, Cornell University - https://necat.chem.cornell.edu
Advanced Photon Source, Sector 24
9700 S. Cass Avenue, Building 436 E001
Lemont, IL 60439

From: Peterson, Kevin M. <[email protected]>
Sent: Thursday, December 4, 2025 4:44 PM
To: James P. Withrow <[email protected]>; Tech Talk EPICS <[email protected]>
Subject: Re: Further OMS PC78 questions
 
Jim,

If the input terminator is incorrect and the read results in a timeout, that can sometimes cause the problems you're seeing (the driver thinks an error has occurred because of the asynTimeout status but the reply is still received when sending the command manually).

The following lines in the IOC's startup script should cause lots of information about the communication to be printed:

asynSetTraceIOMask("L0", 0, 2)
asynSetTraceMask("L0", 0, 255)

I would probably change the asynSetTraceMask call to this, since the driver output should be sufficient to see commands & replies:

asynSetTraceMask("L0", 0, "ERROR+DRIVER")

Does the asynTrace output look different when the WY command is sent during iocInit than it does when the command is sent manually?

The driver sends an "echo off" command (EF) *after* the WY command successfully queries the ID string:

https://nam12.safelinks.protection.outlook.com/?url="">

I don't know if the WY command succeeds if echo is on.  Can you confirm the current echo state of the controller?

Kevin

________________________________________
From: James P. Withrow <[email protected]>
Sent: Thursday, December 4, 2025 3:19 PM
To: Peterson, Kevin M.; Tech Talk EPICS
Subject: Re: Further OMS PC78 questions

Yes, I do not receive a response from the controller when it is sending the three "WY" commands from the driver. I have seen the response before in this transaction, but I haven't been able to get it to reoccur so far. If I send "WY"
ZjQcmQRYFpfptBannerStart
This Message Is From an External Sender
This message came from outside your organization.

ZjQcmQRYFpfptBannerEnd
Yes, I do not receive a response from the controller when it is sending the three "WY" commands from the driver. I have seen the response before in this transaction, but I haven't been able to get it to reoccur so far. If I send "WY" to the .AOUT field of the asyn record for the port with caput, I do get back the expected response, and I can see the logging messages scroll past in the IOC.

Is there something different that the driver is doing to send the commands vs. caput/caget?

I've put the line 'var "drvOmsPC68debug", 10' in my st.cmd file, but it doesn't appear to be generating any additional output

Thanks!
-Jim

Jim Withrow, Research Support Specialist - [email protected]
NE-CAT, Cornell University -
https://nam12.safelinks.protection.outlook.com/?url="">
Advanced Photon Source, Sector 24
9700 S. Cass Avenue, Building 436 E001
Lemont, IL 60439
________________________________
From: Peterson, Kevin M. <[email protected]>
Sent: Thursday, December 4, 2025 10:35 AM
To: James P. Withrow <[email protected]>; Tech Talk EPICS <[email protected]>
Subject: Re: Further OMS PC78 questions

Jim,

The "card does not exist" error means the driver didn't receive a response from the firmware very query of the controller in the motor_init function:

https://nam12.safelinks.protection.outlook.com/?url="">

There is a debug variable, drvOmsPC68debug, that can be set to a non-zero value before iocInit to enable debug messages to be printed:

var "drvOmsPC68debug", 10

That should give us more information about what is failing.

Kevin

Replies:
Re: Further OMS PC78 questions Peterson, Kevin M. via Tech-talk
References:
Further OMS PC78 questions James P. Withrow via Tech-talk
Re: Further OMS PC78 questions Peterson, Kevin M. via Tech-talk
Re: Further OMS PC78 questions James P. Withrow via Tech-talk
Re: Further OMS PC78 questions Peterson, Kevin M. via Tech-talk
Re: Further OMS PC78 questions James P. Withrow via Tech-talk
Re: Further OMS PC78 questions Peterson, Kevin M. via Tech-talk

Navigate by Date:
Prev: Re: Further OMS PC78 questions Peterson, Kevin M. via Tech-talk
Next: Re: Further OMS PC78 questions Peterson, Kevin M. 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  <20252026 
Navigate by Thread:
Prev: Re: Further OMS PC78 questions Peterson, Kevin M. via Tech-talk
Next: Re: Further OMS PC78 questions Peterson, Kevin M. 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  <20252026 
ANJ, 19 Mar 2026 · Home · News · About · Talk · Base · Modules · Extensions ·
· Distributions · Download · Documents · Links · Licensing ·