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

Subject: asyn based IOC timeout
From: Hinko Kocevar via Tech-talk <tech-talk@aps.anl.gov>
To: "tech-talk@aps.anl.gov" <tech-talk@aps.anl.gov>
Cc: "e.merker@ak-nord.de" <e.merker@ak-nord.de>, Rafael Baron <Rafael.Baron@esss.se>
Date: Mon, 29 Apr 2019 09:59:31 +0000
I have an Ethernet attached device (https://www.ak-nord.de/XT-PICO-SXL.html) that can talk various serial protocols on the other side.

I have created an asyn based IOC utilizing drvAsynIPPortConfigure() to talk to the unit. In addition asynPortDriver() was extended and instantiated to provide interface to the I2C port on the picoSXL by utilizing pasynOctetSyncIO->read(), pasynOctetSyncIO->write() and pasynOctetSyncIO->writeRead().

Every time I start the IOC, I can almost always see these lines:

epics> 2019/04/29 11:37:05.985 AKBase:ipPortWriteRead, status=3, eomReason 0
2019/04/29 11:37:05.985 AKI2C::doXfer, status=3
2019/04/29 11:37:05.985 AKBase:ipPortRead, status=3, eomReason 0
2019/04/29 11:37:05.985 AKI2C_TMP100:writeInt32: error, status=3 function=4, addr=0, value=1
2019/04/29 11:37:05.985 ETHMOD:I2C1:Temp1:Read devAsynInt32::processCallbackOutput process error 


I never paid much attention, since after the first request failed (as seen above) I do not see the problem anymore for the remainder of the IOC lifecycle. If the IOC is restarted or the unit power cycled (and IOC restarted) I can highly likely expect the error again. After leaving the device powered over the weekend, I got no additional errors (ETHMOD:I2C1:Temp1:Read SCAN was set to 1s), except the one seen for the first request.

I can say that the picoSXL unit does not even drive the I2C lines when the error is reported (checked with oscilloscope). I can not tell if the request (coming from network) is digested by the unit or not. It seems as if asyn handler would timeout after not getting any response from the picoSXL unit

I can provide more details on the code and setup if needed, for trying to understand the issue and possible get rid of the error for the firs request.

FYI, I'm also in contact with the AK-NORD company, and have upgraded the device firmware to latest version already.

TIA,
Hinko

Navigate by Date:
Prev: MasarService run error =?gb18030?b?MTIz?= via Tech-talk
Next: Re: Stopping IOC boot on failure to load database Benjamin Franksen 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  <20192020 
Navigate by Thread:
Prev: MasarService run error =?gb18030?b?MTIz?= via Tech-talk
Next: Re: Pmac Slits Davis, Mark 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  <20192020 
ANJ, 29 Apr 2019 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·