A word of warning though... this one's a monster!!
So a few weeks ago, my usual speedometer for my bike gave up and eventually stopped working completely. I have had it for a good number of years now and it has served me well, but it was obviously time for a replacement. This got me thinking and inspired me to create this Arduino based project. A while ago, I published an instructable documenting how to build a 'Wireless Altoids Display'. It consisted of an 16x2 LCD controlled by an Arduino and a pair of maxsteam Xbee modules. Simple enough, ASCII text sent over serial from the computer would be displayed on the remote LCD. Through this project, I will hopefully be able to show you how you can integrate that setup in a useful application.
What does it do exactly?
The 16x2 display is mounted on the bike's handle bars and provides the user with feedback in terms of how fast they are currently traveling. There is also a nice little bar graph on the top row to provide a visual representation. As well as being able to view your speed in realtime on the bike, the data is also sent wirelessly 'back to base' where the results can be logged and visualised on an moving graph using 'Processing'. The arduino sends the current Speed, Average and Distance covered whilst riding.
Components & Configuration
>> On the bike: (Arduino + Magnetic Reed Switch + Xbee Pro Module + 16x2 LCD)
>> At home: (Xbee Pro Module + FTDI USB Cable)
Let's get to it!
Step 1: Tools & Components
- (2x) ALTOIDS Tins
- Arduino ATMega 328
- 16x2 LCD HD44780
- A form of sheet insulation (Card / Foam etc.)
- 5mm Clear PVC Tubing
- (2x) Xbee Pro Modules (U.FL antenna connector)
- (2x) U.FL to RP-SMA pigtails
- (2x) Adafruit Industries Xbee Adapter Kit
- (2x) RP-SMA 2.4Ghz Duck Antenna
- USB type A to type B
- USB to Serial FTDI
- Cat5 Cable
- 1k Resistor
- Soldering Iron & Solder
- Needle-nose Pliers
- Marker Pen
- Wire Strippers
- Fine Grade Sandpaper
- Power Drill (5mm bit) / Bodkin Skewer