APIs
The APIs provide interfaces for accessing the cube platform subsystems: Radio, GNSS/IMU, and Time. Each API is usable from C or C++, with minimal dependencies.
Radio API
The Radio API provides direct access to the cube's V2X radio subsystem, covering ITS-G5 (DSRC) and C-V2X (LTE-V2X) technologies. It lets developers:
- Configure channels, power levels, and modulation settings
- Transmit and receive raw V2X frames
- Monitor link status and channel busy ratio (CBR)
- Use unified data structures for both ITS-G5 and C-V2X
The API is used by tools such as cube-radio-transmit, cube-radio-receive, and cube-radio-pcap. It is suitable for direct integration, custom radio testing, and application-level V2X development.
See: Radio API Developer Guide
GNSS and IMU API
The cube::ubx module gives structured access to u-blox receiver messages, including GNSS navigation data and inertial measurements. Parsed message types include:
- High-rate GNSS data (
UBX-HNR-PVT) - Position accuracy and error ellipses (
UBX-NAV-EELL) - Fused IMU data (
UBX-ESF-INS) - Raw IMU data (
UBX-ESF-MEAS)
Using the Reactor event system, applications can subscribe to specific UBX messages and process them in real time, for logging, sensor fusion, or V2X timestamping.
See: GNSS and IMU API
ITS Time API
The ITS Time API exposes the device's ETSI ITS time base, synchronized via GNSS through the system clock. It provides:
- Current ITS timestamp (milliseconds or microseconds since 2004-01-01)
- Synchronization state
- Current TAI-UTC offset
- Conversion between system time and ITS time
This lets the cube subsystems (GNSS, V2X radio, application logic) share the same time reference, in line with ETSI ITS standards.
See: ITS Time API
Together, these APIs support time-aligned, sensor-aware, and radio-connected V2X applications on the cube platform, from raw sensor logging to cooperative driving experiments.

