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  <20202021  2022  2023  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  <20202021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: asyn R4-40 available
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: Fri, 17 Jul 2020 15:10:09 +0000
Folks,

asyn R4-40 is now available. 

asyn is available on github here:
https://github.com/epics-modules/asyn 

tar and zip files are available here:
https://github.com/epics-modules/asyn/releases 

The documentation and release notes are here:
https://epics-modules.github.io/master/asyn/ 

These are from the R4-40 release notes: 

- ci-scripts
  - Updated to v3.0.1 of ci-scripts.
  - Added native Windows builds (VS2017) on Travis.
  - Added AppVeyor builds for testing on many Windows configuations.

- asynPortDriver
  - Fixed error in writeInt64 method.
  - Added asynParamSet class.
  - Added new constuctor that uses asynParamSet.
  - Added new utility template function findDerivedAsynPortDriver() that returns a pointer to an asynPortDriver derived class object from its name.

- Build system
  - Fixed logic for when CALC and SSCAN modules are needed.

- asynManager
  - Take connect timestamp after connection attempt. autoConnectDevice() has a built-in protection that forces at least 2 seconds between connection attempts. 
     However, previously the timestamp was read before starting the connection, so if the connection attempt takes about 2 seconds (or more) to timeout then 
    that 2 second do-not-connect window was already expired (or about to expire) by the time connectAttempt() returns. 
    Now we read the timestamp after connectAttempt() returns.
  - Made 2 changes to queueLockPort.
    - If the queue request times out then return asynTimeout rather than asynError.
    - If the call to pasynManager->queueRequest fails then return the actual failure status rather than asynError.
      These changes improve the alarm handling when a device becomes unavailable. Previously it would toggle between TIMEOUT alarm when an actual read 
      request timed out and READ alarm when a queue request timed out. This caused too many alarms. Previously if the port was Disconnected then it was returning 
      asynError which sets READ alarm. In this case it should be returning asynDisconnected which sets COM alarm.

- asynTrace
  - Changed the output with ASYN_TRACEINFO_SOURCE. Previously the file name included the complete path to the file, which could be very long. The path is now removed.

- asynPortClient
  - Fix bug in asynUInt32DigitalClient::registerInterruptUser().

- asynRecord
  - Fixed problem updating the CNCT field. Previously if an attempt to connect with CNCT failed CNCT stayed in the Connected state, rather than going back to Disconnected immediately.

- drvAsynIPPort
  - Added new tcp&, udp& and udp*& protocols that specify that the SO_RESUSEPORT flag should be used. 
    On Windows and RTEMS SO_REUSEADDR is used instead of SO_RESUSEPORT, but it should have the same effect.

- unittest/Makefile
  - Fixed to link with EPICS_BASE_IOC_LIBS unless EPICS_LIBCOM_ONLY=YES.

- devEpics
  - Fixed bug in devAsynOctet when using output records with info tag asynREADBACK=1 and asynFIFO not specified. 
    It was supposed to be creating a ring buffer with one element, but was not, so the readback did not work.

- Many files
  - Removed tabs and trailing white space.
  - Minor changes to avoid compiler warnings.

Mark





Navigate by Date:
Prev: Re: Asyn/StreamDevice for HP3458A through Agilent E5810 LAN/GPIB Gateway Hu, Yong via Tech-talk
Next: data acquisition strategies Valentyn Stadnytskyi 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  <20202021  2022  2023  2024 
Navigate by Thread:
Prev: PowerMaster II device support? DiMonte, Nicholas via Tech-talk
Next: data acquisition strategies Valentyn Stadnytskyi 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  <20202021  2022  2023  2024 
ANJ, 17 Jul 2020 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·