The detail that grabbed me is that this HUD does not just reflect off the windshield. The maker built optics that throw the image onto the street about 10 to 15 feet ahead, the way an OEM system does, using a double-convex lens, two custom-cut mirrors and reflective film on the glass. That is ambitious territory for a DIY dash project.
The hardware stack is solid. A custom PCB runs an ESP32-S3, driving a 240x240 SPI LCD whose stock backlight and back casing were stripped off and replaced with a high-powered LED that keeps the image readable in daylight, with a heat sink to manage the extra heat. Data comes from an OBD2 CAN bus adapter over ESP-NOW. The maker did not design that adapter but wrote all of its code, and the display graphics run on LVGL.
The software choices stand out too. Five ADC buttons handle brightness, per-car profiles and a software display offset, which cuts down on fiddly physical alignment. The tachometer shows what RPM each gear would hold at the current speed, with colored tick marks, a speed readout and gear indicators, so the driver knows how much throttle to blip on downshifts and when to release the clutch. Gear ratios are calculated automatically whenever speed and RPM hold steady for a second, then saved to the ESP32 for later. The maker also wanted full control over the software, something off-the-shelf HUDs do not give.
One open issue: regular mirrors create a double reflection, and first-surface mirrors would fix it but are delicate and costly. The maker also admits limited optics knowledge and openly invites corrections, with a build guide planned once the design is tidied up.