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
End Of
E
Packet(EOP)
Units
N
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
PC Initiated
R
Update Firmware
R
Request current
values/settings
R
Diagnostics
A
Send scale control
messages
Request stored data
Set stored data
Delete stored data
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>...<E
SC>E
This is the patient ID. (10 chars)
Icccccccc
1
cc
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
This is the patient's BMI
Bnnn.n
This indicates that the end of the command/datapacket has been
E
reached
This indicates in which unit the values have been taken (m=metric,
Nc
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
Dnnnnnnn
This is a time and date string (MMDDYYYYhhmmss)
nnnnn
This command has a parameter c, which will help doing the update
Uc
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 of 10 seconds like this:
<ESC>PAHT=10<ESC>E )
ESC Value
U
Q
A
C
R
S
X
Description
32