VBOX 4 Serial (RS232) Protocol

Updated on Mar 4, 2026

 The following information relates to VBOX 4 products.

The VBOX units output the serial protocol through the RS232/CAN port, the USB port and via Bluetooth.

The RS232 output protocol is 115200 Baud, no parity, 8 data bits, 1 stop bit.

Note: The USB and Bluetooth options can output the messages in the full 100 Hz bandwidth, while the RS232 port has limitationsDue to the max bandwidth being 115200, live data transfer of all channels is limited to 20 Hz. 50 Hz should only be used to transmit standard GPS channels and Solution Type, and 100 Hz can only transmit Sats, Time, Speed, and Trigger Event Time. Logging too many channels at too high a rate will cause drop-outs and loss of data. For maximum accuracy, you should log tests performed at a GPS sample rate of more than 20 Hz to a compact flash card and do a post-process analysis. 

Message format: 

$VBOX4$_nnnn0000_stttaaaaoooovvhheeezzyyxxffffjjjj1111222233334444lpddddddqqrrii77778888kkmmmgggg559966cc

The $VBOX4$ and commas are in ASCII, the rest is in binary. 

The byte ordering format is big-endian (Motorola). 

Although not all of the channels listed below are present in the serial stream by default (you can select them in the VBOX Setup software), the following table shows the order in which they will appear in the data stream.

Click on the highlighted descriptions to see the specifications for each channel. 

Enter first 4 bytes (nnnn) as 8 characters of hexadecimal:  

Part of StringTypeBytesDescriptionnnnn,
bit mask
nnnn4Reserved to indicate channel presence
00004Reserved
sInteger1SatellitesNumerical value0x00000001
tttInteger3UTCTimeTime0x00000002
aaaaSigned4Latitude(MMMM.MMMMM * 100_000)Signed Integer of Decimal Minutes *100_000.Positive = North, Negative = South0x00000004
ooooSigned4Longitude(MMMMM.MMMMM * 100_000)Signed Integer of Decimal Minutes *100_000.Positive = West, Negative = East0x00000008
vvInteger2SpeedKnots * 1000x00000010
hhInteger2HeadingDegrees from True North * 1000x00000020
eeeInteger3HeightAltitude in metres WGS84 * 100True signed 24 bit number0x00000040
zzSigned2Vertical Velocitym/s * 1000x00000080
yySigned2Lateral Acceleration (GPS)g * 1000x00000100
xxSigned2Longitudinal Acceleration (GPS)g * 1000x00000200
ffffInteger4Brake Distancem *128000x00000400
jjjjInteger4DistanceDistance from power on, m *128000x00000800
1111Float4Internal analogue ch10x00001000
2222Float4Internal analogue ch20x00002000
3333Float4Internal analogue ch30x00004000
4444Float4Internal analogue ch40x00008000
l1Reserved0x00010000
p1Reserved0x00020000
dd2Reserved0x00040000
dd2Reserved0x00080000
dd2Reserved0x00100000
qqInteger2VBOX Serial Number0x00200000
rrInteger2Kalman Filter StatusNumerical value0x00400000
iiInteger2Solution TypeNumerical value0x00800000
7777Integer4Velocity Quality0x01000000
88884Reserved0x02000000
kk2Reserved0x04000000
mmm3Reserved0x08000000
ggggFloat4Event time0x10000000
552Reserved0x20000000
992Reserved0x40000000
662Reserved0x80000000
cc2Checksum

This is a message that contains additional channels to the serial message. Information in this message will provide you with an exact position in Longitude and Latitude. 

If your VBOX 4 unit has RTK enabled and configured for 2cm DGPS (CMR, RTCM V3, NTRIP), and you have set either the Latitude or Longitude channel to be sent over serial, the NEWPOS message will be added to the serial string and the data stream will look like the following example:

$VBOX4$_nnnn0000_stttaaaaoooovvhheeezzmmmggggcc$NEWPOS_aaaaaaaabbbbbbbbcc

$NEWPOS,aaaaaaaabbbbbbbbcc is the additional exact Longitude and Latitude information to the serial data stream.

Part of stringBytesDescription
$NEWPOS7String header
,1comma separator
aaaaaaaa8Longitude
64-bit float. little-endian (Intel).
The least-significant byte is stored first.
bbbbbbbb8Latitude
64-bit float.
cc2Checksum

This is a message that contains additional channels to the serial message. Information in this message can be linked to anything that is not covered in standard serial, such as modules, ADAS channels, etc. This information is either configured in the setup software or requested by VBOX Test Suite.

You can use VBOX Setup to configure additional channels, by adding modules, CAN channels, and ADAS systems and by ticking the advanced box and selecting send to serial.

When any of these channels are selected to be present in the Serial data stream the data stream will look like the following example:

$VBOX4$_nnnn0000_stttaaaaoooovvhheeezzmmmggggcc$NEWCAN_####_1111.....wwwwzz

$NEWCAN_####_1111.....wwwwzz  is the additional CAN channel information to the serial data stream.

Note: The order in which the data will come across depends upon the order in which you select the channels from the set-up screen. For example, if the first channel you choose to log is FIM Channel 1 then the first 4 bytes will contain the data from the FIM. If the second channel was ADC02 Channel 4 then the next 4 bytes will contain data for the ADC02. If you then remove (choose not to log) FIM Channel 1 and select ADC02 Channel 1 then the first 4 bytes will now contain the data for ADC02 Channel 1.

The data transmitted for each channel is in a standard IEEE 32-bit Float format.

The byte ordering format is big-endian (Motorola). 

Part of stringBytesDescription####,
bit mask
$NEWCAN7String header
####4Reserved to indicate channel presence
,1comma separator
11114Additional Channel 10x00000001
22224Additional Channel 20x00000002
33334Additional Channel 30x00000004
44444Additional Channel 40x00000008
55554Additional Channel 50x00000010
66664Additional Channel 60x00000020
77774Additional Channel 70x00000040
88884Additional Channel 80x00000080
99994Additional Channel 90x00000100
aaaa4Additional Channel 100x00000200
bbbb4Additional Channel 110x00000400
cccc4Additional Channel 120x00000800
dddd4Additional Channel 130x00001000
eeee4Additional Channel 140x00002000
ffff4Additional channel 150x00004000
gggg4Additional Channel 160x00008000
hhhh4Additional Channel 170x00010000
iiii4Additional Channel 180x00020000
jjjj4Additional Channel 190x00040000
kkkk4Additional Channel 200x00080000
llll4Additional Channel 210x00100000
mmmm4Additional Channel 220x00200000
nnnn4Additional Channel 230x00400000
oooo4Additional Channel 240x00800000
pppp4Additional Channel 250x01000000
qqqq4Additional Channel 260x02000000
rrrr4Additional Channel 270x04000000
ssss4Additional Channel 280x08000000
tttt4Additional Channel 290x10000000
uuuu4Additional Channel 300x20000000
vvvv4Additional Channel 310x40000000
wwww4Additional Channel 320x80000000
zz2Checksum