cube:its
cube:its is a ROS 2-based Cooperative ITS stack that turns the cube:evk into a standards-compliant ITS station. It is built on Vanetza and extended with ETSI facility layers. The API is exposed through ROS 2.
Features
ROS 2 integration. Standard ROS 2 topics, services, and message types (ros_cube_msgs).
ROS 2 ecosystem reuse. Existing ROS 2 drivers and perception stacks for Lidar, radar, cameras, and other sensors can be connected to cube:its directly through ROS 2 topics. Detected objects can be published on the CPM input topic and forwarded over V2X without writing protocol glue. Frameworks such as Autoware integrate via the same ROS 2 graph. External ROS systems can be linked through a ROS bridge or by extending the ROS domain.
ETSI facilities. Cooperative Awareness (CA), Decentralized Environmental Notification (DEN), Collective Perception (CP), VAM, and others.
Built on Vanetza. An open-source, ETSI-compliant C-ITS stack.
GNSS and IMU input. Uses cube:ubx positioning and the u-blox module's IMU fusion to provide ITS time and position references.
Development environment. Pre-installed dev containers, remote debugging, and tooling for running ROS 2 applications directly on the cube:evk.
Typical Use Cases
- V2X-enabled vehicles
- Smart infrastructure nodes
- Prototyping platforms for universities and research institutes
- Edge devices combining V2X, GNSS, and local sensor data
- Cloud-connected systems (fleet monitoring, digital twins)
- ROS 2-based environments
Layer Coverage
cube:its covers the C-ITS protocol layers end to end:
- Link layer: cube:radio API (ITS-G5 or C-V2X)
- Networking: GeoNetworking (Vanetza GN)
- Transport: BTP-A/B
- Facilities: CAM, DENM, CPM, VAM, LDM
- Security: ETSI ITS-S security hooks
- Time sync: GNSS-tuned ITS time (cube:time)
ROS 2 applications can operate at any layer:
- Send CAMs from their own mobility data
- Process received DENMs
- Feed sensor detections into CPM
- Implement custom facilities on top
See the Introduction to get started.

