# Garmin HUD support ## Purpose of this project Garmin created fantastic Head-up Display, but they had it discontinued in 2015[^1]. Fortunately, whole protocol had been reverse engineered[^2]. This allowed community to create their own works. ## Works Project started in Aug'23 as simple solution to connect GMaps with Garmin. PoC was created with python (can be viewed [here](./python)) as it is the quickest known way to test protocol and create objects. With the help of [Garminuino](https://github.com/skyforcetw/Garminuino) and [GMapsParser](https://github.com/3v1n0/GMapsParser) first version of application was created, which wasn't working at all. Two weeks later I switched to Mapbox as completely standalone solution. Despite some bugs and huge battery drainage some may say that it works. ### Stack - Kotlin 1.9 - Mapbox SDK 11.5.1 - Navigation SDK 3.2.0 - Search SDK 2.4.0 ### Future works All the plans cannot be simply specified as they depend on many factors. Main conception is not firmly grunted so it can depend on final decisions: 1. Standalone application - optimisation - bug fixes - camera behaviour - search prompt graphics - reconnect button style - garmin connection fixes - socket behaviour on reconnect - maneuver processing (on long distances it refreshes every 10+ km) - Android Auto integration - POIs - speed cameras database - traffic data 2. Proxy (one to choose from) - Google Maps (probably) - Yanosik - Waze [^1]: Source: https://support.garmin.com/pl-PL/?faq=gJy4U1QaPL2gBs3AqQ7Lm5 [^2]: As widely described on sites like Hackday. Most repeated repo link is https://github.com/gabonator/Work-in-progress/tree/master/GarminHud