Hello,
I had to simulate a large number of instruments on a single PC to try to support a customer's software. They used PyVisa, so I remapped their configs from an ::INSTR (LXI) to simple sockets, and wrote my own simulator (opened a pile of ports, just need to handle a few queries really).
All ran fine, including *OPC?, queries about voltage/current settings, etc. etc., until I hit upon *ESR? I have no idea why the PyVisa driver times out on the query. I checked with Wireshark, checked read/write terminations, everything looks good. I tried sending "1", "+1", etc. from examples I saw, but the query just keeps timing out.
I'm sending the reply to the correct port, and as mentioned, the other commands and instruments I simulated are working.
Is there a way to debug this in the PyVisa driver/package/whatever? I'm using Python 2.7 and PyVisa for that version, and no other issues. In fact, I can even use the visa shell and talk to my simulator on the other machine and see the +1 being returned. But not from inside a script. Is this buried in the resource manager somewhere (the socket handling, etc.?).
Any help appreciated!
Avner Ginsburg