To underline that Chris architecture is a common one I'll add a draft of [my setup](https://hackaday.io/project/25406-wild-thumper-based-ros-robot) which is similar. I have a 4wd, so 4 motors to control, they are controlled independently by the 4 PWM outputs of an AVR Atmega. For this I use 4 PID controller, which are all calculated on the AVR. The measurements for the PID comes from the 4 quadrature encoders which are polled in the timer overflow ISR. The AVR is connected to the computer using a I2C bus. Input is x translation and z rotation parts of the geometry/Twist message. Output of the AVR are the translation (x,y) and rotation (z) parts of nav_msgs/Odometry. The conversion between the I2C protocol and the corresponding ROS message is done with a node on the board computer. Btw if you don't need much cpu processing you could do everything on a [Beaglebone Blue](http://beagleboard.org/blue). It has an additional real time processor "PRU". --- [Visit Topic](https://discourse.ros.org/t/project-wayfarer/3659/11) or reply to this email to respond. If you do not want to receive messages from ros-users please use the unsubscribe link below. If you use the one above, you will stop all of ros-users from receiving updates. ______________________________________________________________________________ ros-users mailing list ros-users@lists.ros.org http://lists.ros.org/mailman/listinfo/ros-users Unsubscribe: