Analysis updated 2026-05-18
Mount a dedicated navigation screen on bike or motorcycle handlebars instead of using a phone screen.
Get turn by turn cycling or driving directions drawn as a vector map on a cheap ESP32 display.
Keep a phone locked or screen off while riding, using a Bluetooth foreground service for navigation.
Search for a destination by place name and choose a route profile for car, motorcycle, bike, or walking.
| malaq88/displayconnect | android/appfunctions | dw2lam/openlauncher | |
|---|---|---|---|
| Stars | 17 | 17 | 18 |
| Language | Kotlin | Kotlin | Kotlin |
| Setup difficulty | hard | moderate | moderate |
| Complexity | 4/5 | 3/5 | 2/5 |
| Audience | developer | developer | general |
Figures from each repo's GitHub metadata at analysis time.
Needs an ESP32-2432S028 (CYD) board flashed with the Arduino firmware, plus building and installing the Android app.
DisplayConnect is an Android app paired with cheap ESP32 hardware that turns a small screen into a bike navigation display. The phone handles GPS, route calculation, and map drawing logic, then sends the result over Bluetooth Low Energy to an inexpensive ESP32 CYD board, a small computer with a built in 2.4 inch touchscreen. The board draws the route, nearby streets, your position, and turn instructions on its own screen. The project has gone through two versions. In the first version, the app mirrored the phone's screen to the display by capturing and streaming JPEG images over WiFi. The current version, on the main branch, works differently: instead of sending a picture of the screen, the phone sends structured navigation data as JSON messages over Bluetooth, and the display draws its own vector map from that data. This means the display no longer needs WiFi, and the phone screen can stay off or locked while riding. The idea is aimed at cyclists and motorcyclists who want a dedicated navigation screen mounted on their handlebars instead of staring at their phone in sunlight or rain, and who want to avoid touching a phone screen while moving. The ESP32 CYD board used for this costs only a few dollars, much cheaper than a dedicated bike GPS unit. Under the hood, the phone uses its GPS along with OSRM for route calculation, Nominatim for searching place names, and Overpass for nearby street data, all free OpenStreetMap based services, so no Google Maps API key is required for core navigation. The Android app is written in Kotlin using Jetpack Compose for its interface. The ESP32 firmware is written in Arduino style C++ and uses the TFT_eSPI library to draw graphics and ArduinoJson to parse the incoming Bluetooth messages. You can choose between route profiles for driving, motorcycle riding, cycling, or walking. There is also an optional mode that can extract simple navigation text from a Google Maps browser window and forward it too. A Portuguese translation of the documentation is included.
An Android app that sends bike navigation data over Bluetooth to a cheap ESP32 screen mounted on your handlebars.
Mainly Kotlin. The stack also includes Kotlin, Jetpack Compose, ESP32.
The README does not clearly state a license for this project.
Setup difficulty is rated hard, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.