Nice work Jon. I'll check the code one of these days. In my university our diff robots are so small and cheap they have steppers rather than encoders One thing I can think can expand your stack is a holonomic controller: lin_spd=cos(robot_theta) *vx+sin(robot_theta)*vy; ang_spd=-( 1/d )*sin(robot_theta) *vx+(1/d)*cos(robot_theta)*vy; d being the distance from the actual drive center (the pivoting point of the platform) along the longitudinal axis of the robot (the forward movement axis). Then going from (lin_spd, ang_spd) to (wheel_1, wheel_2) is trivial. Relevant article: Bilateral Teleoperation of a Formation of Nonholonomic Mobile Robots Under Constant Time Delay Oscar M. Palafox and Mark W. Spong (can't attach here) Best regards -- *Eng. Claudio Carbone Embedded Systems Design* P.IVA: 11688471009 tel: +393809017424 email: Send email My linkedin profile My Portfolio My portfolio site -- *Eng. Claudio Carbone Embedded Systems Design* P.IVA: 11688471009 tel: +393809017424 email: Send email My linkedin profile My Portfolio My portfolio site