Protobuf Documentation
The Protobuf messages used by SentiSystems and their definitions can be found here:
https://gitlab.senti.no/senti/senti-proto
SentiSystems Message Description
Each Protobuf message output from SentiSystems will be prepended with a synchronization byte, the incoming protobuf message ID, and the length (in bytes) of the Protobuf packet.
That is:
<SYNC_ID><Header.MessageID><message_length><Protobuf message>
The SYNC_ID
is set to 0x42
.
All packets start with a header
Field |
Type |
Label |
Description |
message_id |
SentiMessageID |
|
|
source |
uint32 |
|
source id of the message (currently used for the port id on SentiBoard) |
counter |
uint32 |
|
Counter of messages of type=message_id sent |
tov_ns |
uint64 |
|
SentiBoard Time-of-Validity converted to nanoseconds |
toa_ns |
uint64 |
|
SentiBoard Time-of-Arrival converted to nanoseconds |
utc_s |
uint32 |
|
UTC timestamp |
utc_ns |
int32 |
|
UTC timestamp ns. Can be negative uBlox style |
SentiIMUMsg
Generic IMU Message
Field |
Type |
Label |
Description |
header |
Header |
|
|
repeated[3] ang_vel |
double |
|
angular velocity in [x,y,z] direction [rad/s] |
repeated [3] lin_acc |
double |
|
linear acceleration in [x,y,z] direction [m/s²] |
is_delta |
bool |
|
Are the acceleration/angular velocity values delta values or immediate measurements |
temperature |
double |
|
temperature in degrees [C] |
SentiIMUMagMsg
Generic IMU Message, including magnetometer
Field |
Type |
Label |
Description |
header |
Header |
|
|
repeated[3] ang_vel |
double |
|
angular velocity in [x,y,z] direction [rad/s] |
repeated [3] lin_acc |
double |
|
linear acceleration in [x,y,z] direction [m/s²] |
is_delta |
bool |
|
Are the acceleration/angular velocity values delta values or immediate measurements |
temperature |
double |
|
temperature in degrees [C] |
repeated[3] mag |
double |
|
magnetic field in [x,y,z] directions [Gauss] |
SentiIMUMagOrientationMsg
Generic IMU Message, including magnetometer and orientation measurements
Field |
Type |
Label |
Description |
header |
Header |
|
|
repeated[3] ang_vel |
double |
|
angular velocity in [x,y,z] direction [rad/s] |
repeated [3] lin_acc |
double |
|
linear acceleration in [x,y,z] direction [m/s²] |
is_delta |
bool |
|
Are the acceleration/angular velocity values delta values or immediate measurements |
temperature |
double |
|
temperature in degrees [C] |
repeated[3] mag |
double |
|
magnetic field in [x,y,z] directions [Gauss] |
repeated [4] orientation |
double |
|
Orientation quaternion [x,y,z,w] |
repeated [9] covariance |
double |
|
Flattened 3x3 covariance matrix in x,y,z |
SentiGNSSPosLLH
Field |
Type |
Label |
Description |
header |
Header |
|
|
tow |
uint32 |
|
time of week |
repeated[3] lon_lat_h |
double |
|
position in Longitude, Latitude, Height [m] |
h_acc |
double |
|
horizontal accuracy estimate [m] |
v_acc |
double |
|
vertical accuracy estimate [m] |
repeated [9] covariance |
double |
|
flattened 3x3 covariance matrix in x,y,z |
fix |
SentiFixType |
|
fix type of the receiver |
SentiGNSSPosECEF
Field |
Type |
Label |
Description |
header |
Header |
|
|
tow |
uint32 |
|
time of week |
repeated[3] xyz |
double |
|
position [X,Y,Z] in ECEF frame [m] |
acc |
double |
|
accuracy estimate [m] |
repeated [9] covariance |
double |
|
flattened 3x3 covariance matrix in x,y,z |
fix |
SentiFixType |
|
fix type of the receiver |
SentiGNSSVelNED
Field |
Type |
Label |
Description |
header |
Header |
|
|
tow |
uint32 |
|
time of week |
repeated[3] vel_ned |
double |
|
Velocity in [N,E,D] [m/s] |
repeated [9] covariance |
double |
|
flattened 3x3 covariance matrix in [N,E,D] |
fix |
SentiFixType |
|
fix type of the receiver |
SentiGNSSVelECEF
Field |
Type |
Label |
Description |
header |
Header |
|
|
tow |
uint32 |
|
time of week |
repeated[3] vel_xyz |
double |
|
Velocity in [X,Y,Z] (ECEF) [m/s] |
repeated [9] covariance |
double |
|
flattened 3x3 covariance matrix in [X,Y,Z] |
fix |
SentiFixType |
|
fix type of the receiver |
SentiGNSSRelPos
Generic GNSS Relative Position message containing the relative position between two GNSS receivers
Field |
Type |
Label |
Description |
header |
Header |
|
|
tow |
uint32 |
|
Time of Week |
repeated[3] rel_pos_ned |
double |
|
relative position in [N,E,D] directions [m] |
heading |
double |
|
heading/direction between the receivers [rad] |
h_acc |
double |
|
Horizontal accuracy estimate [m] |
v_acc |
double |
|
Vertical accuracy estimate [m] |
fix |
SentiFixType |
|
Fix type of the receiver |
SentiGNSSTime
SentiGNSSDop
Generic GNSS Dilution of Precision message. Based on uBlox NAV-DOP message
Field |
Type |
Label |
Description |
header |
Header |
|
|
tow |
double |
|
Time of Week |
p_dop |
float |
|
Position DOP |
t_dop |
float |
|
Time DOP |
v_dop |
float |
|
Vertical DOP |
h_dop |
float |
|
Horizontal DOP |
n_dop |
float |
|
Northing DOP |
e_dop |
float |
|
Easting DOP |
SentiGNSSStatus
Field |
Type |
Label |
Description |
header |
Header |
|
|
tow |
double |
|
Time of Week |
fix_type |
SentiFixType |
|
Fix type of the receiver |
n_satellites |
uint32 |
|
Number of tracked satellites |
SentiGNSSRfiStatus
Generic RFI status message based on uBloc MON_HW message
SentiTriggerMsg
SentiBoard Trigger message. UTC timestamp is the rising edge of the trigger
Field |
Type |
Label |
Description |
header |
Header |
|
|
rising_edge |
uint32 |
|
Rising edge TOV value (in SentiBoard time 10*ns) |
falling_edge |
uint32 |
|
falling edge TOV value (in SentiBoard time 10*ns) |
SentiBoard InputCapture message. UTC timestamp is the leading edge of the event
Field |
Type |
Label |
Description |
header |
Header |
|
|
SentiRawMsg
Raw SentiBoard packet. A sensor data packet (raw byte stream) wrapped in the Header with UTC timestamp
Field |
Type |
Label |
Description |
header |
Header |
|
|
packet |
bytes |
|
Raw sensor data packet |
Enums
SentiMessageID
MessageID uniquely identifies all messages sent in SentiUtils
Name |
Number |
NONE |
0 |
RAW_MSG |
1 |
BUFFER_MSG |
2 |
BASE_MSG |
3 |
IMU_MSG |
100 |
IMU_MAG_MSG |
101 |
IMU_MAG_ORIENTATION_MSG |
102 |
IMAGE_MSG |
150 |
GNSS_POS_LLH |
200 |
GNSS_POS_ECEF |
201 |
GNSS_VEL_NED |
202 |
GNSS_VEL_ECEF |
203 |
GNSS_RELPOS_NED |
204 |
GNSS_TIME |
205 |
GNSS_DOP |
206 |
GNSS_STATUS |
207 |
GNSS_RFI_STATUS |
208 |
TRIGGER_MSG |
300 |
INPUTCAPTURE_MSG |
400 |
NMEA_GGA |
500 |
NMEA_ZDA |
501 |
_UNUSED |
65534 |
SentiGNSSTime
Name |
Number |
Description |
NO_SOURCE |
0 |
|
PROPAGATED |
1 |
|
GNSS |
2 |
|
SentiFixType
Name |
Number |
Description |
NO_FIX |
0 |
|
GNSS_FIX |
1 |
|
DGNSS_FIX |
2 |
|
RTK_FIX |
3 |
|
RTK_FLOAT |
4 |
|
DEAD_RECKOGNING |
5 |
|
SBAS_FIX |
6 |
|
Scalar Value Types
See Protobuf documentation for scalar value types.