gitwtfhub

wtf is blueline-one?

edge3dsolutions/blueline-one — explained in plain English

Analysis updated 2026-05-18

0CAudience · generalComplexity · 4/5LicenseSetup · hard

TL;DR

DIY firmware for a custom ESP32 based car gauge that shows live engine data from a car's diagnostics port on a round touchscreen.

Mindmap

mindmap
  root((repo))
    What it does
      Reads OBD-II data
      Shows gauges on screen
      Touch based controls
    Tech stack
      ESP32-S3
      Arduino IDE
      LVGL
      Bluetooth OBD-II
    Use cases
      Build a custom gauge
      Monitor engine data
      Track lap or 0-60 times
    Audience
      Car hobbyists
      Makers
      Embedded developers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Build a custom round touchscreen gauge that shows live RPM, speed, and throttle data from your car.

REASON 2

Track estimated fuel economy in real time using OBD-II airflow and speed data.

REASON 3

Use the chronograph screen as a stopwatch for tracking lap or acceleration times.

What's in the stack?

CESP32-S3ArduinoLVGLBluetooth

How it stacks up

edge3dsolutions/blueline-oneac000/find-flvacc4github/kdenlive-omnifade
Stars00
LanguageCCC
Last pushed2013-04-05
MaintenanceDormant
Setup difficultyhardmoderatemoderate
Complexity4/52/52/5
Audiencegeneraldevelopergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · hard Time to first run · 1h+

Requires specific hardware (Waveshare ESP32-S3 AMOLED display, a BLE OBD-II adapter) plus Arduino IDE setup with several third-party libraries.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

Wtf does this do

BlueLine One is firmware and hardware plans for a custom car gauge that a hobbyist can build themselves. It runs on an ESP32-S3 microcontroller connected to a small round AMOLED touchscreen, and it reads live data from a car's onboard diagnostics port over Bluetooth using a separate BLE OBD-II adapter. The project is described as an early proof of concept, so features and vehicle compatibility are still expected to change. The main screen shows four readings at once: engine RPM with a shift light arc, vehicle speed, throttle position, and intake air temperature. Beyond that combined view, a person can swipe between individual full screen gauges covering RPM, speed, throttle, intake temperature, coolant temperature, battery voltage, a tire pressure display, airflow, estimated fuel economy, and a stopwatch style chronograph. Touch gestures handle navigation and settings, including switching between MPH and KPH, Fahrenheit and Celsius, adjusting shift light trigger points, changing the ring light color around the display, and adjusting brightness. Settings are saved on the device so they persist between uses. Building one requires specific hardware: a particular Waveshare ESP32-S3 round AMOLED display, a compatible BLE OBD-II adapter, and a USB-C power source, with an optional 3D printed mount. It is currently being developed and tested on a 2019 Mazda MX-5 Miata, and while standard OBD-II readings should work on other cars, that has not been confirmed, and some features like tire pressure monitoring may need manufacturer specific commands that only work on certain vehicles. To build the firmware, a person needs the Arduino IDE with the ESP32 board package installed, plus several open source Arduino libraries for the display and power management chips. The README documents exact board settings, wiring folder structure, touch control gestures, the OBD-II commands used for each reading, known limitations such as experimental tire pressure support, and a roadmap of planned features like over the air firmware updates. It carries a clear disclaimer that this is an experimental DIY project not to be relied on for safety critical driving decisions, and it is released under the MIT license.

Yoink these prompts

Prompt 1
Walk me through wiring and flashing BlueLine One onto an ESP32-S3 round AMOLED display.
Prompt 2
What Arduino libraries do I need to install before compiling this project?
Prompt 3
Explain how BlueLine One estimates MPG from OBD-II data and why it is only an estimate.
Prompt 4
Help me troubleshoot an XPowersLib not found error when compiling this Arduino sketch.
Prompt 5
Which OBD-II PIDs does this project read, and could I add support for another sensor?

Frequently asked questions

wtf is blueline-one?

DIY firmware for a custom ESP32 based car gauge that shows live engine data from a car's diagnostics port on a round touchscreen.

What language is blueline-one written in?

Mainly C. The stack also includes C, ESP32-S3, Arduino.

What license does blueline-one use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is blueline-one to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is blueline-one for?

Mainly general.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.