Hi Amien,
Your “range” record is connected to an asyn port driver called “int32”, and it is using asyn address “$(mux)”. What kind of asyn port driver is that, and
who wrote it?
My first suspicion would be a problem with that port driver.
What OS are you running on? When you says the IOC “fails” do you mean that it crashes with a segmentation fault? If so, and if this is Linux, you can debug
with the “gdb” debugger. One way to do that is to get a core dump file and run gdb on it. If you are using the csh or derivative type the following command to enable core dumps:
limit core 10000
If you are running bash type the following command:
ulimit -c 10000
Now when you run your IOC application and it fails you will get a coredump file, core.xxxxx.
Now run gdb on the core file as follows:
gdb path/to/my/IOC/application core.xxxxxx
At the gdb prompt type the following command
backtrace
That will show the stack trace at the point where the application failed. That can usually help figure out what went wrong.
Mark
Hi
I have the following records and the 'calcout' OUT field causes the IOC to fail
record(ao,"$(harp):range") {
field(DTYP, "asynInt32")
field(OUT, "@asyn(int32 $(mux))")
field(FLNK, "$(harp):checkrange")
}
record(ai, "$(harp):trigger") {
field(DTYP, "Soft Channel")
field(SCAN, "Passive")
field(FLNK, "$(harp):checktrig")
}
record(fanout, "$(harp):checktrig") {
#field(SCAN, "Passive")
field(LNK1, "$(harp):triggerOFF PP")
field(LNK2, "$(harp):triggerON PP")
field(SELL, "$(harp):trigger")
field(SELM, "Specified")
}
#####################################################################
record(calcout, "$(harp):triggerOFF") {
field(SCAN, "1 second")
field(DTYP, "Soft Channel")
field(INPA, "$(harp):trigger")
field(INPB, "$(harp):range")
field(OOPT, "On Change")
field(DOPT, "Use CALC")
field(CALC, "(A==0) && (B>10)?(B-10):B")
field(OUT, "$(harp):range PP") # THIS fails and stops the IOC
}
I can change the 'range' from any client though. It's only when I try it from within my db file.
Anyone know what I'm doing wrong ?
thanks
Amien