EasyRider: Motorcycle Telemetrics Software for the EasyRider PCB (Atmel AVR ATmega1284p microcontroller board)
Loading README and project media…
EasyRider is a motorcycle telemetrics project, developed specifically for my Honda C90 classic bike.
The software is written in C for the Atmel AVR ATmega1284p main microcontroller.
The PCB was created with CadSoft Eagle 6.x, you'll find the schematic and board layout (including all components) in the /eagle directory. The file /doc/info.txt also contains the [BOM] and some project notes. (Partly in Dutch)
UPDATE: EasyRider REV B (github repo: easyriderb) is a completely new, smaller and more advanced board (mostly SMD parts) which also contains a GPS and WiFi module for easy tracking and communicating with a mobile phone app.

EasyRider basically does the following things:
The sofware is built around a simple State Machine pattern: when the driver is braking or toggling a switch, the software is sending an event, which is handled by the correct event handler based on the current state (a bitmask of multiple substates).
The buzzer music was created with the MIDICSV MIDI to CSV conversion tool. The midi2byte.rb Ruby script converts the plaintext CSV to a C header file containing an array of music notes.
The custom UART shell code is capable of registering commands and command handlers. E.g. typing "help" or "show state" in TeraTerm, Minicom, Putty or any other serial terminal program. (configuration: 19200 baud/8N1)
*[BOM]: Bill Of Materials