PC Communication Protocol
This scale uses an escape protocol for communicating with a PC and over the USB and serial port 2
serial port 1 : connecting to the printer . In an Escape protocol, the escape (<esc> or ASCII 27) is
used to indicate that there is a command, and not data, following.
Two scenarios have been defined: Scale initiated communication and PC initiated communication.
The following is a table of what can be sent across the communications line.
Scale Initiated
Send Single reading
Send
continuous
reading
Send bulk readings
Send Diagnostics
The following is a complete list of ESC characters that will be used:
Name
ESC
character
Reading
R
ID
I
Weight
W
Height
H
TARE
T
BMI
B
E
End Of
Packet(EOP)
N
Units
Power Status
J
On
O
Off
F
DateTime
D
Update
U
Request
Q
1
We used descriptive characters to show the type of the parameters. These are: c=Character, n=Numeric. The
number of parameters indicates the set number of placeholders for these characters and numbers (i.e. Zccc
indicates that a value containing 3 characters will be given.)
ESC Value
R
R
R
A
ESC value with
parameters
R
This will tell the PC that the scale is sending a reading.
Immediately following this will be the value that is sent (i.e.
<ESC>R<ESC>I1234567890<ESC>W200.00<ESC>Nm<ESC>
...<ESC>E
1
Icccccccccc
This is the patient ID. (10 chars)
0 F
Wnnn.nn
This is the patient weight (i.e. W200.05 means 200.5 )
Hnnn.nn
This is the patient height
Tnnn.nn
This is the TARE weight that the scale is taring out
Bnnn.n
This is the patient's BMI
E
This indicates that the end of the command/datapacket has
been reached
Nc
This indicates in which unit the values have been taken
(m=metric, c=constitutional)
J
Requests the power status of the scale. The response to this
will be either a <ESC>O<ESC>E or <ESC>F<ESC>E or
<ESC>L<ESC>E
O
When prompted for a power status, this will indicate that the
scale is turned on
F
When prompted for a power status, this will indicate that the
scale is turned off (or is in low power/sleep mode) When in Low
Power mode, the scale will return L
Dnnnnnnnnnn
This is a time and date string (MMDDYYYYhhmmss)
nn
Uc
This command has a parameter c, which will help doing the
update of the firmware. First of all the PC will initiate the update
by sending an Ur (Request for update). The scale will reply with
Uc (Clear to send) or Ue (error, don't send). Then the scale will
send U127K or U127B (the length of the data that is following in
Kbytes or Bytes) and send the data.
Qccc
This is a request to receive scale global values such as
brightness of LCD, auto hold time, keypad beep volume, etc.
(See Table A) (i.e. <ESC>QAHT will return the Auto Hold Time
PC Initiated
Update Firmware
Request current
values/settings
Diagnostics
Send scale control
messages
Request stored data
Set stored data
Delete stored data
Description
30
ESC Value
U
Q
A
C
R
S
X