Please find in this section all details about the PULSE serial interface, supported output messages and configuration commands.

The PULSE implements the low level sbgECom protocol to output data and to send/read the device configuration. The sbgECom protocol is common to all SBG Systems INS and products to offer a unified developer experience.

The device configuration itself relies on the sbgInsRestApi that comes on top of the sbgECom protocol.

Serial Interface

The PULSE features one full duplex serial interface also called UART (Universal Asynchronous Receiver Transmitter). This serial interface is used to configure the device but also to output IMU data at up to 2 kHz.

The serial interface uses by default a baudrate of 921600 bps but it can be changed easily by the user from 115200 to up to 4 Mbit/s.

Supported Baudrates

Please find below the list of all baudrates available for the PULSE. As for any device, there is a deviation between the requested baudrate and the real baudare. A deviation below 1% is generally considered to be acceptable.

BaudrateReal BaudrateDeviation
115200115274-0.06%
230400230548-0.06%
460800459770+0.22%
921600919540+0.22%
10000001000000+0.00%
15000001509434-0.63%
18432001860465-0.94%
20000002000000+0.00%
27648002758621+0.22%
30000002962963+1.23%
35000003478261+0.62%
40000004000000+0.00%

Evaluation Board Limitations

The PULSE-40 evaluation board only supports baudrate up to 3 Mbit/s. For higher baudrates, you have to use specific hardware able to support these high speed signals.

sbgECom Binary Protocol

The sbgECom binary protocol is SBG Systems' proprietary protocol used to output binary messages and send/receive configuration commands. All SBG Systems products share this protocol to ease developer's life.

A well documented and open source (MIT) C library is available and hosted on GitHub to quickly integrate this binary protocol in the host application.

You can find the full sbgECom protocol definition in the Firmware documentation page and the sbgECom C library documentation in the dedicated support center Binary protocol Library (sbgECom) page.

Main message: IMU_SHORT

The PULSE supports only a subset of output messages compared to other SBG Systems products such as full Inertial Navigation Systems. Please find below, the list of supported sbgECom binary logs that can be output by the PULSE.

Log IdentifierTypeDescription
SBG_ECOM_LOG_IMU_SHORT (44) PeriodicReturns high resolution and compact delta angles, delta velocities, temperature, status and timestamp information.

SBG_ECOM_LOG_IMU_SHORT description

The information below is extracted from the Firmware documentation to give you a quick overview of this message.


FieldDescriptionUnitFormatSizeOffset
TIME_STAMPTime since sensor is powered upµsuint3240
IMU_STATUSIMU status (see IMU_STATUS)-uint1624
ACCELERATION_XAcceleration along the X axis in the body frame (in LSB).m/s²int3246
ACCELERATION_YAcceleration along the Y axis in the body frame (in LSB).m/s²int32410
ACCELERATION_ZAcceleration along the Z axis in the body frame (in LSB).m/s²int32414
RATE_XRotation rate along the X axis in the body frame (in LSB).rad/sint32418
RATE_YRotation rate along the Y axis in the body frame (in LSB).rad/sint32422
RATE_ZRotation rate along the Z axis in the body frame (in LSB).rad/sint32426
TEMPERATUREIMU internal average temperature (in LSB).°Cint16230

IMU_STATUS Definition

Status used to know if sensors are working correctly and are in their measurement range.

BitNameDescription
0 (LSB)SBG_ECOM_IMU_COM_OKSet if communication with the IMU is working properly.
1SBG_ECOM_IMU_STATUS_BITSet if the IMU passes internal BIT, including calibration and CPU checks.
2SBG_ECOM_IMU_ACCEL_X_BITSet if the X-axis accelerometer passes PBIT and CBIT.
3SBG_ECOM_IMU_ACCEL_Y_BITSet if the Y-axis accelerometer passes PBIT and CBIT.
4SBG_ECOM_IMU_ACCEL_Z_BITSet if the Z-axis accelerometer passes PBIT and CBIT.
5SBG_ECOM_IMU_GYRO_X_BITSet if the X-axis gyroscope passes PBIT and CBIT.
6SBG_ECOM_IMU_GYRO_Y_BITSet if the Y-axis gyroscope passes PBIT and CBIT.
7SBG_ECOM_IMU_GYRO_Z_BITSet if the Z-axis gyroscope passes PBIT and CBIT.
8SBG_ECOM_IMU_ACCELS_IN_RANGESet if all accelerometers are operating within the specified range.
9SBG_ECOM_IMU_GYROS_IN_RANGESet if all gyroscopes are operating within the specified range.
10SBG_ECOM_IMU_GYROS_USE_HIGH_SCALESet if the high scale scale factor is being used for rotation rates.

Additional messages

The following messages are supported by some or all of the Pulse IMUs. For the full specification of the message, please check the Firmware documentation.

Log IdentifierTypeIMU SupportedDescription
SBG_ECOM_LOG_MAG (04)Periodic

Pulse-40 OEM v2

Provides magnetometer data. 

Note that the associated accelerometer data is the same source as SBG_ECOM_LOG_IMU_SHORT but decimated for the sampling rate associated to the SBG_ECOM_LOG_MAG message

SBG_ECOM_LOG_DIAG (48)EventAll Pulse IMUsEmit a log each time a diagnostic message is produced by the unit. This log is mostly used for advanced troubleshooting by SBG Systems support team.

SBG_ECOM_LOG_FFT_RAW (59)

PeriodicAll Pulse IMUs

This message provides the raw output of the IMU’s built-in Fast Fourier Transform (FFT) engine.
It includes FFT magnitude values up to 2kHz.

Frequency bin values are not transmitted directly and must be reconstructed using the known sampling frequency and FFT length.

SBG_ECOM_LOG_FFT_REPORT (60)

PeriodicAll Pulse IMUs

This message provides a synthetic summary of the FFT output, offering key vibration indicators derived from the accelerometer signal.
It includes an overall vibration level gRMS, as well as detailed information over four evenly spaced frequency bands covering the full spectrum up to 2kHz.

Supported Commands

The PULSE implements all the needed sbgECom commands to fully support the sbgInsRestApi specification.

The sbgInsRestApi relies on REST API concepts that comes from the HTTP/Ethernet protocols. However, the sbgECom provides two commands used to encapsulate and replicate HTTP GET and POST methods over a standard serial interface.

CommandDescription

SBG_ECOM_CMD_API_GET (46)

Command equivalent to the HTTP GET method for a REST API. It is used to retrieve a configuration or read a resource such as the device device identification.
SBG_ECOM_CMD_API_POST (47)Command equivalent to the HTTP POST method for a REST API. It is used to update a configuration or execute an action.

sbgInsRestApi Specifications

The sbgInsRestApi relies on standard REST API specification to offer a powerful and easy to use programming interface to configure Inertial Measurement Units (IMU) and even full featured Inertial Navigation Systems (INS).

This REST API is fully documented on the dedicated Configuration API (sbgInsRestApi) support center page.

The PULSE is an IMU and supports only a small subset of this API compared to a full INS. Please find below the list of supported settings, commands and resources that can be fetched

Please read the How To Articles section to get examples on how to use the sbgInsRestApi to configure the Pulse IMU