EPICS Home

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  <20172018  2019  2020  2021  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  <20172018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Asyn timeout
From: Hinko Kocevar <[email protected]>
To: "[email protected]" <[email protected]>
Date: Tue, 11 Apr 2017 11:40:26 +0200
Hi,

I have the following code:
...
    status = pasynOctetSyncIO->writeRead(mAsynUserCommand,
        mReq, mReqSz, mResp, mRespSz,
        timeout, &mReqActSz, &mRespActSz, &eomReason);

...

And startup st.cmd:

epicsEnvSet("I2C_IP_PORT",          "AK_I2C_COMM")

# Create the asyn port to talk to the AK-NORD server on command port 1002.
drvAsynIPPortConfigure($(I2C_IP_PORT),"192.168.1.100:1002")
asynSetTraceIOMask($(I2C_IP_PORT),0,255)
asynSetTraceMask($(I2C_IP_PORT),0,255)

I connect to my asyn port driver as so:

AKI2CTMP100Configure($(I2C_TMP100_PORT), $(I2C_IP_PORT), 1, "0x49", 1, 0, 0)

After communicating with the device
pasynOctetSyncIO->writeRead() seems to return 1 (asynTimeout) .. see last line of this output:

epics> 2017/04/11 11:10:31.449 AK_I2C_COMM asynManager::queueLockPort locking port
2017/04/11 11:10:31.449 AK_I2C_COMM asynManager::queueLockPort taking mutex 0x7f89a80009d0
2017/04/11 11:10:31.449 AK_I2C_COMM asynManager::queueLockPort queueing request
2017/04/11 11:10:31.449 AK_I2C_COMM addr -1 queueRequest priority 0 not lockHolder
2017/04/11 11:10:31.449 AK_I2C_COMM asynManager::queueLockPort waiting for event
2017/04/11 11:10:31.449 asynManager::portThread port=AK_I2C_COMM callback
2017/04/11 11:10:31.449 AK_I2C_COMM asynManager::queueLockPortCallback signaling begin event
2017/04/11 11:10:31.449 AK_I2C_COMM asynManager::queueLockPortCallback waiting for mutex from queueUnlockPort
2017/04/11 11:10:31.449 AK_I2C_COMM asynManager::queueLockPort got event from callback
2017/04/11 11:10:31.449 AK_I2C_COMM flush
2017/04/11 11:10:31.449 192.168.1.100:1002 flush
2017/04/11 11:10:31.449 192.168.1.100:1002 write.
2017/04/11 11:10:31.449 192.168.1.100:1002 write 12

\002\000\t\003H\001\001W\000\001\370\003

02 00 09 03 48 01 01 57 00 01 f8 03
2017/04/11 11:10:31.450 wrote 12 to 192.168.1.100:1002, return asynSuccess.
2017/04/11 11:10:31.450 AK_I2C_COMM wrote

\002\000\t\003H\001\001W\000\001\370\003

02 00 09 03 48 01 01 57 00 01 f8 03
2017/04/11 11:10:31.450 asynOctetSyncIO wrote:

\002\000\t\003H\001\001W\000\001\370\003

02 00 09 03 48 01 01 57 00 01 f8 03
2017/04/11 11:10:31.450 192.168.1.100:1002 read.
2017/04/11 11:10:31.450 192.168.1.100:1002 read 2
W
\006W

06 57
2017/04/11 11:10:31.450 AK_I2C_COMM read
W
\006W

06 57
2017/04/11 11:10:31.450 192.168.1.100:1002 read.
2017/04/11 11:10:31.751 AK_I2C_COMM queueUnlockPort
2017/04/11 11:10:31.751 AK_I2C_COMM asynManager::queueUnlockPort waiting for event
2017/04/11 11:10:31.751 AK_I2C_COMM queueUnlockPort unlock mutex 0x7f89a80009d0 complete.
2017/04/11 11:10:31.751 AKBase:ipPortWriteRead, status=1



I can interpret the data as proper (write and read), number of bytes sent and requested is correct.

I would like to understand if this behavior is intended?

Thanks,
Hinko

Replies:
RE: Asyn timeout Mark Rivers

Navigate by Date:
Prev: RE: NDDriverStdArrays problem with configuration Marcin Lukaszewski
Next: CA client within Asyn Benoit RAT
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: NDDriverStdArrays problem with configuration Marcin Lukaszewski
Next: RE: Asyn timeout 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  <20172018  2019  2020  2021  2022  2023  2024