Hi Craig,
thanks for you posting your issue!
The SweepMe! 4200-SCS driver has some kind of special status. To establish a remote control via Ethernet, we decided to use the LPTlib approach. For that reason, we have a written a Server application that translates request via Ethernet into LPTlib calls. If you have used SweepMe! with 4200-SCS, I am sure that you already successfully installed this server application. For talking with the Server Application, we also created a library called pylpltib that you already linked in your issue. This library is also used by our SweepMe! driver for the Keithley 4200-SCS.
You now have two options:
-
You can either just use the pylptlib directly without using pysweepme and the SweepMe! driver by adding this library to your project and follow the examples in pylptlib
https://github.com/SweepMe/pylptlib-4200SCS/tree/main/examples -
It should be also possible, to load the SweepMe! driver for the 4200-SCS with pysweepme and handover the port being the IP address (or localhost) when running the python script on the 4200-SCS. We did not test this, but it should basically be supported as well. Once you have created a device instance of the driver with pysweepme.get_driver(…) e.g. as ‘my_device’ and also called the ‘connect’ method of the driver, it should be possible to call function like
my_device.lpt.initialize()for example.
The object lpt gives you access to the underlying pylptlib library and lpt is
defined during ‘connect’ method
https://github.com/SweepMe/instrument-
drivers/blob/b9158dd2c80c86d4778c57fb3864600d228dd4be/src/LCRmeter- Keithley_4200-SCS/main.py#L199which is why it is important to call ‘connect’ after creating the driver instance to be ready to call the lpt commands.
If you have any further questions, feel free to add them here to this issue. If you need any professional support, we can also help you by testing and setting up a working example for you.
Thanks and best,
Axel