๐งพ Description
This articles shares some details on how to communicate with the scale in RS232 and USB Com interfaces that use the scale in Magellan scanner/scale devices.
๐ ๏ธ Resolution Steps
RS232 Single Cable & USB Com Single Cable:
There are two ways to request weight from the scale, a simple weight request and then a scale monitor request (this is geared toward supporting live weight as it has an extra status byte)
The actual request can vary as it depends on how the STX character and ETX character are programmed in the scanner. The default value in most Magellans is โSโ for the STX and a carriage return for the ETX.
The simple weight request is โS11<CR>โ (<CR> = carriage return)
The scale will only respond if there is a stable weight within in the min and max weight it supports
The response is โS11<weight data><CR>โ
When the scale is set to pounds the scale sends 4 digits. When it is in metric the scale sends 5 digits. In either case the scale does not send a decimal point. The POS is required to interpret where that is. This is the same for the following command as well.
The scale monitor command is โS14<CR>โ
The scale monitor command will also send a response back.
If there is a stable weight the response is โS144<weight data><CR>โ
The extra 4 you see is the status byte telling you a non-zero stable weight is found
Other responses, non-valid weight responses:
โS140<CR>โ = Can't find zero (cycle power or possibly need calibration)
โS141<CR>โ = Scale unstable
โS142<CR>โ = Scale over capacity
โS143<CR>โ = Stable zero weight (our scales do not send a response โS1440000<CR>โ when at zero weight)
โS145<CR>โ = Scale under zero
RS232 Standard:
- SASI Scale
RS-232 Parameters: 9600, Even, 7, 1 - No Flow Control
Weight Request: ASCII W (87 dec., 57hex)
Weight Format: STX, xx.xxx, CR
Responses other than stable weight:
- [STX]?A = In Motion
- [STX]?B = Out of Range
- [STX]?C = Under Zero
- [STX]?D = Outside Zero Capture Range
- [STX]?E = Center of Zero
- ICL Scale
RS-232 Parameters: 2400, Even, 7, 1 - works with ACK/NAK
Weight Request:
1. Enquire (scale status): ASCII ENQ (05dec, 05hex) .
Answers: Error = NAK (21dec, 15hex)
Weight Not Stable = NUL (00dec, 00hex)
Weight OK = ACK (06dec, 06hex)
2. Data Request: ASCII DC1 (17dec, 11hex)
Answers: Error = NAK (21dec, 15hex)
Data = STX, Status, xxxxx, BCC, ETX
Note: There is a timing here to get weight. You must send the ENQ and immediately follow with the DC1. I donโt know the time window but this is how to get successful weight in a comport emulator such as comtest serial. Sending DC1 only will give you a NAK.
