I need a drive controller for holonomic / non-holonomic robots with support for 2 or 3 encoders for odometry that can be in a different position from the drive. Clearly the diff_drive_controller only supports non-holonomic wheeled robots with 2 encoders that have to be the same as the drive wheels.
Does anyone know of something like this that already exists in ROS, or should I create my own? Any tips for creating my own?