Star Coding
A professional desktop tool for managing ECU encodings on Mercedes-Benz vehicles.
What it is
Star Coding is a desktop application used by automotive technicians to apply, manage, and log ECU encodings on Mercedes-Benz vehicles. It provides a structured interface over raw OBD protocol communication, reducing errors and session time for workshop professionals.
The challenge
Automotive technicians were relying on generic OBD tools with no domain-specific logic, no session logging, and no encoding profiles. Every job required manual byte-level configuration — slow, error-prone, and impossible to audit after the fact.
The approach
I built a JavaFX desktop application backed by a local backend service. The app abstracts OBD protocol communication into human-readable encoding profiles. Technicians select a vehicle model and desired configuration; the app handles all byte-level ECU communication. Every session is logged with a timestamp, technician ID, and a diff of applied encodings.
How it's built
The frontend is built with JavaFX and Scene Builder, providing a native desktop experience. It communicates with a local Java backend service via an internal REST API. The backend handles OBD protocol framing, encoding profile management, and writes session logs to a local SQLite database.
What made it hard
OBD protocol abstraction
Raw OBD communication is byte-level and highly vehicle-specific. I built a profile system where each encoding is a named set of byte mutations — maintainable by non-engineers and extensible to new vehicle models without touching application code.
Write integrity
An incomplete ECU write can leave the vehicle in an inconsistent state. I implemented a transaction-style mechanism that verifies each byte after writing and rolls back automatically on failure, protecting the vehicle's control systems.
Offline-first
Workshops often have poor connectivity. The entire application — profiles, session logs, and history — operates fully offline, with optional cloud sync when a connection becomes available.
Tools & technologies
Desktop
- Java 17
- JavaFX
- Scene Builder
- FXML
Backend
- Java
- Spring Boot
- SQLite
- OBD Protocol
Tooling
- Maven
- JPackage
In the wild
Screenshots coming soon