SchmickBike is a Teensy based platform for motorcycle instruments and telemetry.
Controller.
3D printed enclosure permanently installed under the seat of the bike. Houses a custom PCB with Teensy 3.5, CANbus transceiver, GPS and Bluetooth modules, power management, various discrete components to handle connections to bike electronics and connectors for bike, display and external sensors (IMU, ultrasonic distance sensors to measure suspension compression, tyre temperature monitor). Connects to bike CANbus, fuel injectors and power. Teensy 3.5 @120MHz is easily able to refresh the screen at 60Hz but faster than 10Hz is basically pointless. Uses 5x serial ports and 2x i2c busses. The code currently occupies just under 50% of available flash with all options enabled.
Display
3D printed weather resistant enclosure permanently attached to bike handlebars. Houses 5inch 800x480 LCD serial display (4DSystems), ambient light sensor (to automatically adjust screen brightness / display colour scheme), configurable status RGB LED, ambient temperature sensor and user input (either handlebar mounted joystick or momentary pushbuttons - have experimented with touchscreen but not ideal or safe on a moving motorcycle). Has approx 20 different screens - numerous different dashboards, comprehensive real time fuel consumption calculators and setup/monitor/configuration screens. Connects to controller via ribbon cable. With some shielding and careful routing through the electrically noisy motorcycle able to reliably update the screen at 625 kbit/s.
Here are some sample screens in both day and night colour schemes.
Android app.
Receives stream of data (50+ live variables: GPS location, speed, RPM, gear, temperature, lean angles, ECU status etc etc) from controller. Handles upload of data stream to cloud database for real time monitoring of bike remotely. Has multiple different dashboard layouts if you prefer to use a handlebar mounted phone/tablet for display. Can transmit music player status to the controller if you are using the phone to stream music to a helmet mounted bluetooth headset. Can transmit portions of txt messages received while riding to the controller so you can decide whether to pull over and respond. Connects to controller via Bluetooth. Optional.
Controller.
3D printed enclosure permanently installed under the seat of the bike. Houses a custom PCB with Teensy 3.5, CANbus transceiver, GPS and Bluetooth modules, power management, various discrete components to handle connections to bike electronics and connectors for bike, display and external sensors (IMU, ultrasonic distance sensors to measure suspension compression, tyre temperature monitor). Connects to bike CANbus, fuel injectors and power. Teensy 3.5 @120MHz is easily able to refresh the screen at 60Hz but faster than 10Hz is basically pointless. Uses 5x serial ports and 2x i2c busses. The code currently occupies just under 50% of available flash with all options enabled.
Display
3D printed weather resistant enclosure permanently attached to bike handlebars. Houses 5inch 800x480 LCD serial display (4DSystems), ambient light sensor (to automatically adjust screen brightness / display colour scheme), configurable status RGB LED, ambient temperature sensor and user input (either handlebar mounted joystick or momentary pushbuttons - have experimented with touchscreen but not ideal or safe on a moving motorcycle). Has approx 20 different screens - numerous different dashboards, comprehensive real time fuel consumption calculators and setup/monitor/configuration screens. Connects to controller via ribbon cable. With some shielding and careful routing through the electrically noisy motorcycle able to reliably update the screen at 625 kbit/s.
Here are some sample screens in both day and night colour schemes.
Android app.
Receives stream of data (50+ live variables: GPS location, speed, RPM, gear, temperature, lean angles, ECU status etc etc) from controller. Handles upload of data stream to cloud database for real time monitoring of bike remotely. Has multiple different dashboard layouts if you prefer to use a handlebar mounted phone/tablet for display. Can transmit music player status to the controller if you are using the phone to stream music to a helmet mounted bluetooth headset. Can transmit portions of txt messages received while riding to the controller so you can decide whether to pull over and respond. Connects to controller via Bluetooth. Optional.
Last edited: