Twilight-Logic / AR488

AR488 Arduino GPIB Interface
GNU General Public License v3.0
215 stars 61 forks source link

++spoll compatibility problem #32

Open dg8saq opened 2 years ago

dg8saq commented 2 years ago

Hi,

I think I have detected an incompatibility between the AR488 and the Prologix adapter that seems to cause an issue with the KE5FX VNA toolbox. The issue is with the ++spoll command. The KE5FX software issues it with an address, i.e. ++spoll 16, where 16 is the primary GPIB address of the polled instrument.

Here is the command sequence that works successful with the Prologix adapter in combination with the HP8510B VNA:

++addr 16 ++spoll 1 ++spoll 16 1

For better visibility I have indented the adapter responses. So far so good.

Now, here is the same sequence using the AR488:

++ver real AR488 GPIB controller, ver. 0.51.09, 20/06/2022 ++addr 16 ++spoll 1 ++spoll 16 => no response from the AR488 which causes the KE5FX VNA tool to lock up.

Have I misunderstood something or can there be done something about this problem?

Thanks and best regards, Tom DG8SAQ

Twilight-Logic commented 2 years ago

Thank you for the report. I will investigate.

Twilight-Logic commented 2 years ago

There was a bug in the spoll_h function. The attached should now work. Please let me know whether it works with your KE5FX VNA tool setup. If it does then I will publish an updated release.

AR488-test.zip

dg8saq commented 2 years ago

Hi,

the spoll problem seems to be solved, many thanks! The KE5FX tool to retrieve s-parameters still doesn't work properly, though. There seems to be another issue. Here is what the tool tries to do:

++ver Prologix GPIB-USB Controller version 6.100 ++auto 0 ++eos 0 ++mode 1 ++addr 16 ++eoi 1 ++read_tmo_ms 3000 DEBUON; OUTPIDEN ++read 10 HP8510B.04.00: MAY 2, 1988 HOLD; FORM4;STAR;OUTPACTI; ++read 10 4.500000000000000E+07STOP;OUTPACTI; ++read 10 2.650000000000000E+10POIN;OUTPACTI; ++read 10 8.010000000000000E+02CLES; S11;FORM4;SING; ++spoll 16 0 ++spoll 16 0 ++spoll 16 0 ++spoll 16 0 ++spoll 16 0 ++spoll 16 0 ++spoll 16 0 ++spoll 16 0 ++spoll 16 0 ++spoll 16 16 CLES; OUTPDATA; ++read 10 -1.713562000000000E-02, 0.939465000000000E-02++read 10 -0.598717000000000E-02, 1.624870000000000E-02++read 10

...here it gets stuck, no more response. It should read much more data lines.

When I repeat manually i.e. slowly, there is no such problem. Also auto-read seems much more efficient to obtain the data. So, I don't really think there is a problem with the AR488 firmware

Best regards, Tom

Twilight-Logic commented 2 years ago

Thank you for reporting back. I have pushed an update to the repository. I am not sure regarding your other issue. Will perhaps need to have a further look at that. Maybe the auto read loop is getting ahead of the instrument before it is ready to send the next reading.

BTW, does the output data problem happen with the Prologix as well, or just the AR488?