EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  <19971998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  <19971998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: A Problem Initializing drvGpib with the NI-1014 Module
From: "J. Frederick Bartlett ([email protected])" <[email protected]>
To: [email protected]
Cc: [email protected]
Date: Wed, 10 Dec 1997 15:15:34 -0600 (CST)
  This seems to be the month for GPIB problems. I am attempting to
install a National Instruments GPIB-1014 controller in an EPICS IOP
running on a Motorola MVME-162 processor and have set the ibDebug
variable in the drvGpib.c module to 1 to enable diagnostic
messages. Part way through the initialization of the driver (iocInit
phase) the controller apparently enters a state in which it no longer
responds to read or write transactions, over the VMEbus, to any of its
registers (see the Access Fault dump below). A reboot command to the
VxWorks shell does not clear the lock-up of the GPIB controller; only
the VMEbus SYSRESET* action (or a power-down/power-up cycle) seems to
do that.

  I had a few unsatisfying words with one of the tech-support people
at National Instruments who informed me that any condition in which
the controller is waiting for a response on the bus can cause this
behavior. Apparently the concept of time-out is too exotic and the
term robustness has not yet entered their vocabulary. I now understand
John Winans' marginal comment in the driver code about launching a
campaign against the use of National Instruments hardware.

  Before I launch into a detailed reading of the driver code in an
attempt to solve this problem, I thought that someone else in the
EPICS collaboration might have encountered a similar problem and found
a simple solution. I have included below the print-out from the IOP's
console in the hope that it will help to localize the problem.

						Fritz Bartlett
						Fermilab
-----Included text

VxWorks login: vxworks
Password: 

-> <~bartlett/epics/test/bin/mv162/st.gpib
# Example vxWorks startup file
#Following must be added for many board support packages
cd "/home/bartlett/epics/test/bin/mv162"
value = 0 = 0x0
ld < iocCore
value = 3196348 = 0x30c5bc
ld < seq
value = 3859152 = 0x3ae2d0 = seq_bss + 0x1c
ld < gpibSupport
value = 3429896 = 0x345608 = gpibSupport_bss + 0x2bc

dbLoadDatabase("../../dbd/gpib.dbd")
value = 0 = 0x0
dbLoadRecords("../../gpib/db/dbExample.db","user=bartlett")
value = 0 = 0x0
iocLogDisable=1
_iocLogDisable = 0x30523c: value = 1 = 0x1
iocInit
############################################################################
###  @(#)EPICS IOC CORE
###  @(#)Version R3.13.0.beta4 $Date: 1996/11/01 15:37:48 $
############################################################################
0x3b5eb8 (tShell): Gpib NI1014 driver initializing
0x3b5eb8 (tShell): short_base            0xFFFF0000
0x3b5eb8 (tShell): NIGPIB_SHORT_OFF        0x00005000
0x3b5eb8 (tShell): NIGPIB_NUM_LINKS        0x00000004
0x3b5eb8 (tShell): GPIB card found at address 0xFFFF5000
0x3b5eb8 (tShell): ibLinkInit(00318A18): entered, type 5, link 0, bug -1
0x3b5eb8 (tShell): Probing of address 0xFFFF5200 failed
0x3b5eb8 (tShell): Probing of address 0xFFFF5400 failed
0x3b5eb8 (tShell): Probing of address 0xFFFF5600 failed
0x3b5eb8 (tShell): ibLinkStart(00318A18): entered for linkType 5, link 0
0x3b5eb8 (tShell): niGpibIoctl(0, 4, -1, 00000000)
0x3b5eb8 (tShell): niGpibIoctl(0, 5, 1, 00000000)
0x3b5eb8 (tShell): writeIbCmd(00318A18, 00344B2C, 1)
0x3b5eb8 (tShell): niGpibCmd(0, 0x00344B2C, 1): command string ><
0x3b5eb8 (tShell): readIb(00318A18, 1, 0x003B5B10, 3)
0x3b5eb8 (tShell): 
Access Fault
Program Counter: 0x0033e686
Status Register: 0x3000
Access Address : 0xffff5115
Special Status : 0x00a5

  8510 _vxTaskEntry   +10 : writeIbCmd(00318A18, 003B5ABA, 4)
_shell (1, 0, 0, 0, 0, 0, 0, 0, 0, 0)
 30e38 _shell         +138: 0x3b5eb8 (tShell): 30e56 ([1, 0, 0, 30c5c, 0])
 30fd8 _shell         +2d8: _execute (3b5de6)
 310c0 _execute       +70 : 30e56 (0)
 30fd8 niGpibCmd(0, 0x003B5ABA, 4): command string >_?A <
0x3b5eb8 (tShell): _shell         +2d8: _execute (3b5d22)
 310fc _execute       +ac : _yyparse ([0, 0, a, 3b5d22, niGpibRead(0, 0x003B5B10, 3, 5)
3b5de6])
 35366 _yyparse       +514: 33d30 (3a9ad4, 3a9af4)
 33e3c _yystart       +758: _iocInit (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
2d17f4 _iocInit       +13c: 2d1a10 ([&_yyval, &_iocInit, 3b5c12, 0, 5f696e69])
2d1a9c _iocInit       +3e4: _initGpib ([a, 3b5bd8, 3a9ad4, 2df407, &_drvGpib])
33d992 _initGpib      +496: 33eb4e (318a18)
33ebfa _niRdLong      +2e6: 33f0a8 (318a18, 1, 0, 5)
33f10e _niRdLong      +7fa: 33f5ac (318a18, 1, 3b5b10, 3, 5)
33f5c8 _srqPollInhibit+36c: _readIbEos ([318a18, 1, 3b5b10, 3, 5])
33f680 _readIbEos     +b2 : 33dfa6 (0, 3b5b10, 3, 5)
33dff6 _initGpib      +afa: 33e232 (0, 0, 3b5b10, 3, 5)
shell restarted.


Navigate by Date:
Prev: Re: Proposed changes in ai & ao records Benjamin Franksen
Next: Allen Bradley 6008-SV scanner : Bad prom Marty Kraimer
Index: 1994  1995  1996  <19971998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Proposed changes in ai & ao records Benjamin Franksen
Next: Allen Bradley 6008-SV scanner : Bad prom Marty Kraimer
Index: 1994  1995  1996  <19971998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 10 Aug 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·