You should enable ASYN_TRACEIO_DRIVER for the IDEA port. That will show the actual messages sent and received.
Mark
Sent from my iPhone
On Mar 17, 2022, at 9:16 AM, TONY YU <tonyyucom at gmail.com> wrote:
Hello Mark,
It was working last month as least. Then there was a disaster with the server computer and I have to setup the server again with the database and protocol files. FYI, the broken computer was running with R 3.14.12.4 and the new computer is running with
R 3.14.12.8.
Tony
Was this working previously?
It looks like the hardware is communicating OK but it is returning error codes.
Mark
Sent from my iPhone
> On Mar 17, 2022, at 8:25 AM, TONY YU via Tech-talk <tech-talk at aps.anl.gov> wrote:
>
> Hello,
>
> I encountered an unsolvable error with one of my equipment. Below is the error and the corresponding st.cmd, db and proto files. I would like to know what causes this error message. Thanks in advance.
>
> error:
> IDEA ImpMik:IDEA:Status: Input "#31 hv error detect" mismatch after 4 bytes
> IDEA ImpMik:IDEA:Status: got "hv error detect" where "ok" was expected
> IDEA ImpMik:IDEA:SetFilterOn: Input "#2E impossible, erro" mismatch after 1 byte
> IDEA ImpMik:IDEA:SetFilterOn: got "2E impossible, error" where "0" was expected
>
> st.cmd:
> drvAsynIPPortConfigure("IDEA", "terminal.chamber6:10002")
> asynOctetSetInputEos("IDEA",0,"\r\n")
> asynOctetSetOutputEos("IDEA",0,"\r\n")
> dbLoadRecords("${TOP}/db/Impulsmikroskop/IDEA.db", "P=ImpMik, NAME=IDEA, interface=IDEA")
>
> IDEA.db:
> record(bi, "$(P):$(NAME):Status") {
> field(PINI, "YES")
> field(DTYP, "stream")
> field(INP, "@IDEA.proto Get_Status $(interface)")
> field(ZNAM, "ERR")
> field(ONAM, "Ok")
> }
>
> record(bo, "$(P):$(NAME):SetFilterOn") {
> field(SCAN, "2 second")
> field(DTYP, "stream")
> field(FLNK, "$(P):$(NAME):SetEpass")
> field(OUT, "@IDEA.proto Set_FilterOn $(interface)")
> field(ZNAM, "Off")
> field(ONAM, "On")
> }
>
> IDEA.proto:
> terminator = CR LF;
> pollperiod = 10;
> replytimeout = 1000;
> readtimeout = 5000;
>
> #
> # Get_Status
> #
> Get_Status {
> out "Get status";
> in "#%2i ok";
> out "ver";
> in "EFC_for_NanoESCA V01.03 B0115";
> out "Set mode remote";
> in "#04 remote mode";
> }
>
>
> #
> # Set_FilterOn
> # range: 1, 10
> #
> Set_FilterOn {
> out "Set filter %{off|on}";
> in "#0%*c filter %{off|on}";
> @init {
> out "Get filter";
> in "#0%*c filter %{off|on}";
> }
> }
>
> Best,
> Tony
|