Blog Home

Keep track of your ride with a custom bike speedometer

Arduino TeamAugust 30th, 2021

Over on element14, Katie had been wanting to go for a short bike ride after finally getting it fixed. But she encountered a problem: the previously mounted speedometer had lost its display unit, meaning the entire thing was now useless. Rather than simply buying a new one, she had the idea to put together a DIY version that relies on GPS instead of counting wheel rotations to keep track of the current speed. 

Component-wise, only a few modules were required to build this device. First was an Arduino Nano 33 IoT that handled communication and power between the screen and GPS module. Next was a GPS3 Click Board, which contains one of Quectel’s L80 GPS modules that provides accurate tracking information in a small form factor. Finally, a small 1.3” circular LCD was chosen due to its pixel density, integrated touch controller, and ease-of-use. Everything was assembled into a custom-designed and 3D-printed housing that fits neatly over the bike’s handlebars and features an area to store a USB battery bank. 

With the hardware finished, Katie moved onto the programming. The application starts by initializing the LCD and GPS modules over serial, where it then moves into an infinite loop that checks for new positional data. If there is something to update, the 4D Systems genieArduino display object receives this latest information and updates the screen’s graphics accordingly. 

To read more about how the speedometer was constructed, you can visit Katie’s e14 Community post here.