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: Further OMS PC78 questions
From: "James P. Withrow via Tech-talk" <[email protected]>
To: Tech Talk EPICS <[email protected]>
Date: Mon, 1 Dec 2025 21:15:03 +0000
Good afternoon, all - 

I've been working with the OMS PC78 motor controller under EPICS base-7.0.9, and have run into problems that I'm hoping somebody can shed some light on for me. 

As a first effort I've been attempting to get the controller working via RS232. I've set up an asyn serial port and configured the appropriate parameters. I'm able to send strings to .AOUT and see the results I'd expect in .AINP, so I'm fairly certain that that portion of the communications chain is working properly.

I'm using OMS configurations cribbed from the Ebrick documentation and have logging turned all the way up with asynSetTraceIOMask/asynSetTraceMask. I can see the controller responding with its informational message when (I think) the driver is called - it sends "WY" and the controller responds with an ID.

drvAsynSerialPortConfigure("L0", "/dev/ttyUSB0", 0, 0, 0)
asynSetOption("L0", 0, "baud", "9600")
asynSetOption("L0", 0, "bits", "8")
asynSetOption("L0", 0, "parity", "none")
asynSetOption("L0", 0, "stop", "1")
asynSetOption("L0", 0, "clocal", "Y")
asynSetOption("L0", 0, "crtscts", "Y")

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

dbLoadRecords("$(ASYN)/db/asynRecord.db", "P=serial:,R=USB0,PORT=L0,ADDR=0,IMAX=100,OMAX=100")

# OmsPC68 driver setup
# (1) cards
# (2) scan rate
OmsPC68Setup(1, 10)

# OmsPC68 driver setup and configuration parameters
# (1) card (start at 0)
# (2) asyn port
OmsPC68Config(0, "L0")

My issue is in trying to connect the asyn port to the OMS driver. I'm still learning about motor records and their application, and when I use the default 'motor.db', the OUT field gets set to a VME_IO type address. The 'asyn_motor.db' includes @ASYN in the OUT field, which I would assume is more appropriate, but still no luck. Am I 'wiring it up' wrong? 

I'd definitely appreciate any pointers or assistance!

Thanks, 
-Jim Withrow

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

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

Navigate by Date:
Prev: Re: Modbus-TCP "authorization" Виталий Балакин via Tech-talk
Next: Save the date: EPICS Collaboration Meeting , 20-24 April 2026 LOTRUS Paul 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: quadEM R9-6 released Mark Rivers 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 ·