Hier werden die aktuellen Research Erkenntnisse festgehalten
  • Java 90.7%
  • HTML 8.2%
  • PostScript 0.9%
  • Python 0.2%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Timo Erdbrügger 096387ea61 docs: Insolvenz-Aussage durch beobachtbare Fakten ersetzt (Status des Unternehmens unbekannt)
README + CLAUDE: 'Aiways Europe ist insolvent' -> nur noch 'Backend-Server abgeschaltet, App funktioniert nicht mehr'.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011shUomooZ2agMQJjKmjHpi
2026-09-09 21:02:35 +02:00
docs rebrand/cleanup: WLAN-SSID -> AiwaysCommunity; externe openaiways-Verweise entfernt 2026-09-09 20:56:28 +02:00
reference rebrand/cleanup: WLAN-SSID -> AiwaysCommunity; externe openaiways-Verweise entfernt 2026-09-09 20:56:28 +02:00
tools rebrand/cleanup: WLAN-SSID -> AiwaysCommunity; externe openaiways-Verweise entfernt 2026-09-09 20:56:28 +02:00
.gitattributes reference/apk-jadx: 8 Head-Unit-APK jadx-Dekompilate + Referenz-Housekeeping 2026-08-27 10:05:30 +02:00
.gitignore Aiways U5 Reverse-Engineering: Forschung, Skripte, Referenzen 2026-08-26 22:45:00 +00:00
CLAUDE.md docs: Insolvenz-Aussage durch beobachtbare Fakten ersetzt (Status des Unternehmens unbekannt) 2026-09-09 21:02:35 +02:00
INDEX.md rebrand: OpenAiways -> AiwaysCommunity (Prosa + Referenz-Package) 2026-09-09 20:21:09 +02:00
README.md docs: Insolvenz-Aussage durch beobachtbare Fakten ersetzt (Status des Unternehmens unbekannt) 2026-09-09 21:02:35 +02:00
STATUS.md Aiways U5 Reverse-Engineering: Forschung, Skripte, Referenzen 2026-08-26 22:45:00 +00:00

Aiways U5 — Reverse Engineering & Reimplementierung

Die offiziellen Aiways-Backend-Server sind abgeschaltet und die originale Aiways-/AICHI-App funktioniert nicht mehr. Dieses Repository sammelt die komplette Reverse-Engineering-Arbeit, um Steuerung und Telemetrie des Aiways U5 ohne Herstellerinfrastruktur wiederherzustellen — offline, lokal, self-hosted.

⚠️ Sicherheits- und Rechtshinweis Diese Unterlagen beschreiben Zugriffe auf das eigene, selbst besessene Fahrzeug. Sie enthalten fahrzeug-/geräteindividuelle Identifier, Werks-Default-Zugänge und Schlüsselmaterial. Das Repository ist privat zu halten. Kein Zugriff auf fremde Fahrzeuge. Eingriffe erfolgen auf eigenes Risiko und können Garantie, Zulassung und Fahrzeugsicherheit berühren.


Die Kurzfassung — was funktioniert schon

Fähigkeit Weg Status
Root auf der TBox unsignierte fota.sh via FTP (root:oelinux123) + FOTA-Wakeup ✅ verifiziert
Root/adb auf der Head-Unit OEM-Image ohne dm-verity, Connect-APK ✅ verifiziert
Fahrzeugsteuerung (BLE) A001-Auth + B001 (V1) — Türen, Fenster, Blinker, Hupe live am Auto ✅ verifiziert
Self-Provisioning eigenes RSA-Keypair als key_<btkeyId> auf die TBox schreiben ✅ offline bestätigt
Telemetrie lesen (SoC, Odo, Zellen…) cache_data-Ringpuffer per FTP + Decoder ✅ verifiziert
Steuerung/Telemetrie ohne Modem alles läuft lokal über TBox-WLAN / BLE / Port 50000 ✅ verifiziert
Live-Push-Telemetrie (GB32960) gbsetaddr auf lokale IP ⛔ blockiert durch Network-up-Gate

Ausführlicher Stand, Roadmap und offene Blocker: STATUS.md. Vollständiges annotiertes Inhaltsverzeichnis: INDEX.md.


Systemüberblick

        ┌─────────────┐   BLE (A001/B001, V1)   ┌──────────────────────────┐
