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
<1997>
1998
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
<1997>
1998
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
|