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  <20222023  2024  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  <20222023  2024 
<== Date ==> <== Thread ==>

Subject: asyn R4-43 released
From: Mark Rivers via Tech-talk <tech-talk at aps.anl.gov>
To: "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>
Date: Mon, 12 Sep 2022 21:26:11 +0000

Folks,

 

asyn R4-43 is now available at https://github.com/epics-modules/asyn.

 

These are the release notes:

 

devEpics

  • Change logic for output records with asyn:READBACK so they set udf=0 in the outputcallbackcallback() function, and not in the processXX function. This is needed to correctly clear the UDF status and severity.
    • This problem is happening because for EPICS output records the only way to clear a UDF alarm is to put a value into the record, either from an external put from a CA or DB link (in which case code in the dbAccess.c dbPut() routine clears UDF and the record would get processed) or by reading a value through the DOL link during record processing triggered by some other means.
    • In both cases UDF will have been cleared before the call to checkAlarms() in the boRecord::process() routine, which is where the UDF field is checked.
    • Unfortunately for asyn all output records call the checkAlarms() routine before the device support's write_bo() routine, so clearing UDF in processBo() is too late for this process cycle, the UDF_ALARM has already been registered.
    • This also means that if the bo record is configured with non-zero alarms in ZSV or OSV the initial read wouldn't trigger the appropriate STATE_ALARM either, since they get set in that routine as well.

drvAsynUSBTMC

  • Add support for output terminator.
  • Increase buffer size to 1 MB.
  • Add Remote Enable (REN), Local Lockout (LLO), and Go To Local (GTL) support.

asynPortDriver

  • Fixed initialization problem for UInt32 parameters. Initially setting a parameter to 0 left the corresponding PV undefined because the callback wasn't called. Thanks to Erico Nogueira for this fix.
  • Removed "using std::logic_error" from parameter header files. This is bad practice. This change could potentially break downstream module that would now have to use std::logic_error, rather than just logic_error. This is unlikely since the param classes are essential private to asynPortDriver. Thanks to Luka Krmpotic for this fix.

drvAsynIPServerPort

  • Allow specifying an interface to bind the IP server port. The second argument to drvAsynIPServerPortConfigure allows specifying a hostname or IP address for multi-homed machines. If you want to specify any interface, use "localhost:port", an empty host ":port" or the address "0.0.0.0:port". The address has to be an existing interface on the host. If the name cannot be resolved, the call will fail. If you need the loopback interface, use "127.0.0.1:port". Thanks to Lutz Rossa for this.

asynShellCommands

  • Provide usage information for asynSetTraceMask and asynSetTraceIOMask. This is helpful for remembering how to specify the bit masks numerically or symbolically. Thanks to Michael Davidsaver for this.

asynManager

  • Added asynDisconnected and asynDisabled in strStatus(). Thanks to Kristian Loki for this.

configure/RELEASE

  • All external modules are commented out. Users will need to uncomment the ones to be used.

drvVxi11

  • Fix potential VXI connection resource leak. Thanks to Freddie Akeroyd for this.

.ci

  • Change from Travis to Github Actions. Thanks to Michael Davidsaver for this.
  • Add support from sscan, calc, and ipac. Thanks to Freddie Akeroyd for this.

devGPIB and streamSCPI template files

  • Changed DB_INSTALLS+= to DB+= to work with recent versions of EPICS.

 


Navigate by Date:
Prev: Bluesky Project Josh Fiddler via Tech-talk
Next: EPICS_CA_ADDR_LIST and multiple instances of a SoftIOC on Windows Carsten Winkler 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  <20222023  2024 
Navigate by Thread:
Prev: Bluesky Project Josh Fiddler via Tech-talk
Next: EPICS_CA_ADDR_LIST and multiple instances of a SoftIOC on Windows Carsten Winkler 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  <20222023  2024 
ANJ, 14 Sep 2022 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·