RS-232c Digi scale is not sending any data
I connected a Digi DS-781 digital scale to a PC through a Trendnet TU-S9 serial-to-usb converter cable.
Device manager finds the COM port just fine. Next I'm trying to use node-serialport to communicate with it (main goal is to get the values displayed on the scales screen).
const port = new serialport('COM3', {
baudRate: 9600,
parity: 'even',
stopBits: 1,
dataBits: 8
});
port.on('open', () => {
console.log('Port opened');
});
port.on('data', (data) => {
console.log(`Got data: ${data.toString()}`);
});
port.on('error', (err) => {
console.log(`Port error: ${err.message}`);
});
port.on('close', () => {
console.log('Port closed');
});
The scale is setup accordingly so the serialport settings shown above match with the scale.
Then I run my node application. Connection gets established successfully, everything seems to work, but when I put something on the scale there's no output on the 'data' callback. The scale seems to be sending nothing. My expectation is that as soon as I put something on the scale it should transmit the data over to my node application (the scale is in "Standard stream" mode).
Im starting to wonder there's another step I have to do before the scale sends me anything (although the documentation for the scale shows otherwise which can be found here https://www.marsden-weighing.co.uk/index.php/digi-ds-781-user-manual.html)
Solution 1:
The settings on my scale were off. The scale was not in "Continuous streaming" mode, but in some invalid mode.
On this specific scale SPEC 10 has to be "0001" and SPEC 11 (4'th bit of SPEC 10, that's what confused me in the specifications) "0000". This put the scale into streaming mode and it's now sending data continuously.