ECU Studio AI ist eine Open-Source-Kalibrier-Workbench für Motor- und Getriebesteuergeräte.
Sie liest den Programmcode des Steuergeräts, findet Kennfelder samt Achsen und sagt dir bei jedem Fund,
wie sicher er ist – gemessen an echten Herstellerdaten.
Kein Python nötig · Deutsch & English · Updates mit Prüfsumme und Rollback · Die Originaldatei wird nie verändert
🇬🇧 English summary
ECU Studio AI is an open-source calibration workbench for engine and transmission control units (Windows, GPL-3.0).
- Finds calibration maps without a definition – from code references (C16x, TriCore, 68k, SH-2, HC11, 8051), record headers with axes, and structure analysis. Every candidate names its kind of evidence (code, record structure or data pattern only), never an invented percentage.
- Works with the definitions you have: TunerPro XDF, ASAM A2L / DAMOS (with EPK software-ID check), RomRaider XML, CSV.
- Edit safely: hex, table, heatmap, 3D and curve views, ORI/MOD comparison, checksum verification and correction (only where the algorithm is proven on the original), flash preflight. The original file is never changed.
- Measured, not promised: e.g. Siemens MSD85 279 of 1026 maps found exactly at 81 % precision on held-out test data; all results per ECU in the support matrix.
- English interface: Einstellungen → Sprache / Language → English (defaults to the system language).
- Deliberately out of scope: automatic "stage 1" tuning, disabling emission or protection functions, flash approval.
⬇ Download for Windows – portable ZIP or installer, no Python needed. The rest of this page is in German.
|
Kennfelder, Kennlinien und Achsen |
Jeder Fund nennt seinen Beweis |
Bearbeiten ohne Risiko für das Original |
| 463 von 703 | 279 von 1026 | 0 | 6 | 650+ |
|---|---|---|---|---|
| Kennfelder exakt gefunden Bosch EDC17CP09 · Hersteller-A2L |
Kennfelder exakt auf Testdaten Siemens MSD85 · nie zum Einstellen genutzt |
Fehlalarme auf Zufallsdaten, gelöschtem Flash, Nullen |
Definitionsformate XDF · A2L · DAMOS · RomRaider · CSV · Kennfeldpaket |
automatische Tests bei jeder Änderung |
Ein Klick – Kennfelder samt Achsen, jeweils mit Beweisart und gemessener Konfidenz.
📸 Weitere Ansichten
| Kennfeldtabelle (hell) | Heatmap (dunkel) | 3D-Ansicht (dunkel) |
|---|---|---|
![]() |
![]() |
![]() |
| Softwarestand-Vergleich | Kennfeldpaket | English UI |
![]() |
![]() |
![]() |
Alle Aufnahmen mit synthetischen Demo-Dateien aus examples/demo.
Die meisten Werkzeuge suchen nach „glatten Flächen“. ECU Studio AI fragt zuerst: Wo greift der Programmcode auf Daten zu – und mit welchen Achsen? Jeder Fund wird nach seiner stärksten Beweisart eingestuft. Die App zeigt die Art des Belegs, keine Prozentzahl:
| Belegstufe | Beweisart | Was gefunden wird |
|---|---|---|
| 🟢 Code-Beleg | Code-Verweis mit oder ohne Achsen | Der Programmcode adressiert die Tabelle (TriCore-Aufrufe: experimentell) |
| 🟡 Strukturbeleg | Kopf-Datensatz, Achse aus Datensatz, Achsen-Array | nx, ny, X-Achse, Y-Achse, Werte bzw. Anzahl + steigende Stützstellen |
| 🔴 Datenmuster-Vermutung | nur Zeilenabstand bzw. Raster | glatte Fläche ohne weiteren Beleg – in der Prüfliste als eigene, einklappbare Gruppe |
Die Stufe ist keine Wahrscheinlichkeit und nicht unabhängig validiert. Bis 1.18.2 standen an jeder Beweisart gemessene Trefferquoten; sie stammen von wenigen Familien und zum Teil aus Dateien ohne geklärte Herkunft und werden seit 1.19.0 nicht mehr angezeigt (Historie und Herkunft: docs/MODELLKARTE.md).
flowchart LR
BIN[BIN-Datei] --> P{Profil<br/>bekannt?}
P -- ja --> W[Kalibrierfenster]
P -- nein --> M[Code/Daten-<br/>Trennung]
W --> E
M --> E
subgraph E[Beweise sammeln]
C[Code-Verweise<br/>C16x · TriCore · 68k · SH-2 · HC11 · 8051]
H[Datensätze mit<br/>Anzahl und Achsen]
A[Achsen-Arrays]
D[Datenmuster]
end
E --> R[Lesarten<br/>abwägen]
R --> K[Belegstufe:<br/>Code · Struktur · Datenmuster]
K --> UI[Katalog · Graph<br/>Signal-Tracing]
Note
Alle Funde sind Geometrie-Hypothesen: Start, Größe, Datentyp und Achsen. Name, Einheit und Funktion kommen nur aus einer passenden Definition oder deiner eigenen Prüfung – nie aus einer Vermutung.
🧪 Neu in der Forschung: Kennfelder aus TriCore-Interpolationsaufrufen (Siemens MSD80)
Siemens-MSD80-Vollflashs sind Infineon-TriCore-Code. Die Interpolationsroutinen bekommen Tabellendaten und die Köpfe
beider Achsen direkt in Registern übergeben (a4 / a5 / a6), teils über Stackslots oder eine getrennte
Achsensuche. ECU Studio AI liest diese Aufrufe aus und leitet Zellbreite und Vorzeichen aus den Ladebefehlen der
Routine ab.
Auf einem MSD80-Vollflash mit Community-XDF (Entwicklungsdaten, Teilreferenz): 39 → 73 von 99 Kennfeldern exakt, Datentyp bei 62 davon richtig, gemeinsame Achsen 37/37, keine neuen Widersprüche zur Referenz. Ausführlich: docs/ANALYSE_2026-10-30.md.
Blind gemessen: Die Herstellerdefinition dient nur als Referenz, nie als Eingabe. Präzision steht nur dort, wo die Referenz vollständig ist. Test = Daten, die nie zum Einstellen der Erkennung verwendet wurden.
| Steuergerät | Referenz | Exakt erkannte Kennfelder | Präzision |
|---|---|---|---|
| Bosch EDC17CP09 | Hersteller-A2L | █████████████████░░░░░░░░░ 463 / 703 |
85 % |
| Siemens MSD85 · Test | Hersteller-A2L | ███████░░░░░░░░░░░░░░░░░░░ 279 / 1026 |
81 % |
| Siemens MSD80 · Test (6 Stände) | Hersteller-A2L | ███████░░░░░░░░░░░░░░░░░░░ 217–224 / 864 |
81–82 % |
| Bosch EDC16C35 | Hersteller-A2L | ███████████████████░░░░░░░ 283 / 387 |
81 % |
| Bosch EDC16C31 | Hersteller-A2L | ███████████████████░░░░░░░ 272 / 364 |
82 % |
| Siemens MS43 | Community-XDF | ██████████████░░░░░░░░░░░░ 197 / 379 |
79 % |
| BMW ME9.2.1 | Hersteller-A2L | ██████████░░░░░░░░░░░░░░░░ 170 / 460 |
72 % |
| Siemens MSD80 Vollflash · Entwicklung | Community-XDF (Teil) | ███████████████████░░░░░░░ 73 / 99 |
– |
| Denso SH-2 (Subaru) | RomRaider (Auswahl) | 147–178 | – |
Balken = Anteil exakt gefundener Kennfelder. Die MSD80/85-Teststände sind reine Kalibrierbereiche ohne Programmcode; die TriCore-Codeanalyse wirkt nur auf Vollflashs.
Keine Fehlalarme auf Nicht-Kennfelddaten: 9 Zufallsdateien bis 2 MB, komprimierte Daten, gelöschter Flash, Nullen → 0 Kandidaten. Auf reinem Programmcode (Windows-DLLs) entstehen Funde, alle eingestuft als Vermutung.
📈 Wie sich die Erkennung von Version zu Version verbessert hat: docs/PROGRESS.md
🔁 Selbst nachmessen:python -m ecu_studio.tools.benchmark_suite· Workflow: docs/REFERENCE_VALIDATION.md
| Familie | Prozessor | Code-Verweise | Achsen | Status |
|---|---|---|---|---|
| Bosch EDC17CP09 (BMW) | TriCore | – | ✅ | ✅ gemessen · Hersteller-A2L |
| Siemens MSD80 (BMW) | TriCore | ✅ Vollflash | ✅ | ✅ unabhängig gemessen · Hersteller-A2L |
| Siemens MSD85 (BMW) | ungeprüft | – | ✅ | ✅ unabhängig gemessen · Hersteller-A2L |
| Bosch EDC16C31 / C35 (BMW) | PowerPC | – | ✅ | ✅ gemessen · Hersteller-A2L |
| BMW ME9 / ME9.2.1 | PowerPC | – | ✅ | ✅ validiert · Hersteller-A2L |
| Siemens MS43 (BMW) | C167 | ✅ | ✅ | ✅ validiert · Standard-XDFs inklusive |
| Siemens MS41 / MS42 (BMW) | C167 | ✅ | ✅ | 🟡 gemessen, Erkennung gering (MS42: 22 von 213 exakt) |
| Siemens MS45 | C167 | – | ✅ | 🟡 gemessen, Erkennung gering (30 von 472 exakt) |
| Bosch ME7 / ME7.5 (Volvo, VAG) | C167 | ✅ | ✅ | ✅ gemessen |
| BMW MSS54 | CPU32 | – | ✅ | ✅ gemessen · vollständige XDF |
| GM P01 | 68k | ✅ | – | ✅ gemessen |
| Denso SH-2 (Subaru) | SH-2 | ✅ | ✅ | ✅ gemessen |
| Bosch M4.4 · Motronic · Renault Fenix | 8051 · 68HC11 | 🟡 | – | ✅ gemessen |
| Bosch MED17.1.62 · MED9 | TriCore · PowerPC | – | ✅ | 🟡 nur Teil-Referenz |
| Continental SIM2K (Hyundai) | TriCore | – | 🟡 | 🟡 gemessen, Erkennung unzureichend |
| Speeduino (Open Source) | AVR / ARM | – | – | 🟡 gemessen (14 Abstimmungen), ohne Definition schwach – .ini ist öffentlich |
| Delco Multec S („D98…“) | HC12 | – | – | ⚪ keine rechtlich nutzbaren Referenzdaten – Recherche |
| EDC17 (weitere) · MED17.5/17.7 · MG1 · MD1 · Simos · SID | – | – | – | ⚪ nicht validiert – keine rechtlich sicheren Referenzdaten öffentlich |
✅ gemessen · 🟡 teilweise · ⚪ noch keine Referenzdaten. Code-Verweise = Kennfeldadressen aus dem Programmcode. Alle Softwarestände und Zahlen: docs/ECU_SUPPORT.md · in der App: Hilfe → Unterstützte Steuergeräte …
🤝 Du hast ein Original mit passender, rechtmäßig nutzbarer Definition? Genau solche Messungen bringen das Projekt weiter – siehe CONTRIBUTING.md. Bitte keine Original-Firmware hochladen.
|
|
|
Drei Schritte – ohne Python, ohne Terminal.
| 1 | Neueste Version herunterladen – …-windows-x64.zip (portabel: entpacken, fertig) oder …-setup.exe (Installer, ohne Administratorrechte) |
| 2 | ECU-Studio-AI.exe starten |
| 3 | Datei → BIN öffnen … – zum Ausprobieren liegt unter examples/demo eine synthetische Demo-Datei |
⚠️ Windows meldet „Der Computer wurde durch Windows geschützt“?
ECU Studio AI ist noch nicht code-signiert, deshalb warnt Windows SmartScreen beim ersten Start.
- Im Fenster „Weitere Informationen“ → „Trotzdem ausführen“, oder
- vor dem Entpacken: Rechtsklick auf die ZIP → Eigenschaften → „Zulassen“ anhaken → OK.
Echtheit prüfen: Die SHA-256 der Datei (Get-FileHash <datei>) muss mit der .sha256-Datei des Releases
übereinstimmen; die Build-Herkunft belegt gh attestation verify <datei> --repo PCTestAdmin/ECU-Studio-AI.
🔄 Wie funktionieren die automatischen Updates?
| Schritt | Was passiert |
|---|---|
| Prüfen | Nur wenn du es willst: Einstellungen → Jetzt nach Updates suchen, oder automatisch beim Start und höchstens einmal täglich, sobald du Automatisch nach Updates suchen einschaltest (ab Werk aus). Abgefragt wird nur die GitHub-Releases-API, nur stabile Versionen; es wird nichts hochgeladen. Ohne Internet passiert still nichts. |
| Fragen | Fenster mit Version und Änderungen: Jetzt aktualisieren · Später erinnern · Diese Version überspringen. |
| Laden | Nur von den Releases dieses Repositorys; SHA-256 gegen die veröffentlichte Prüfsumme und GitHubs eigene Angabe. |
| Installieren | Erst nach dem Schließen (ungespeicherte Arbeit wird abgefragt) durch einen separaten Updater: jede Datei geprüft, eigene Dateien übernommen, alte Version gesichert. |
| Absichern | Selbsttest der neuen Version – bei einem Fehler automatisch zurück zur alten. Einstellungen → Vorherige Version wiederherstellen … holt sie jederzeit zurück. |
Projekte (%USERPROFILE%\.ecu_studio_ai) und Einstellungen liegen außerhalb des Programmordners und bleiben
unberührt. Protokoll: %LOCALAPPDATA%\ECUStudioAI\updates\update.log. Vor jeder Veröffentlichung wird genau dieser
Weg automatisch auf Windows Server 2022 und 2025 durchgespielt.
Warning
ECU Studio AI gibt keine Flashfreigabe. Checksummen werden nur mit einem geprüften, an die Original-Firmware gebundenen Profil verifiziert – Signaturen und weitere Prüfungen des Steuergeräts bleiben ungeprüft. Geänderte Dateien vor dem Flashen mit einem geeigneten Werkzeug prüfen. Eingriffe können Typgenehmigung, Abgasverhalten und Versicherungsschutz betreffen.
| ✅ Was ECU Studio AI tut | 🚫 Was es bewusst nicht tut |
|---|---|
| Original unverändert lassen – Änderungen als nachvollziehbare Ebene | Automatisches „Stage 1“-Tuning |
| Funde mit Art des Belegs zeigen | Abgas- oder Schutzfunktionen abschalten |
| Checksummen nur mit geprüftem Profil korrigieren | Flashfreigaben erteilen |
| Firmware lokal halten – sie wird nie hochgeladen | Kennfeldnamen erfinden |
- Keine Firmware im Repository – Tests verhindern Programmdateien, Archive und Firmware außerhalb von
examples/. - Fremddaten: mitgelieferte MS4x-XDFs (MS4x Dev Team) und rusEFI-Presets unter GPL-3.0, Herkunft in den
NOTICE.txtuntersrc/ecu_studio/recognition/data/. - Sicherheitslücken bitte vertraulich melden: SECURITY.md.
start_windows.bat :: Umgebung anlegen und Oberfläche starten (Python 3.10–3.13)
python -m pytest -q :: alle Tests
build_exe_windows.bat :: Windows-Paket bauen (ZIP + Installer, mit Tests)| 📚 Dokumentation | Aufbau des Quellcodes, Werkzeuge, Benchmarks, Forschungsberichte |
| 🚢 Release-Ablauf | Version, CHANGELOG, Tag – Build, Update-Test und Veröffentlichung laufen automatisch |
| 🧪 Beispiele | Synthetische Demo-Dateien und Vorlagen |
| 📝 CHANGELOG | Alle Änderungen |
| 🤝 Mitmachen | Besonders willkommen: Messungen an weiteren Steuergeräten |
→ Ganze Roadmap – jede neue Funktion mit kurzem Clip aus der App
ECU Studio AI · GPL-3.0 · Kalibrierwerkzeug ohne Herstellerbezug – kein Ersatz für eine fachliche Prüfung









