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: streams drivers
From: Mark Rivers <[email protected]>
To: Peter Blanco <[email protected]>, "[email protected]" <[email protected]>
Date: Wed, 22 Jun 2016 15:54:47 +0000
Yes, dbior is getting reports both from StreamDevice and from asynManager.  That is normal.  But the problem is that StreamDevice is not listing the asyn bus interface.

Can you send the complete output when you rebuild StreamDevice 2.7.6?

Mark

________________________________
From: Peter Blanco [[email protected]]
Sent: Wednesday, June 22, 2016 10:46 AM
To: Mark Rivers; [email protected]
Subject: Re: streams drivers

I agree.
Actually I get 2 drivers listed separately :
epics> dbior
Driver: stream
StreamDevice 2.7.6 built Jun 21 2016 10:23:43
registered bus interfaces:
 DebugInterface
 DummyInterface
Driver: drvAsyn
L0 multiDevice:No canBlock:Yes autoConnect:Yes
epics>

According to the doc:
 # asynDriver interface is added automatically
 # if ASYN is defined in your RELEASE file.

I will try to use the 2.6 version, though I may have already done that.
Might it also be an issue with Ubuntu ?

Peter Blanco Test/Software Eng. Kepco Inc.


From: Mark Rivers <[email protected]>
To: Peter Blanco <[email protected]>, "[email protected]" <[email protected]>
Sent: 6/22/2016 10:01 AM
Subject: RE: streams drivers

Your problem can be seen in the output of the dbior command.  This is what I get

Driver: stream
 StreamDevice 2.6.0 built May 11 2016 15:20:49
 registered bus interfaces:
   DebugInterface
   DummyInterface
   AsynDriverInterface

This is what you get:

Driver: stream
StreamDevice 2.7.6 built Jun 21 2016 10:23:43
registered bus interfaces:
 DebugInterface
 DummyInterface

Note that you are missing AsynDriverInterface.  That is the problem.  Now the question is why?

I see you are using a more recent version of StreamDevice than I am.  Perhaps there is something you need to set when you build StreamDevice now to enable the asyn bus interface?

Mark


________________________________
From: Peter Blanco [[email protected]]
Sent: Wednesday, June 22, 2016 8:37 AM
To: Mark Rivers; [email protected]
Subject: Re: streams drivers

here it is :


blanco@kepcoubuntu-Precision-WorkStation-490:~/Desktop/EPICS/DEBUG/Glassman$ grep -i stream dbd/Glassman.dbd
device(aai,INST_IO,devaaiStream,"stream")
device(aao,INST_IO,devaaoStream,"stream")
device(ai,INST_IO,devaiStream,"stream")
device(ao,INST_IO,devaoStream,"stream")
device(bi,INST_IO,devbiStream,"stream")
device(bo,INST_IO,devboStream,"stream")
device(calcout,INST_IO,devcalcoutStream,"stream")
device(longin,INST_IO,devlonginStream,"stream")
device(longout,INST_IO,devlongoutStream,"stream")
device(mbbi,INST_IO,devmbbiStream,"stream")
device(mbbiDirect,INST_IO,devmbbiDirectStream,"stream")
device(mbbo,INST_IO,devmbboStream,"stream")
device(mbboDirect,INST_IO,devmbboDirectStream,"stream")
device(stringin,INST_IO,devstringinStream,"stream")
device(stringout,INST_IO,devstringoutStream,"stream")
device(waveform,INST_IO,devwaveformStream,"stream")
driver(stream)
registrar(streamRegistrar)
variable(streamDebug,int)
blanco@kepcoubuntu-Precision-WorkStation-490:~/Desktop/EPICS/DEBUG/Glassman$



Peter Blanco Test/Software Eng. Kepco Inc.


From: Mark Rivers <[email protected]>
To: Peter Blanco <[email protected]>, "[email protected]" <[email protected]>
Sent: 6/22/2016 9:24 AM
Subject: RE: streams drivers

That looks OK.  Perhaps the problem is your application dbd file.

Send the output of

grep -i stream dbd/Glassman.dbd

I get the following for my application:


