Just found this thread, I actually started working on this also. I got sidetracked and haven't come back to it yet, but I'll post some pictures of my setup. DC Motor with Timing belt and gears that drive another shaft that has a rotary encoder. I used a Teensy development board instead of a real arduino. The rotatry encoded which Is not installed in my pictures and I can't seem to find right now is a CUI AMT103-V. The whole thing is designed to thread right on to the back of the speedometer head.
I kept smoking regular transistors, or they were not working right(can't remember) so that other little thing plugged into the board is a better surface mount transistor or mosfet.