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  <20192020  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  2017  2018  <20192020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: StreamDevice for an odd float format
From: Ralph Lange via Tech-talk <[email protected]>
To: EPICS Tech Talk <[email protected]>
Date: Fri, 7 Jun 2019 16:44:24 +0200
Please have a look at the StreamDevice talk that Dirk Zimoch gave yesterday at the EPICS Meeting:

It looks like rewriting input using Regular Expressions is now supported, which might help in this case.

Cheers,
~Ralph


On Thu, 6 Jun 2019 at 02:00, Brown, Garth via Tech-talk <[email protected]> wrote:
Thanks, I like your approach. I'll give it a try.

Garth
From: Priller, John <[email protected]>
Sent: Wednesday, June 5, 2019 2:05:30 PM
To: Davis, Mark; [email protected]; Brown, Garth
Subject: Re: StreamDevice for an odd float format
 

Z is just the letter I selected when I wrote my protocol converter add-on.  There's a couple issues doing it this way but it seemed the best way forward for us at the time.


One, the interface to Stream is unofficial and can (and does) change from version to version.


Two, several necessary header files aren't exported as part of the package.  We have a lightly-patched version of Stream we link against that does export those files


From: [email protected] <[email protected]> on behalf of Davis, Mark via Tech-talk <[email protected]>
Sent: Wednesday, June 5, 2019 4:01 PM
To: Brown, Garth; [email protected]
Subject: Re: StreamDevice for an odd float format
 
You can add your own format converters to StreamDevice.

John Priller ([email protected]) at our lab has written the code for several odd format like this (see attached code).  I believe the one you want is the %ZHF one.

Mark



Mark Davis NSCL/FRIB Control Systems Software Engineer [email protected]
On 6/5/2019 1:58 PM, Brown, Garth via Tech-talk wrote:
Hi All,
I'm trying to use StreamDevice to talk to a device that is almost, but not quite, giving me data that the format converters (as I understand them) can convert.
It’s an ASCII representation of the IEEE 32 bit floating point format, e.g. the raw data for a value of 28.0 is

0x34 0x31 0x45 0x30 0x30 0x30 0x30 0x30

Which is the ASCII code for

41E00000

Which is the IEEE-754 floating point representation of 28.0.
I think that if the raw data were 0x41E00000, %R would be able to convert it. And if the raw data were
0x32 0x38 0x2E 0x30 (ASCII for 28.0)
then %f would be able to convert it.
Before I start writing calc records to convert the 32 bits to a float value, I figured I'd ask if someone had a less brute-force approach. Maybe a StreamDevice format converter trick I don't know about?

Thanks,
Garth


References:
StreamDevice for an odd float format Brown, Garth via Tech-talk
Re: StreamDevice for an odd float format Priller, John via Tech-talk
Re: StreamDevice for an odd float format Brown, Garth via Tech-talk

Navigate by Date:
Prev: Re: StreamDevice for an odd float format Brown, Garth via Tech-talk
Next: Re: Camonitor with client dictated update rate Hinko Kocevar 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  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: StreamDevice for an odd float format Brown, Garth via Tech-talk
Next: RE: StreamDevice for an odd float format Brown, Garth 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  2021  2022  2023  2024 
ANJ, 17 Jun 2019 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·