corvette:~/devel/CARS/dbd>grep -i stream CARSLinux.dbd
device(aai,INST_IO,devaaiStream,"stream")
device(aao,INST_IO,devaaoStream,"stream")
device(ai,INST_IO,devaiStream,"stream")
device(ao,INST_IO,devaoStream,"stream")
device(bi,INST_IO,devbiStream,"stream")
device(bo,INST_IO,devboStream,"stream")
device(calcout,INST_IO,devcalcoutStream,"stream")
device(longin,INST_IO,devlonginStream,"stream")
device(longout,INST_IO,devlongoutStream,"stream")
device(mbbi,INST_IO,devmbbiStream,"stream")
device(mbbiDirect,INST_IO,devmbbiDirectStream,"stream")
device(mbbo,INST_IO,devmbboStream,"stream")
device(mbboDirect,INST_IO,devmbboDirectStream,"stream")
device(stringin,INST_IO,devstringinStream,"stream")
device(stringout,INST_IO,devstringoutStream,"stream")
device(waveform,INST_IO,devwaveformStream,"stream")
device(scalcout,INST_IO,devscalcoutStream,"stream")
driver(stream)
registrar(streamRegistrar)
variable(streamDebug,int)


________________________________
From: Peter Blanco [[email protected]]
Sent: Wednesday, June 22, 2016 8:17 AM
To: Mark Rivers; [email protected]
Subject: Re: streams drivers


# RELEASE - Location of external support modules
#
# IF YOU MAKE ANY CHANGES to this file you must subsequently
# do a "gnumake rebuild" in this application's top level
# directory.
#
# The build process does not check dependencies against files
# that are outside this application, thus you should do a
# "gnumake rebuild" in the top level directory after EPICS_BASE
# or any other external module pointed to below is rebuilt.
#
# Host- or target-specific settings can be given in files named
#  RELEASE.$(EPICS_HOST_ARCH).Common
#  RELEASE.Common.$(T_A)
#  RELEASE.$(EPICS_HOST_ARCH).$(T_A)
#
# This file should ONLY define paths to other support modules,
# or include statements that pull in similar RELEASE files.
# Build settings that are NOT module paths should appear in a
# CONFIG_SITE file.

TEMPLATE_TOP=$(EPICS_BASE)/templates/makeBaseApp/top

ASYN=/home/blanco/Desktop/EPICS/support/asyn

# If using the sequencer, point SNCSEQ at its top directory:
SNCSEQ=/home/blanco/Desktop/EPICS/support/seq

# EPICS_BASE usually appears last so other apps can override stuff:
EPICS_BASE=/home/blanco/Desktop/EPICS/base

# Set RULES here if you want to take build rules from somewhere
# other than EPICS_BASE:
#RULES=/path/to/epics/support/module/rules/x-y




Peter Blanco Test/Software Eng. Kepco Inc.


From: Mark Rivers <[email protected]>
To: Peter Blanco <[email protected]>, "[email protected]" <[email protected]>
Sent: 6/22/2016 9:11 AM
Subject: RE: streams drivers

It sounds to me like there is a problem with your StreamDevice/configure/RELEASE file for StreamDevice.  Can you please send the contents of that file?

Mark

________________________________
From: [email protected] [[email protected]] on behalf of Peter Blanco [[email protected]]
Sent: Wednesday, June 22, 2016 7:49 AM
To: [email protected]
Subject: streams drivers


Hello,

I'm trying to use the “Glassman” Power Supply driver which uses streams, also tried a couple other streams drivers & also went through the tutorial steps to build one from scratch, all have same problem.

Below is a screen printout that I got when running the "Glassman" driver TestApp .

I believe the problem may be with the StreamDevice itself.
The only place I could build StreamDevice without getting errors was EPICS/base, otherwise it would complain about not finding stuff.
ASYN is defined in my release file for StreamDevice, but is not listed by dbior, as you can see from the printout.  Instead AsynDriver is listed separately,. Is that normal ?

The call to drvAsynIPPortConfigure("L0", "192.168.1.93:5025", 0, 0, 0, 0) works fine, as it puts my device into Remote, but that's it.

The main errors I get for example are:
Cannot find a bus named 'L0' for 'glassmanTest:1:CurrentSetpoint ,
glassmanTest:1:CurrentSetpoint: Can't attach to bus L0

