ROS
Use ROS when the vehicle control stack already exposes commands, state, or autonomy interfaces through ROS.
Oden does not require ROS. The recommended pattern is to keep Oden Control Pipeline as the Oden-facing transport and run a small bridge process that translates between OCP TCP/JSON and ROS topics, services, or actions.
Recommended architecture
OdenVR
-> OCP over Oden links
-> Oden Streamer
-> vehicle-side OCP TCP client
-> ROS bridge
-> ROS 1 / ROS 2 vehicle stack
The ROS bridge should:
-
Connect to the Streamer OCP TCP server.
-
Read
OcpControlMessageframes. -
Validate faults and command freshness.
-
Publish safe, project-specific ROS commands.
-
Read ROS telemetry.
-
Return
VehicleResponseMessageframes withack_time,ack_time_mac, and vehicle user data.
Repository
Voysys should publish and link the maintained ROS bridge repository from this page. Until that public link exists, treat ROS integration as a support-guided path.
The bridge should be kept small and auditable. Vehicle safety limits should still live in the vehicle controller or safety layer, not only in the bridge.
See Vehicle-Side Control for the OCP TCP protocol.