Sign In |

VBOX HD Lite Serial (RS232) Protocol

Updated on May 13, 2026

115200 Baud, no parity, 8 data bits, 1 stop bit

Message format: 

$VBOXV$,nnnnffff,stttaaaaoooovvhheeezzxxyymmmcc

The $VBOXV$ and commas are in ASCII, the rest are in binary  

FormatBytesDescriptionnnnn, bit mask.
nnnn4Reserved to indicate channel presence (always 0x080003FF on VBOX HD Lite)
ffff4

Status Flags

Bit      Description

4         Logging active

6         Media full

7         Media available

sInteger1

Satellites

Number of satellites

0x00000001
tttInteger3

Time

Number of 10 ms ticks since midnight UTC

0x00000002
aaaaSigned4

Latitude

(MMMM.MMMMM * 100,000)

Signed Integer of Decimal minutes *100,000.

Positive = North, Negative = South

0x00000004
ooooSigned4

Longitude

(MMMMM.MMMMM * 100,000)

Signed Integer of Decimal minutes *100,000.

Positive = West, Negative = East

0x00000008
vvInteger2

Velocity

Velocity in knots * 100

0x00000010
hhInteger2

Heading

Degrees from true north * 100

0x00000020
eeeInteger3

Height

Altitude in metres WGS84 * 100

True signed 24 bit number

0x00000040
zzSigned2

Vertical Velocity

Vertical velocity in m/s * 100

0x00000080
xxSigned2

Long acc (GPS)

Longitudinal acceleration in g * 100

0x00000100
yySigned2

Lat acc (GPS)

Lateral acceleration in g * 100

0x00000200
mmmInteger3

RAM Address

Free space on SD *980991 = Full, 0 = Empty

0x08000000
cc2

Checksum

CRC of message, See Note 1*

*Note 1

CRC Calculation example:

s[n] is a string containing the message

Polynomial:= 4129

CRC:=0;

for Loop:=1 to Length(s) do

begin

Temp:=s[Loop];

CRC:= CRC xor (integer(Temp) * 256);

CRC:= CRC mod 65536;

for i:=7 downto 0 do

begin

if ( (CRC and 32768)=32768) then

begin

CRC:= CRC *2 ;

CRC:= CRC xor Polynomial;

end

else

begin

CRC:= CRC *2 ;

end;

CRC:=CRC mod 65536;

end;

end;

result:=CRC;