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  <20182019  2020  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  <20182019  2020 
<== Date ==> <== Thread ==>

Subject: asyn R4-33 available
From: Mark Rivers <rivers@cars.uchicago.edu>
To: 'EPICS Mailing list' <tech-talk@aps.anl.gov>
Date: Sat, 27 Jan 2018 22:19:06 +0000

Folks,

 

asyn R4-33 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

 

Soon you will be able to find links to the new documentation and release notes here:

http://www.aps.anl.gov/epics/modules/soft/asyn/

 

These are the main items from the R4-33 release notes:

 

- devAsynFloat64.c

  - Added support for ASLO/AOFF scaling and SMOO value smoothing to the float64 device support for ai and ao records. SMOO only applies to ai records. devAsynFloat64 directly writes to the record's VAL/OVAL fields, so the conversion routines in the record that use RVAL/VAL don't work.

 

- devAsynInt32.c, devAsynUInt32Digital.c, devAsynFloat64.c, devAsynOctet.c

  - Fixed a problem with output records that have the asyn:READBACK info tag, i.e. output records that update on callbacks from the driver. Previously it did not correctly distinguish between record processing due to a driver callback (in which case it should not call the driver) and normal record processing (in which case the driver should be called). A new test application, testOutputCallbackApp, was added to test this.

 

- devAsynOctet.c

  - Fixed bug where the record alarm status was not set correctly if a write or read failed with a synchronous driver.

 

- asynManager.c

  - Improved error messages from autoconnect attempts. Messages are now printed only when the autoconnect status changes, rather than each time there is a failure. Thanks to Ben Franksen for this.

 

- drvAsynIPServerPort.c

- Changed the logic so it creates maxClients drvAsynIPPort drivers at initialization rather than on-demand when clients connect. This makes it possible to use these ports before iocInit, which is much more useful. They can be used in input and output links in EPICS records, for example. This change should be backwards compatible, since it was transparent when the ports were created.

- The first drvAsynIPPort created is now named PORT_NAME:0 rather than PORT_NAME:1, where PORT_NAME is the name of the drvAsynIPServer port created by this driver. This might break backwards compatibility, but clients were normally getting the name from a callback, so probably not.

- Set the socket option SO_REUSEADDR when creating the listening socket. Previously if a client was connected and the IOC exited it could not be restarted again immediately. One needed to wait for the operating system to time out the connection. This change allows the IOC to be run again with the same listening port immediately, without waiting for the operating system timeout.

- Added an exit handler to close the listen socket and delete the private structure.

- Improved the report() function so it shows all the drvAsynIPPort drivers that were created.

 

- asynPortClient

Fixed typo in constructor for asynUInt32DigitalClient, it was calling asynInt32SyncIO->connect rather than asynUInt32DigitalClient->connect.

 

- OPI screens

  - Added new opi/Makefile. This automatically converts all opi/medm/*.adl files into corresponding files in edm/autoconvert, caqtdm/autoconvert, and boy/autoconvert. It uses new RULES_OPI and CONFIG_SITE.linux-x86_64 files in synApps/support/configure directory. The upper-level edm, caqtdm, and boy directories should be used only for manually tweaked files.

  - The medm adl files were improved to make the autoconverted files work better. The size of text graphics and text update widgets were set to the actual text size, and text update widgets were set to the correct datatype, e.g. string type for enum PVs.

 

- Documentation

  - asynDriver.html has been improved. All level 3 headings are now links in the Contents at the start of the file. This makes it much easier to find a particular topic and jump to it quickly. Many of the test applications are

now documented, including medm screen shots to show how they work.

 

Mark

 

 


Navigate by Date:
Prev: Re: IOC error Ralph Lange
Next: areaDetector R3-2 released Mark Rivers
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  <20182019  2020 
Navigate by Thread:
Prev: RE: IOC build freddie.akeroyd
Next: areaDetector R3-2 released Mark Rivers
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  <20182019  2020 
ANJ, 28 Jan 2018 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·