I’m currently trying to get thermal readings from a Lake Shore 218E using python3. I’m a novice at this so I’m guessing there’s something wrong with my script. Can anyone help me crack this one? Also, there are 8 channels on the monitor, I’m sure I’ve missed something there.
I don’t think that’s the same problem. That person had installed another package called serial alongside pyserial, which caused a namespace collision.
On Windows, permission denied on a COM port typically means the port is in use by another application. Make sure nothing else is trying to talk to your device.
On Linux, the correct way to get access to a serial port is to either join the appropriate group (dialout on Debian-based systems) or setting permissions automatically via udev. Changes made with chmod and chown will be reset when reconnecting the port or rebooting.
I have a Java chart/logger we have been using for about 2 months, but that is not presently running. The monitor is on COM6 and nothing else is using it at the moment.
Does your Java logger run as the same user that it running this script?
Try running the python script as admin (temporarily). If that works, your user account has insufficient permissions to access the port. If it doesn’t, some other application must be hogging the port for itself even if you think nothing is using it.
I also notice that you are using Jupyter Notebooks. It’s possible that the Notebook sandbox is interfering with the serial communication in some way; try running the script outside of Jupyter.