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 2022 2023 2024 2025 | 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 2022 2023 2024 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: asyn/stream hang on (very long email, sorry in advance) |
From: | Dirk Zimoch <[email protected]> |
To: | [email protected] |
Date: | Fri, 25 Apr 2014 11:43:38 +0200 |
On 23.04.2014 11:51, Mauro Giacchini wrote:
Dear All, I'm working to make an IOC which has to read strings on rs232; these strings are continuously sent from a box. Up to now I'm working just only to read the this string: "KS,[counter],[encoder0],[encoder1],[encoder2],[encoder3]" The IOC works very well to few hours, after that it's (the communication) hangs-on (??) Follow the protocol: ---------- InTerminator = LF; # ExtraInput = Ignore; ReplyTimeout = 1000; ReadTimeout = 1000; LockTimeout = 5000;
Note that StreamDevice needs to poll the serial interface for new data when using "I/O Intr". The default for PollPeriod is ReadTimeout, which you set here to 1 second. That may be too long. Have it shorter than the expected repetition rate.
knob_id { in "KS,%d,%*d,%*d,%*d,%*d" ; } knob_0 { in "KS,%*d,%d,%*d,%*d,%*d" ; } knob_1 { in "KS,%*d,%*d,%d,%*d,%*d" ; } knob_2 { in "KS,%*d,%*d,%*d,%d,%*d" ; } knob_3 { in "KS,%*d,%*d,%*d,%*d,%d" ; }
As Peter suggested, use redirection. Dirk