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  <20162017  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  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Multiple device support for a record type
From: Stefen Paul <[email protected]>
To: EPICS Tech Talk <[email protected]>
Date: Fri, 12 Aug 2016 11:07:49 +0530
Hi,

Ya Michael ... you are right that one shouldn't feel bound to use VME_IO just because it has VME in its name. Even initially I had issues using this but now I've managed to make it work for A24 by using relative addressing and some other custom tricks.

Thanks Ralph ... for the useful tip of having the constraint that the combination of tag and record type must be unique. I'll use this method and will update you on the same.

I've one one more question in the same line :

Presently the method I use to build device support remains application specific. I add the device support C files in the 'src' folder of the app and then make necessary entries in the makefile and .dbd file. This way I get the device support for the records in that application.

Is there a way to include device support globally (at the EPICS base level) so that I do not need to included it everytime at the individual application level and the support is automatically available to all the subsequently created applications made using makeBaseApp.

Thanks,
Stefen  


On Thu, Aug 11, 2016 at 5:08 PM, Ralph Lange <[email protected]> wrote:
Hi Stefen,

On 11/08/2016 12:39, Stefen Paul wrote:
I've built device support for ai record for a vme based ADC board.
I've used the following to add the support:
    device(ai,VME_IO, devAiADCtype1, "HW Channel");

Now I want to build device support for ai record to support one more type of vme based ADC board to be used in the same system.
How do I do it ? Should I write something like :
    device(ai,VME_IO, devAiADCtype2, "HW Channel 2");

Yes, that's the way.

The constraint is that the combination of tag ("HW Channel") and record type must be unique.
I.e. you can and should support multiple record types for the same hardware using a single tag.

Please use something descriptive as the tag, e.g. for a VME-6854 card by MyCorporation something like "MyCorp VME-6854".

If you have multiple functionalities in one support (for one hardware) that map to the same record type, e.g. different configuration options and digital outputs that all use a bo record, the distinction is usually done by a tag in the free text part of the INP/OUT link.
If you need to code more configuration inside a single record instance than the free text allows, you can add info() structures to the record. (Be aware, though, that info structures are not visible remotely through Channel Access.)

Cheers,
~Ralph


Replies:
Re: Multiple device support for a record type Andrew Johnson
References:
Multiple device support for a record type Stefen Paul
Re: Multiple device support for a record type Ralph Lange

Navigate by Date:
Prev: RE: Streamdevice for Hexa command Mark Rivers
Next: Query palak shimpee
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Multiple device support for a record type Ralph Lange
Next: Re: Multiple device support for a record type Andrew Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 12 Aug 2016 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·