Compass - Motorcycle GPS Navigation System

Project Overview


COMPASS is a purpose-built motorcycle navigation system designed to provide a safer, more intuitive riding experience by separating navigation logic from the display.


Instead of mounting a phone on the handlebars, COMPASS uses an iPhone to handle GPS, routing, and navigation, while a dedicated on-bike unit built around a Raspberry Pi provides a clean, real-time display optimized specifically for riding.


The goal is simple: reduce distraction, increase clarity, and create a system that actually works in real-world riding conditions.


Why I Built It


This project started out of frustration.


Existing motorcycle navigation solutions all have tradeoffs that become obvious on the road. Phone mounts are difficult to read at speed and require constant attention. Dedicated GPS units often feel slow, limited, or disconnected from modern navigation systems.


Everything worked “well enough,” but nothing felt natural while riding.


I am a self-taught developer and a 100% disabled U.S. veteran, and I decided to build a system from scratch that solved the problem properly instead of working around it. A major part of that effort was usability while actually riding. I integrated external M5Stack rotary dials as physical controls so the system can be operated reliably with gloves on, without depending on touch input. This approach makes interaction consistent in real conditions and keeps the rider’s attention where it belongs, on the road instead of the interface.




System Design


COMPASS is built as a two-part system:



1. Mobile Side (CompassLink – iPhone)


Handles GPS positioning and route calculation

Manages navigation state (ETA, maneuvers, route data)

Runs in the background during rides

Streams real-time data to the bike



2. On-Bike Unit (COMPASS Device)


Raspberry Pi 5 (core processing)

3.4” circular display (primary interface)

LED ring for directional feedback

IMU sensor for tilt-based interaction

Custom Python (Tkinter) UI optimized for circular layout



How It Works


The system operates as a continuous real-time link between the iPhone and the on-bike unit.


The iPhone app handles all navigation logic, including GPS positioning, route calculation, and maneuver data. This information is streamed to the Raspberry Pi over a persistent WebSocket connection, allowing the bike-mounted display to update instantly as conditions change.


On the Pi side, the interface renders a heading-up map where the rider’s direction remains fixed while the map rotates underneath. The active route is always visible, and a minimal maneuver indicator provides turn guidance without overwhelming the display.


At the same time, the LED ring provides directional feedback, reinforcing navigation cues without requiring the rider to focus directly on the screen. The system is designed so that once a route is started, it can run continuously without requiring interaction.




Development Focus


The majority of the development effort was not focused on adding features, but on making the system reliable in real-world conditions.


This included solving issues related to boot timing, service startup order, and ensuring the system could recover cleanly if something disconnected or restarted. A significant amount of time was spent refining how the Pi connects to either a home network or the phone’s hotspot and making sure it consistently reconnects to the last-used network on boot.


Another major focus was maintaining a stable connection between the phone and the Pi while the app is running in the background. This required careful handling of state, reconnect logic, and minimizing points of failure that would interrupt navigation mid-ride.


These are problems that do not show up during development at a desk, but become immediately obvious on the road.



Testing and Real-World Use


COMPASS has now been tested over several hundred miles of actual riding.


During testing, the system proved capable of maintaining a stable connection, keeping the route visible at all times, and remaining readable at speed. The interface does not require constant interaction, and the system behaves predictably even after disconnects or restarts.


At this stage, the project has moved beyond a prototype and functions as a usable system in real riding conditions.


Components Used:

SC1111

Raspberry Pi

x 1SKU: 27478

Waveshare

x 1MPU-6050

TDK InvenSense

x 1XT30PW-M

AMASS

x 1XT30PW-M30.G.Y

AMASS(艾迈斯)

x 1Arducam Mini 5MP Plus


Tools, APP Software Used etc.:


Fusion 360

Autodesk

xcode

apple

VS Code

Procreate for Ipad

Description

COMPASS – Motorcycle Navigation System


Media:


The images and videos included with this project show the system mounted on the motorcycle, the interface in operation, and the overall hardware setup.


These demonstrate how the system behaves in real use rather than in a controlled environment.


Bill of Materials:


The system is built using a combination of off-the-shelf components and custom integration. The primary components include a Raspberry Pi 5, a 3.4 inch circular display, an IMU sensor, an LED ring, and XT30 power connectors, along with supporting power regulation and mounting hardware.


A full bill of materials is included with the project documentation.



Next Steps:


The current version of COMPASS is built using modular components and wiring. While this approach allowed for rapid development and iteration, the next phase is to consolidate the system into a custom PCB.


This will reduce wiring complexity, improve reliability, and allow the design to be more compact and durable for long-term use on a motorcycle. It also opens the door to refining the enclosure and moving toward a more integrated and production-ready form.



Project Status:


The system is fully functional, has been tested in real-world riding conditions, and has reached a stable state. The focus is now on refining the hardware and transitioning from a prototype build to a more integrated design.



Project Links:


GitHub

https://github.com/eliinccustomerservice/COMPASS


Build Log and Development History

https://www.reddit.com/user/redknotsociety/


Youtube

https://www.youtube.com/shorts/x9nHhgaQtp0


Apply for sponsorship >>
13800+ Projects Sponsored
Mar 25,2026
19 viewsReport item
  • Comments(0)
  • Likes(0)
Upload photo
You can only upload 5 files in total. Each file cannot exceed 2MB. Supports JPG, JPEG, GIF, PNG, BMP
0 / 10000