As the modern day motor vehicles grow in complexity, the need for measuring various locomotion parameters is something that all manufacturers approach, regardless of the purpose, size or price of the vehicle. Motorcycles make no exception, especially with the need for speed of most bike enthusiasts.
A project for all motorcycle-loving geeks out there, the Arduino Control Panel for Motorcycles is still in the prototype phase, but it seems to be working flawlessly. It currently has a speedometer and a tachometer which are very accurate and also a gear indicator . It uses a standard Arduino, a small LCD and Bluetooth and it is powered by the motorcycle battery.
The device is connected to the electrical system of the bike, receiving pulses from the tachometer circuit and using a reed switch for wheel rotation. It calculates the wheel speed in RPM and divides it into most recent engine RPM, obtaining a unique ratio for each gear. This is done by counting how many times the engine turns while the wheel turns once and the answer is somewhere between 4 and 12 for 5th gear and 1st gear, respectively. An interesting aspect of the coding is the interrupt handling, which is done by logging every 10th one.
As with all prototypes, this is not the final version of the project. The designer plans to make the device smaller and to incorporate it into the tank console and also to enhance it with more functions, like wind resistance. Not sure about the usefulness of the whole thing, as all bike producers install similar equipment, especially on newer models. Still, an interesting project that could be further developed.