janelia-pypi / mettler_toledo_device_python

Other
31 stars 14 forks source link

No_read_data recieved with Mettler-Toledo UC3 all-in-one scale #6

Open Langoor2 opened 2 years ago

Langoor2 commented 2 years ago

Hello!

I'm trying to see if this project works with my Mettler Toledo UC3 all-in-one scale. I currently installed Linux (debian) on it and we have figured out the loadcell is attached to /dev/ttyS1. Autodetect isn't working so I manually specified the serial port, however I am running into some errors I created the following test file to see if I can communicate with the loadcell, but run into this error screenshot We also ran Portmon on the stock Windows OS, which shows the serial connection as having a WordLenght of 7 and even parity, which doesn't match with the serial configuration listed in the readme.

peterpolidoro commented 2 years ago

Hi! I did a quick search on Mettler-Toledo UC3 and it appears that it is a product line with several models, so I am not sure which specific model you are using. Is it one of the older scales with a serial interface or a newer model with a USB interface? If it has a serial interface, does the manual specify the serial interface parameters that you need to use to communicate with it? Can you try modifying the serial configuration in this library to use the parameters specified in the manual to see if that works?

It sounds like I need to make some serious upgrades to this library to make it work with newer scales.

Langoor2 commented 2 years ago

The scale is a UC3-GTT-A, the load cell should connect over rs232 to the embedded computer. I pulled the serial parameters in use from the stock windows OS with the supermarket application running (even parity, 7 data bits) could you point me in the direction of the file where I need to make these changes?

peterpolidoro commented 2 years ago

What operating system are you using on your embedded computer, GNU/Linux?

When you instantiate the MettlerToledoDevice, you can pass pySerial keyword parameters. You can find the list of those parameters here: pySerial API

Maybe try something like:

from mettler_toledo_device import MettlerToledoDevice import serial dev = MettlerToledoDevice(port='/dev/ttyUSB0',bytesize=serial.SEVENBITS,parity=serial.PARITY_EVEN)

Langoor2 commented 2 years ago

I run Debian GNU/Linux on my scale, I passed the parameters I got from PortMon on the stock OS to the device, but I still have the no read_data received error. photo_2021-10-31_21-59-51 image

peterpolidoro commented 2 years ago

Are you able to communicate with the scale using a serial terminal? Something like CuteCom?