|
|
SC1111Raspberry Pi
|
x 1 | |
|
|
SKU: 27478Waveshare
|
x 1 | |
|
|
MPU-6050TDK InvenSense
|
x 1 | |
|
|
XT30PW-MAMASS
|
x 1 | |
|
|
XT30PW-M30.G.YAMASS(艾迈斯)
|
x 1 | |
|
|
Arducam Mini 5MP Plus |
x 1 |
|
Fusion 360Autodesk
|
|
|
|
xcodeapple
|
|
|
VS Code |
|
|
|
Procreate for Ipad |
COMPASS – Motorcycle 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.
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
COMPASS – Motorcycle Navigation System
*PCBWay community is a sharing platform. We are not responsible for any design issues and parameter issues (board thickness, surface finish, etc.) you choose.
Raspberry Pi 5 7 Inch Touch Screen IPS 1024x600 HD LCD HDMI-compatible Display for RPI 4B 3B+ OPI 5 AIDA64 PC Secondary Screen(Without Speaker)
BUY NOW- Comments(2)
- Likes(1)
-
Eli Shaw
Mar 26,2026
- 0 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
More by Eli Shaw
-
-
ARPS-2 – Arduino-Compatible Robot Project Shield for Arduino UNO
1124 0 2 -
-
A Compact Charging Breakout Board For Waveshare ESP32-C3
1663 3 7 -
AI-driven LoRa & LLM-enabled Kiosk & Food Delivery System
1611 2 0 -
-
-
-
ESP32-C3 BLE Keyboard - Battery Powered with USB-C Charging
1797 0 1 -