I also typed 'help'so you can see the cmnds available, asyn stuff is there. Do  you see anything that should be there that isn't ?
also, dbl does give me the list of PVs, (not shown)

Does anyone know what may be wrong ? Would greatly appreciate your help.

Thanks, P.Blanco


blanco@kepcoubuntu-Precision-WorkStation-490:~/Desktop/EPICS/DEBUG/Glassman/iocBoot/iocGlassman$ '/home/blanco/Desktop/EPICS/DEBUG/Glassman/iocBoot/iocGlassman/Glassman' st.cmd
#!../../bin/darwin-x86/Glassman
############################################################################
# Set up environment
epicsEnvSet("P", "glassmanTest:")
epicsEnvSet("R", "1:")
epicsEnvSet("GLASSMAN_IP", "192.168.1.93:5025")
< envPaths
epicsEnvSet("ARCH","linux-x86_64")
epicsEnvSet("IOC","iocGlassman")
epicsEnvSet("TOP","/home/blanco/Desktop/EPICS/DEBUG/Glassman")
epicsEnvSet("STREAM","/home/blanco/Desktop/EPICS/base/StreamDevice")
epicsEnvSet("ASYN","/home/blanco/Desktop/EPICS/support/asyn")
epicsEnvSet("EPICS_BASE","/home/blanco/Desktop/EPICS/base")
epicsEnvSet("STREAM_PROTOCOL_PATH", "../../db")
############################################################################
# Register support components
dbLoadDatabase "../../dbd/Glassman.dbd"
Glassman_registerRecordDeviceDriver pdbbase
############################################################################
# Configure hardware
drvAsynIPPortConfigure("L0", "192.168.1.93:5025", 0, 0, 0, 0)
#asynSetOption("L0", -1, "baud", "9600")
#asynSetOption("L0", -1, "bits", "8")
#asynSetOption("L0", -1, "parity", "none")
#asynSetOption("L0", -1, "stop", "1")
#asynSetOption("L0", -1, "clocal", "Y")
#asynSetOption("L0", -1, "crtscts", "N")
#asynSetTraceIOMask("L0",-1,0x2)
#asynSetTraceMask("L0",-1,0x09)
############################################################################
# Load record instances
dbLoadRecords("../../db/devGlassman.db","P=glassmanTest:,R=1:,PORT=L0,Vmax=1000,Imax=300")
dbLoadRecords("../../db/asynRecord.db","P=iocGlassman:,R=asyn,PORT=L0,ADDR=0,OMAX=100,IMAX=100")
############################################################################
# Start EPICS
# cd "${TOP}/iocBoot/${IOC}"
iocInit
Starting iocInit
############################################################################
## EPICS R3.14.12.5 $Date: Tue 2015-03-24 09:57:35 -0500$
## EPICS Base built Jun 21 2016
############################################################################
2016/06/21 10:39:25.764800 _main_ Cannot find a bus named 'L0' for 'glassmanTest:1:CurrentSetpoint'
2016/06/21 10:39:25.764890 _main_ glassmanTest:1:CurrentSetpoint: Can't attach to bus L0 0
2016/06/21 10:39:25.764902 _main_ glassmanTest:1:CurrentSetpoint: Record initialization failed
2016/06/21 10:39:25.764926 _main_ Cannot find a bus named 'L0' for 'glassmanTest:1:VoltageSetpoint'
2016/06/21 10:39:25.764940 _main_ glassmanTest:1:VoltageSetpoint: Can't attach to bus L0 0
2016/06/21 10:39:25.764955 _main_ glassmanTest:1:VoltageSetpoint: Record initialization failed
2016/06/21 10:39:25.764978 _main_ Cannot find a bus named 'L0' for 'glassmanTest:1:Version'
2016/06/21 10:39:25.764995 _main_ glassmanTest:1:Version: Can't attach to bus L0 0
2016/06/21 10:39:25.765009 _main_ glassmanTest:1:Version: Record initialization failed
2016/06/21 10:39:25.765032 _main_ Cannot find a bus named 'L0' for 'glassmanTest:1:StMon_'
2016/06/21 10:39:25.765048 _main_ glassmanTest:1:StMon_: Can't attach to bus L0 0
2016/06/21 10:39:25.765062 _main_ glassmanTest:1:StMon_: Record initialization failed
2016/06/21 10:39:25.765082 _main_ Cannot find a bus named 'L0' for 'glassmanTest:1:OnOff'
2016/06/21 10:39:25.765097 _main_ glassmanTest:1:OnOff: Can't attach to bus L0 0
2016/06/21 10:39:25.765112 _main_ glassmanTest:1:OnOff: Record initialization failed
2016/06/21 10:39:26.267138 _main_ glassmanTest:1:Version: Record not initialised correctly
iocRun: All initialization complete
epicsThreadSleep(2)
2016/06/21 10:39:26.766826 scan1 glassmanTest:1:StMon_: Record not initialised correctly
2016/06/21 10:39:27.766823 scan1 glassmanTest:1:StMon_: Record not initialised correctly
iocPause
iocPause: IOC suspended
epics> help
Type 'help <command>' to see the arguments of <command>.
#               ClockTime_Report
Glassman_registerRecordDeviceDriver             asDumpHash      asInit
asSetFilename   asSetSubstitutions              ascar           asdbdump
asphag          aspmem          asprules        aspuag          astac
asynAutoConnect asynEnable      asynInterposeEosConfig
asynInterposeFlushConfig        asynOctetConnect
asynOctetDisconnect             asynOctetFlush  asynOctetGetInputEos
asynOctetGetOutputEos           asynOctetRead   asynOctetSetInputEos
asynOctetSetOutputEos           asynOctetWrite  asynOctetWriteRead
asynRegisterTimeStampSource     asynReport      asynSetAutoConnectTimeout
asynSetMinTimerPeriod           asynSetOption   asynSetTraceFile
asynSetTraceIOMask              asynSetTraceIOTruncateSize
asynSetTraceInfoMask            asynSetTraceMask                asynShowOption
asynUnregisterTimeStampSource   asynWaitConnect callbackSetQueueSize
casr            cd              coreRelease     date
dbDumpBreaktable                dbDumpDevice    dbDumpDriver    dbDumpField
dbDumpFunction  dbDumpMenu      dbDumpPath      dbDumpRecord
dbDumpRecordType                dbDumpRegistrar dbDumpVariable  dbLoadDatabase
dbLoadRecords   dbLoadTemplate  dbLockShowLocked                dbNotifyDump
dbPvdDump       dbPvdTableSize  dbReportDeviceConfig            dba
dbap            dbb             dbc             dbcar           dbd
dbel            dbgf            dbgrep          dbhcr           dbior
dbl             dbla            dblsr           dbnr            dbp
dbpf            dbpr            dbs             dbstat          dbtgf
dbtpf           dbtpn           dbtr            drvAsynIPPortConfigure
drvAsynIPServerPortConfigure    drvAsynSerialPortConfigure      eltc
epicsEnvSet     epicsEnvShow    epicsMutexShowAll               epicsParamShow
epicsPrtEnvParams               epicsThreadResume
epicsThreadShow epicsThreadShowAll              epicsThreadSleep
errlog          errlogInit      errlogInit2     exit
generalTimeReport               gft             help
installLastResortEventProvider  iocBuild        iocInit         iocLogInit
iocLogShow      iocPause        iocRun          iocshCmd        pft
pwd             registryDeviceSupportFind       registryDriverSupportFind
registryDump    registryFunctionFind            registryRecordTypeFind
scanOnceSetQueueSize            scanpel         scanpiol        scanppl
setIocLogDisable                streamReload    taskwdShow      tpn
var
epics> dbior
Driver: stream
StreamDevice 2.7.6 built Jun 21 2016 10:23:43
registered bus interfaces:
 DebugInterface
 DummyInterface
Driver: drvAsyn
L0 multiDevice:No canBlock:Yes autoConnect:Yes
epics>




Peter Blanco Test/Software Eng. Kepco Inc.


Replies:
Re: streams drivers Peter Blanco
References:
RE: streams drivers Mark Rivers
Re: streams drivers Peter Blanco

Navigate by Date:
Prev: Re: streams drivers Peter Blanco
Next: Re: streams drivers Peter Blanco
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: streams drivers Peter Blanco
Next: Re: streams drivers Peter Blanco
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, 15 Jul 2016 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·