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  <20142015  2016  2017  2018  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  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: devAsynFloat64::initCommon findInterface asynFloat64Type
From: "Pearson, Matthew R." <[email protected]>
To: "Heesterman, Peter J" <[email protected]>
Cc: "<[email protected]>" <[email protected]>
Date: Fri, 31 Oct 2014 18:00:08 +0000
Hi Peter,

It might be the port name. The name of the Asyn port used for the low level serial comms is PUMP:1, but the name of the port used for the Asyn port driver is TURBO:1. The port name you pass into the database has to be the TURBO:1 name.

But you probably need to pass both names into the driver function (LeyboldTurboPortDriverConfigure), because that would have to connect to the low level port in order to do write and reads from PUMP:1.

Cheers,
Matt


On Oct 31, 2014, at 1:35 PM, "Heesterman, Peter J" <[email protected]> wrote:

> Hi Mark,
>  
> Attached.
>  
> Cheers,
>  
> Peter.
>  
> From: Mark Rivers [mailto:[email protected]] 
> Sent: 31 October 2014 17:22
> To: Heesterman, Peter; [email protected]
> Subject: RE: devAsynFloat64::initCommon findInterface asynFloat64Type
>  
> Please send the complete output when the IOC starts up.  Also send the output of the command
>  
> asynReport 10
>  
> Mark
>  
>  
> From: Heesterman, Peter J [mailto:[email protected]] 
> Sent: Friday, October 31, 2014 12:07 PM
> To: Mark Rivers; [email protected]
> Subject: RE: devAsynFloat64::initCommon findInterface asynFloat64Type
>  
> Hi Mark,
>  
> Here is this constructor (unashamedly copied from your TestAsynPortDriver class):
>  
> CLeyboldTurboPortDriver::CLeyboldTurboPortDriver(const char *AsynPortName)
>    : asynPortDriver(AsynPortName,
>                     1, /* maxAddr */
>                     NUM_PARAMS,
>                     asynInt8ArrayMask | asynInt32Mask | asynFloat64Mask | asynFloat64ArrayMask | asynEnumMask | asynDrvUserMask, /* Interface mask */
>                     asynInt8ArrayMask | asynInt32Mask | asynFloat64Mask | asynFloat64ArrayMask | asynEnumMask,  /* Interrupt mask */
>                     0, /* asynFlags.  This driver does not block and it is not multi-device, so flag is 0 */
>                     1, /* Autoconnect */
>                     0, /* Default priority */
>                     0) /* Default stack size*/   
>  
> Cheers,
>  
> Peter.
>  
>  
> From: Mark Rivers [mailto:[email protected]] 
> Sent: 31 October 2014 17:04
> To: Heesterman, Peter; [email protected]
> Subject: RE: devAsynFloat64::initCommon findInterface asynFloat64Type
>  
> I suspect that in the constructor for your driver you did not set the asynFloat64Mask bit in the interfaceMask argument to the asynPortDriver constructor.  If your driver will do callbacks on the asynFloat64 interface you also need to set that bit in the interruptMask argument to the asynPortDriver constructor.
>  
> Mark
>  
>  
> From: [email protected] [mailto:[email protected]] On Behalf Of Heesterman, Peter J
> Sent: Friday, October 31, 2014 11:57 AM
> To: [email protected]
> Subject: devAsynFloat64::initCommon findInterface asynFloat64Type
>  
> Hi all,
>  
> I’m developing a device that needs to read out a floating point value that forms part of a 24-byte structure read from the serial port.
>  
> I’m doing this as an AsynPortDriver device.
>  
> I get the above error on my record definition, but I’m not sure why.
>  
> I’m still new as an EPICS user, so my question is: can you give me some advice as to what I’m missing?
>  
> Many thanks,
>  
> Peter.
>  
> <LeyboldTurbo.log>



References:
devAsynFloat64::initCommon findInterface asynFloat64Type Heesterman, Peter J
RE: devAsynFloat64::initCommon findInterface asynFloat64Type Mark Rivers
RE: devAsynFloat64::initCommon findInterface asynFloat64Type Heesterman, Peter J
RE: devAsynFloat64::initCommon findInterface asynFloat64Type Mark Rivers
RE: devAsynFloat64::initCommon findInterface asynFloat64Type Heesterman, Peter J

Navigate by Date:
Prev: RE: devAsynFloat64::initCommon findInterface asynFloat64Type Mark Rivers
Next: Re: waveform with single element Andrew Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: devAsynFloat64::initCommon findInterface asynFloat64Type Heesterman, Peter J
Next: Problems with Dynamic Array population Brown, David L.
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 17 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·