Need to Connect uP to ROS/Linux on a new project. Is ROS2 the way to go?
I have a STM32F type microcontroller running a sensor and I'd like it to interface to ROS as a node over a serial (USB, SPI, I2C,..) link. This uP is not an Arduino. It runs a real-time OS.
With Effort, I might get ROS Serial to work and then run a ROS Serial server on the Linux side. In fact, I've prototyped this using an Arduino in place of my actual device and messages flow in both directions.
But if ROS 2 is the future perhaps I should run a DDS library on my STM32? And then some kind of DDS to ROS 1 bridge on the Linux side? I've not studied ROS 2 enough but I think it uses a "standard" message passing protocol and I should use that, especially if my RTOS supports it.
Just looking for general advice at this time. Possibly I've not thought of some good options.
My use case is building "smart" controllers that play with ROS well. For example, a base controller that connects with USB to a ROS/Linux system and subscribes to cmd_vel and publishes TF and odometry. Literally a "plug and play" ROS node.
Is a uP a microprocessor?