Getting Started
What is OpenRemap?
OpenRemap is an ECU binary intelligence toolkit: it identifies ECU firmware files, finds every byte a tune changed, packs the change into a portable recipe, and applies it to another binary of the same family — all offline, scriptable, and fully open.
It does not flash ECUs and does not correct checksums. It works alongside your flashing and checksum tools.
→ The full story: About OpenRemap
Who are you?
| You are… | Start here |
|---|---|
| 🏁 Just trying it out | Install (2 min) → Quick start (5 min) |
| 🔧 Tuning a car | Quick start → identify → health → cook / tune |
| 💻 Building tools on top | Developer setup → Architecture → Contributing |
The five-minute path
- Install —
uv tool install openremap(full setup) - Identify a file —
openremap identify stock.bin(what to look for) - Health-check it —
openremap health stock.bin(checksums, axes, map counts, VINs — details) - Cook + tune — follow the quick start walkthrough (stock vs tuned → recipe → applied target)
- Fix checksums — mandatory after any modification (which schemes OpenRemap verifies)
Command map
Every command supports --help. Full references live on each command's
page (simple + advanced).
| Command | What it does |
|---|---|
identify |
Read one binary — manufacturer, family, software, confidence |
health |
One-shot safety check — checksums, axes, map counts, VINs |
scan |
Batch-classify a folder of binaries |
checksum |
Verify known checksum schemes (detection only, no correction) |
scan-maps |
Find calibration maps and axes structurally |
diff-maps |
Compare two binaries at map level |
scan-vins |
Locate and score VIN candidates |
layout |
Flash-layout block map — code/calibration/erased/ident regions |
cook |
Diff stock vs tuned → .remap recipe |
merge |
Combine two recipes, validated against a common stock |
tune |
Validate → apply → verify, one shot |
validate |
Individual validation steps (before / check / after) |
audit |
The receipt check — do stock, tuned, recipe belong together? |
families |
List supported ECU families |
commands |
Cheat-sheet — one line per command |
workflow |
In-terminal step-by-step guide |
Key concepts
| Concept | What it is |
|---|---|
| How it works | The full pipeline — identify → health → checksum → cook → merge → tune → validate → audit |
| Confidence scoring | How identification confidence tiers work — High → Unknown |
| Recipe format | The .remap spec (schema 4.5 — volatile-aware) — byte-level changes + map annotations + identity |
| Architecture | How the pieces connect — domains, extractor registry, Rust core |
Supported ECUs
| Manufacturer | Families |
|---|---|
| Bosch | 18 — EDC1 … MD1, ME7, Motronic, LH-Jetronic |
| Siemens | 6 — Simtec 56 … EMS2000 |
| Delphi | 2 — Multec, Multec S |
| Magneti Marelli | 4 — IAW, MJD |
| Denso | 4 — SH7055, SH7058, SH72531, EE20 diesel (Subaru) |
| Hitachi | 1 — SH72546 (Subaru) |
⚠ Read this before flashing
OpenRemap produces modified binaries — it never flashes them. What happens to the file next is your responsibility:
- Checksum correction is mandatory after any modification — flashing an incorrect checksum can brick an ECU.
- Professional tuner review — a recipe tells you what changed, not whether those changes are safe for your engine.
Where to get help
openremap workflow— the in-terminal guideopenremap commands— the cheat-sheet- Issues and discussion: the project's GitHub repository