If you’re into anything even vaguely mechanical on the broad hacking spectrum, you’ve come into contact with things that spin. Sometimes, it’s important to know precisely how fast they are spinning! When you’ve got the need to know angular speed, you need a device to measure it. That device is a tachometer. And the most useful tachometer is the non-contact photo-tachometer.
A tachometer used to be an accessory added to the dash of only the sportiest of cars, but now they’re pretty much standard equipment on everything from sleek coupes to the family truckster. If your daily driver was born without a tach, fear not – a simple Arduino tachometer is well within your reach.
The tach-less vehicle in question is [deepsyx]’s Opel Astra, which from the video below seems to have the pep and manual transmission that would make a tach especially useful. Eschewing the traditional analog meter display or even a digital readout, [deepsyx] opted to indicate shift points with four LEDs mounted to a scrap of old credit card. The first LED lights at 4000 RPM, with subsequent LEDs coming on at each 500 RPM increase beyond that. At 5800 RPM, all the LEDs blink as a redline warning. [Deepsyx] even provides a serial output of the smoothed RPM value, so logging of RPM data is a possible future enhancement.
The project is sensing engine speed using the coil trigger signal – a signal sent from the Engine Control Unit (ECU) which tells one of the ignition coilpacks to fire. The high voltage signal from the coilpack passes on to the spark plug, which ignites the air-fuel mixture in that cylinder. This is a good way to determine engine RPM without mechanical modifications to the car. Just make sure you modify the code for the correct number of cylinders in your vehicle.
Simple, cheap, effective – even if it is more of a shift point indicator than true tachometer, it gets the job done. But if you’re looking for a more traditional display and have a more recent vintage car, this sweeping LED tachometer might suit you more.
A digital dash is cool and all, but analog gauges have lasting appeal. There’s something about the simplicity of a purely mechanical gauge connected directly to a vehicle’s transmission. Of course that’s not what’s hapenning here. Instead, this build is an analog display for GPS-acquired speed data.
The video below does a good job at explaining the basics of [Grant Stephens]’ build. The display itself is a gutted marine speedometer fitted with the movement from a motorcycle tachometer. The tach was designed to take a 4-volt peak-to-peak square wave input signal, the frequency of which is proportional to engine speed. To display road speed, [Grant] stuffed an ATTiny85 with a GPS module into the gauge and cooked up a script to convert the GPS velocity data into a square wave. There’s obviously some latency, and the gauge doesn’t appear to register low speeds very well, but all in all it seems to match up well to the stock speedo once you convert to metric.
There’s plenty of room for improvement, but we can see other applications where an analog representation of GPS data could be useful. And analog gauges are just plain fun to digitize – like these old meters and gauges used to display web-scraped weather data.
While driving around one day, [Esko] noticed that the numbers and dials on a speedometer would be a pretty great medium for a clock build. This was his first project using a microcontroller, and with no time to lose he got his hands on the instrument cluster from a Fiat and used it to make a very unique timepiece.
The instrument cluster he chose was from a diesel Fiat Stilo, which [Esko] chose because the tachometer on the diesel version suited his timekeeping needs almost exactly. The speedometer measures almost all the way to 240 kph which works well for a 24-hour clock too. With the major part sourced, he found an Arduino clone and hit the road (figuratively speaking). A major focus of this project was getting the CAN bus signals sorted out. It helped that the Arduino clone he found had this functionality built-in (and ended up being cheaper than a real Arduino and shield) but he still had quite a bit of difficulty figuring out all of the signals.
In the end he got everything working, using a built-in servo motor in the cluster to make a “ticking” sound for seconds, and using the fuel gauge to keep track of the minutes. [Esko] also donated it to a local car museum when he finished so that others can enjoy this unique timepiece. Be sure to check out the video below to see this clock in action, and if you’re looking for other uses for instrument clusters that you might have lying around, be sure to check out this cluster used for video games.
The mechanics in dashboards are awesome, and produced at scale. That’s why our own [Adam Fabio] is able to get a hold of that type of hardware for his Analog Gauge Stepper kit. He simply adds a 3D printed needle, and a PCB to make interfacing easy.
If you ever wanted a reason to have DC lighting pointed at the spinny part of your mill and lathe, [Bill] tells a great story. One day, he noticed the teeth on his lathe chuck would change color – red, then blue, then red. His conclusion was the fluorescent lights above his workbench was flashing, as fluorescent lights normally do.
Imagine if the teeth on [Bill]’s chuck weren’t painted. They would appear stationary. That’s usually a bad thing when one of the risks of using a lathe is ‘descalping.’ Buy an LED or incandescent work light for your shop.
This unique effect of blinking lights got [Bill] thinking, though. Could these fluorescent lights be used as a strobe light? Could it measure the RPM of the lathe?
And so began [Bill]’s quest for a 2D printed lathe tachometer. The first attempt was to wrap a piece of paper printed with evenly space numbers around the chuck. This did not work. The flash from his fluorescent bulb was too long, and the numbers were just a blur. He moved on to a maximum-contrast pattern those of us who had a ‘DJ phase’ might recognize immediately.
By printing out a piece of paper with alternating black and white bands, [Bill] was able to read off the RPM of his chuck with ease. That’s after he realized fluorescent lights blink twice per cycle, or 120 times a second. If you have a 3″ mini-lathe, [Bill] put the relevant files up, ready to be taped to a chuck.
When machining metal, it is important to know how fast the cutting tool is traveling in relation to the surface of the part being machined. This amount is called the ‘Surface Speed’. There are Surface Speed standards for cutting different types of materials and it is good practice to stick with those standards in order to end up with a good surface finish as well as maximizing tool life. On a lathe, for example, having a known target Surface Speed in mind as well as a part finish diameter, it is possible to calculate the necessary spindle speed.
Hobbyist [Paul] wanted a method of measuring his lathe’s spindle speed. Since spindle speed is measured in RPM, it made complete sense to install a tachometer. After browsing eBay for a bit he found one for about $20. His purchase came with the numeric LED display, a mounting bezel and the all important hall effect sensor. The Hall effect sensor measures changes in a magnetic field and in turn varies its output voltage. [Paul] fabbed up an aluminum bracket that supports the sensor just off of the rear of the lathe spindle. A magnet was then glued to the outside diameter of the spindle below the sensor. The once per revolution signal is generated every time the magnet passes the sensor while the lathe is running. The display was mounted to the lathe near eye height by means of another aluminum bracket and case.
After a little work, [Paul] can now keep a close eye on his spindle speed with a quick glance over at his new tachometer display while he’s turning those perfect parts! If this project tickles your fancy, you may want to check out this fantastic DIY tachometer or this one that uses a soundcard.
Many CPU-usage widgets have stylistically borrowed from vehicles, displaying something mimicking the tachometer found in the dashboard. [Pat] took it a step further and tried his hand at re-borrowing this style. He figured, why not use an actual physical tachometer to display how hard the CPU on his Raspberry Pi was revving?
With the goal of tuning 0-100% CPU usage to 0-8000 RPM on the tach, the first step was diagnosing the range of PWM input frequencies that moved the needle across the tach’s full arc. Using his Tektronix 3252C function generator he quickly determined 0-440 Hz would be needed and graphed a handful of intermediate points. The response curve was not linear, so he drew up some fudging guidelines to make all the datapoints match.
Next, he wrote a few lines of Python (he shared) to make the Pi to poll its CPU usage and translate it to the proper frequency. The Pi makes outputting easy, GPIO pin 11 carried the signal to a 7404 for buffering, then out to the tach. The automotive tach itself ran on 12V, but its input signal required only 5V so he pulled a 7805 from his parts bin.
See the video after the break of the tach twitching even when the mouse moved, and pegging the red when opening a browser. No more need to use up valuable screen real-estate (or use a screen at all) if you want to see at a glance when your Pi is putting in work.