the 12v from the car will have unwanted noise and substantial transients that can wipe out an IC and other items. A usb cig power plug might be a good start but dont rely on it being a clean output.
I would use a switching regulator over a linear. My last circuit used two linear regulators in series to reduce the heat dissipation from voltage drop but still ran hot. Combine the heat from the car being left in the sun, limited airflow under the dash and load and thermal runaway occurred.
The switcher will need to be protected by a TVS diode, re-settable fuse and reverse voltage protection diode. Filtering will need to be addressed both in and out of the switcher. Careful on the output side, some switchers are picky about the capacitor ESR of the TOTAL output circuit. They make ICs that combine the TVS and reverse voltage protection but through hole was hard to find when I looked. The other thing to keep in mind is that everything in front of the tvs needs to be able to handle 60V+ spikes. I would look for a TVS that clamps at 16-17v, just above the max the alt should put out when healthy. What ever your TVS lets through, will be seen by the switcher. Make sure this voltage is kept within its specs. I used this after some helpful advice from a mind with more wisdom then mine:
http://www.mouser.com/Search/ProductDetail.aspx?qs=uJpRT2lXVNXJP%252bo08dQqJQ%3d%3d
I would us an atmel 8 bit mcu for this. Tap the output of the abs sensor, HZ, into an A/D channel. Tap into the gauge to ecu speed signal, hz, to another A/D channel. A resistor in series and catcher diodes should be used to protect the A/D ports.
Use a transistor (your choosing) with flyback diodes for motor control. Control this via a digital output with a resistor in series. Make sure to match the resistor to the output pins current limits and the gain of the transistor. Also make sure the transistor can handle the motors current adequately.
My current thoughts are to use a standard 12v DC motor with enough tq to spin the original speedo cable. Havent looked into this and don’t know to much about proper ways to select a motor. Most just grab what they can from the hobby shop. Keep in mind that the motor will need to spin the cables shaft to the same rpms as stock. Havent figured out the math on that yet. The motor will need to be solidly mounted and may introduce unwanted noise and vibration at high rpms. Insulated mounts may be required.
From the tsrm, the abs sensor should output 333.3hz for every 12.4mph. Roughly 26.9hz per MPH.
Have the atmel read the abs sensor, power the dc motor via PWM and fine tune the output based on the feedback from the gauge to ecu speed signal. There are some good examples of freq counting and interrupt usage on the arduino boards. A few have also shared their digital speedo designs too. The ecu speed signal will avoid the need for a servo and a stepper wouldn’t be needed as I previously mentioned because there’s no point to holding a position. It may be easier to use a freq to volt IC to feed the speed signals to the A/D ports. Im not sure how dual freq counting will play out with the timing on the mcu.
That’s all I have so far. Just been bouncing around in the grey matter so haven’t put it to paper and calculated component values yet. Always open to critiques, not an expert by any means. Just time spent tinkering between work and class.