Handy / │  BLE-Client │◄───────────────────────►│  TBox (AG35/INTEST)      │
Laptop  │ (aichi_ble) │                          │  - Auth: key_<btkeyId>   │
        └─────────────┘                          │  - Port 50000 "Assist"   │
        ┌─────────────┐   WLAN-AP / FTP / :50000 │  - FTP root:oelinux123   │
        │  Laptop /   │◄───────────────────────► │  - cache_data (Telemetrie)│
        │  ESP32/LTE  │                          │  - shell_cli / fota.sh   │
        └─────────────┘                          └────────────┬─────────────┘
                                                    CAN / SPI  │ scom 0xA1
                                                 ┌─────────────▼───────────┐
        ┌─────────────┐   USB0 / :50000 Relay    │  MCU (Body/CAN-Gateway) │
        │  Head-Unit  │◄────────────────────────►│  MCU_J304ACECALL09      │
        │  i.MX6 / A4.4│                          └─────────────┬───────────┘
        └─────────────┘                                CAN-Bus  │
                                                 ┌───────────────▼──────────┐
                                                 │  Fahrzeug (BCM, BMS, …)  │
                                                 └──────────────────────────┘

Repository-Struktur

.
├── README.md            ← diese Datei
├── INDEX.md             ← annotiertes Inhaltsverzeichnis aller Dokumente
├── STATUS.md            ← aktueller Projektstand, Roadmap, offene Blocker
├── docs/
│   ├── 01-headunit/     ← Head-Unit (i.MX6): System-Image, Root, USB-Update, WLAN
│   ├── 02-tbox/         ← TBox: Port-50000-Assist, Opcodes, Signal-Store, 4G-Pfad
│   ├── 03-mcu/          ← MCU: Firmware, Shell, scom-0xA1, SPI-Capture, Write-Pfad
│   ├── 04-protokolle/   ← BLE-Spec, A001-Handshake, Auth & Provisioning, IPC
│   ├── 05-telemetrie/   ← CAN/DBC-Decode, INX-Parser, cache_data, Leseseite
│   ├── 06-app-und-architektur/ ← App-Ersatz, Community-APK, Ziel-/Produktarchitektur
│   └── 07-tests-und-logs/      ← Live-Testprotokolle am Fahrzeug
├── tools/
│   ├── python/          ← BLE-Client, Provisioning, Port-50000-Client, GAMI-Tool
│   └── shell/           ← Head-Unit-/TBox-Skripte (Relay, Probe, fota.sh, Bootstrap)
└── reference/           ← dekompilierte / Referenz-Quellen
    ├── aiwaysapp-Protocol.java   ← BLE-V1-Referenzimplementierung
    ├── decomp/          ← Ghidra-C-Dekompilate: tbox_app, mcu_app, libuccore, libsysi4tbox (LFS)
    ├── apk-jadx/        ← jadx-Java-Dekompilate der 8 Head-Unit-APKs (Adayo/Haoke)
    ├── tbox_port50000_report.txt ← Port-50000-Analysebericht
    ├── imx6.ini         ← GAMI-USB-Update-Konfiguration (Referenz)
    └── EXTERNAL-ARTIFACTS.md      ← Index der NICHT eingecheckten Firmware/Dumps (~/artifacts/)

Git-LFS: Große Text-/Binär-Exporte unter reference/decomp/ (C) und reference/apk-jadx/ (Bild-/Media-Assets) liegen in Git-LFS. Nach dem Klonen einmal git lfs install && git lfs pull ausführen, sonst erhält man nur Pointer-Dateien. Firmware-Images und Roh-Dumps sind nicht im Repo — siehe reference/EXTERNAL-ARTIFACTS.md.

Werkzeuge auf einen Blick

Datei Zweck Abhängigkeiten
tools/python/aichi_ble_client.py BLE-Steuerung/Telemetrie (A001/B001/V1/V2, AES-CBC) bleak, cryptography
tools/python/aichi_provision.py Self-Provisioning: RSA-Keypair + key_<id> erzeugen/pushen cryptography
tools/python/tbox50000.py Port-50000-Assist-Client (7E/XOR-Framing, Shell 0x301) stdlib
tools/python/gami.py GAMI-Container der Head-Unit ent-/packen (Checksummen) stdlib
tools/shell/aichi_fota_wifi_dev.sh fota.sh-Payload: TBox-WLAN-AP + Root-Shell BusyBox (on-device)
tools/shell/aichi_bootstrap.sh HU→TBox Bootstrap-Provisioning per FTP BusyBox (on-device)
tools/shell/hu_relay.sh HU-TCP-Relay Laptop→TBox:50000 BusyBox (on-device)
tools/shell/hu_probe.sh Schnelltest Port 50000 von der HU aus BusyBox (on-device)

Statuslegende

  • ✅ verifiziert — am echten Fahrzeug oder per Selbsttest byte-genau bestätigt
  • 🟡 teilweise verifiziert — statisch (Ghidra/Decompile) belegt, Live-Test offen
  • 🔵 Hypothese — Arbeitsannahme, noch nicht belegt

Diese Dokumentation wurde im Rahmen der Aiways-U5-Recherche zusammengetragen und strukturiert. Chronologie und Detailtiefe der einzelnen Funde stehen in den jeweiligen Dokumenten unter docs/.