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  2020  2021  <20222023  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  2020  2021  <20222023  2024 
<== Date ==> <== Thread ==>

Subject: Re: StreamDevice return state error
From: "Zimoch Dirk \(PSI\) via Tech-talk" <tech-talk at aps.anl.gov>
To: "patrick.e.barrett at boeing.com" <patrick.e.barrett at boeing.com>, "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>
Date: Wed, 29 Jun 2022 07:25:22 +0000
Hi Patrick,

The error "Record does not accept input" happens when you send a string (parsed with %s) to a record with an enum VAL
like your mbbi, but the string does not match any of the enum strings in the record.
As your record only has "STANDBY", "OPERATE" and "SELFTEST", it does not accept the input "MONITOR".

Dirk


On Tue, 2022-06-28 at 16:37 +0000, Barrett (US), Patrick E via Tech-talk wrote:
> I am working to simulate a SCPI type device with an IOC.  I am using I/O Intr records to read in the SCPI and set the
> state of the mbbi record.  The IOC should return ERROR if an error occurs, such as if an invalid state is requested. I
> can see the error message in the IOC when an invalid state is requested, but do not know how to capture the error in
> the protocol file or db setup to send a return string of “ERROR”.
>  
> The error I get is when sending the IOC “SYSTEM:STATE MONITOR” is: ’… RCV_STATE: Record does not accept input
> "MONITOR"’
>  
> Proto definition:
> readSystemState
> {
>    in "SYSTEM:STATE %s";
>    out "%(\$1)s";
> }
>  
> Record definition:
> record(mbbi, "RCV_STATE")
> {
>    field(DESC, "SYSTEM:STATE P01")
>    field(DTYP, "stream")
>    field(SCAN, "I/O Intr")
>    field(INP,  "@simCmd.proto readSystemState(STATE_RTN) $(PORT) 0")
>    field(ZRST, "STANDBY")
>    field(ZRVL, "0")
>    field(ONST, "OPERATE")
>    field(ONVL, "1")
>    field(TWST, "SELFTEST")
>    field(TWVL, "2")
>    field(UNSV, "INVALID")
> }
> record(bi, " STATE_RTN ")
> {
>    field(DESC, "State Return")
>    field(DTYP, "Soft Channel")
>    field(SCAN, "Passive")
>    field(ZNAM, "OK")
>    field(ONAM, "ERROR")
>    field(VAL, 0)
>    field(PINI, 1)
> }
> Patrick Barrett
> Software Engineer
> The Boeing Company
>  

Replies:
Re: StreamDevice return state error Zimoch Dirk (PSI) via Tech-talk
References:
StreamDevice return state error Barrett (US), Patrick E via Tech-talk

Navigate by Date:
Prev: Re: added the pv in synapps 网易邮件中心 via Tech-talk
Next: Re: StreamDevice return state error Zimoch Dirk (PSI) 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  2020  2021  <20222023  2024 
Navigate by Thread:
Prev: RE: StreamDevice return state error Pearson, Matthew via Tech-talk
Next: Re: StreamDevice return state error Zimoch Dirk (PSI) 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  2020  2021  <20222023  2024 
ANJ, 14 Sep 2022 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·