I am not sure what the problem is, but here are some ways to find out:
- Load the medm screen for the asyn record (asynRecord.adl). You can
then interactively send commands to the port and observe the response
and any error status.
- The asyn record has an error string field (.ERRS) which may contain
useful information.
- Execute the following iocsh command to get all the record field
values:
dbpr LS450PS:asyn 5
- Enable all debugging on that asyn port with the following iocsh
commands
asynSetTraceIOMask sockserv 0 0x2
asynSetTraceMask sockserv 0 0xff
Then do your caput again or type in the asyn records .AOUT text widget
and see if there is useful information in the output.
Mark
-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of William Lu
Sent: Tuesday, June 15, 2010 2:40 PM
To: [email protected]
Subject: Channel Access Writes Failed on Asyn Record Writable Fields
I am having problems with channel access writes on asyn record's
writable fields such AOUT and PORT. I created the following asyn tcp/ip
port and the asyn record:
In a startup iocsh script:
drvAsynIPPortConfigure("sockserv","127.0.0.1:9099",0,0,0)
The asyn record:
record(asyn, LS450PS:asyn) {
field(DTYP, "asynRecordDevice")
field(PORT, "sockserv")
field(ADDR,"0")
}
After the record has been loaded to the ioc, I cannot write the AOUT or
PORT fields of the record through channel access. When I caput on those
fields, I got the error messages like the following:
>caput LS450PS:asyn.AOUT "abc"
Old : LS450PS:asyn.AOUT
CA.Client.Diagnostic..............................................
Message: "Could not perform a database value put for that channel"
Severity: "Warning" Context: "detected by: devl17.acc.jlab.org:5064
for: LS450PS:asyn - with request chan=LS450PS:asyn.AOUT op=1 data
type=DBR_STRING count=1"
..................................................................
New : LS450PS:asyn.AOUT
What is the problem? Any help would be gratefully appreciated.
William Lu
Jefferson Lab