Views:


Summarized by AI

๐Ÿงพ 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.

Add a comment