My first electronics project in my first year was to make a cycle odometer for the Engineering Design course final project. I decided to use an Arduino for the input-output interfacing, and a magnetic switch for the periodic inputs from the cycle wheels. Other students designed disc encoders for the wheels, and some used Hall effect sensors. Some even used refurbished calculators attached to magnetic switches on the wheels!
The disc encoders were not as effective in bright sunlight, since the photodetectors would always be on, and this interfered with the distance measurements. The Hall Effect sensors were the most effective, but also most expensive, and hence, we decided to settle for magnetic switches. The Arduino was programmable, whereas the calculators were not. Hence, the students who relied on the calculators relied on a basic hack which used the calculator’s ‘+’ button to add each time the switch was depressed. We decided to make ours more useful, and built a whole interface around it, and included a speedometer, a distance save and recall function, and a special energy efficient backlight. 
These were features that simply could not be included in the calculator based design. We used them to our advantage. All the Arduino code was programmed in C, and the wiring and circuitry was done on a small breadboard and connected to the front fork of the cycle. The magnetic switch was connected near the front wheel, and the magnet was attached to one of the spokes on the front wheel. The result of this project was a relatively accurate odometer/speedometer with an LCD display and easy to use user-interface. It was great fun building it!

Attached below is the schematic (informal) which outlines the connections to the LCD display, the magnetic switch, the Arduino and the buttons. Click on it to see a full sized zoomable image.



Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s