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  <20102011  2012  2013  2014  2015  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  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Newbie IOC driver/device support problem
From: Angus Gratton <[email protected]>
To: [email protected]
Date: Thu, 22 Jul 2010 17:31:08 +1000
Hi everyone,

I'm new to EPICS and I'm having problems with a new driver & device
support package I'm writing.

It seems that I can't get the link name to parse from my test database
file. The device support is registered successfully, and when it hits my
init_record function the 'type' is set correctly (VME_IO). However the
card and signal numbers aren't parsing (they are always 0 and 0,
respectively.)

Here is the db entry:

        record(bo, "testrelay")
        {
        		  field(DESC, "Test relay")
        		  field(OUT, "#C1 S1")
        		  field(DTYP, "xvme260")
        		  field(ZNAM, "open")
        		  field(ONAM, "closed")
        		  field(SCAN,"Passive")
        }
        
I've tried various values in the OUT field including "#C1 S1 @" "#C1"
and "VME_IO #C1 S1", plus some others.

The .dbd file:
        
        # XVME260 support
        driver(xvme260)
        variable(xvme260Debug, int)
        registrar(xvme260Register)
        device(bo, VME_IO, xvme260Bo, "xvme260")
        

Here's the dbpr from the IOC (excuse email reformatting):

        > dbpr testrelay, 1
        ASG:                BKPT: 00            COSV: NO_ALARM
        DESC: Test relay    
        DISA: 0             DISP: 0             DISS: NO_ALARM
        DISV: 1             
        DOL:CONSTANT        DTYP: xvme260       EVNT: 0
        FLNK:CONSTANT 0     
        HIGH: 0             MASK: 0             NAME: testrelay
        OMSL: supervisory   
        ONAM: closed        OSV: NO_ALARM       OUT:VME_IO #C0 S0 @ 
        PACT: 0             
        PHAS: 0             PINI: NO            PRIO: LOW           
        PUTF: 0             
        RBV: 0              RPRO: 0             RVAL: 0             
        SCAN: Passive       
        SDIS:CONSTANT       SEVR: INVALID       SIML:CONSTANT
        SIMM: NO            
        SIOL:CONSTANT       STAT: UDF           TPRO: 0
        TSE: 0              
        TSEL:CONSTANT       UDF: 1              VAL: 0
        ZNAM: open          
        ZSV: NO_ALARM       
        
        
As you can see, it's picked up everything from the .db correctly apart
from OUT.

I've also verified my record_init is being called, and it's definitely
erroring due to the invalid card number in OUT. The 'type' field is set
right in OUT, but then all the fields in the 'vmeio' struct are zero.

I'm sure I'm doing something obviously wrong for a newbie, please can
anyone point me at what I should be investigating?

Thanks in advance.

Cheers,

Angus


Replies:
Re: Newbie IOC driver/device support problem Burkhard Kolb

Navigate by Date:
Prev: Driver for Agilent 34970A Andrew Wagner
Next: Re: Newbie IOC driver/device support problem Burkhard Kolb
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Driver for Agilent 34970A Andrew Wagner
Next: Re: Newbie IOC driver/device support problem Burkhard Kolb
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 02 Sep 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·