# VanAlign Pro – Neigungsmessung für den Camper ESP32-S3 mit MPU6050, der Längs- und Querneigung des Fahrzeugs misst und über Bluetooth bereitstellt. Zum Ausrichten beim Parken: die Anzeige zeigt, welche Seite höher steht und wie weit es noch ist. > Teile dieses Projekts wurden mit KI-Unterstützung erstellt. ## Firmware `esp32_ble.yaml` – die einzige Datei, die für den Betrieb gebraucht wird. ```bash cd firmware/vanalign esphome run esp32_ble.yaml ``` ### Bluetooth-Schnittstelle Dienst `2a24b789-7aab-4535-af3e-ee76a35cc42d` (wird beworben, das Gerät ist darüber auffindbar). | Charakteristik | UUID (Ende) | Zugriff | Inhalt | |---|---|---|---| | Pitch | `…3424` | lesen, benachrichtigen | Längsneigung, Float32 little-endian, Grad | | Roll | `…3425` | lesen, benachrichtigen | Querneigung, Float32 little-endian, Grad | | Offsets | `…3426` | lesen, benachrichtigen | zwei Float32: die gespeicherten Kalibrierwerte | | Kalibrieren | `…3427` | schreiben | ein Byte: `0` setzt zurück, alles andere kalibriert | Positiver Pitch heißt: das Heck steht höher. Positiver Roll: die rechte Seite steht höher. ### Kalibrierung Fahrzeug eben stellen, dann ein beliebiges Byte ungleich `0` auf `…3427` schreiben – oder in Camper Monitor auf *Auf aktuelle Lage kalibrieren* tippen. Die Offsets werden dauerhaft gespeichert und überstehen einen Neustart. ## Was sich gegenüber 1.0 geändert hat * **Kalibrierung funktioniert jetzt überhaupt.** Die Charakteristik `…3427` war zwar beschreibbar, hatte aber keine Aktion hinterlegt und tat nichts. Der Kalibrier-Knopf war nur über den Webserver erreichbar, der auskommentiert ist – kalibrieren war damit auf keinem Weg möglich. * **Die Werte werden gesendet, statt abgefragt.** Pitch und Roll haben jetzt `notify`. Vorher musste der Client im Sekundentakt lesen, was für eine Wasserwaage zu träge ist. * **Die gespeicherten Offsets sind auslesbar**, sodass ein Client zeigen kann, ob überhaupt schon kalibriert wurde. * **Der ESP-NOW-Rest ist entfernt.** Er schickte bei jedem einzelnen Messwert ein `"hallo"` an eine fest eingetragene MAC-Adresse. Die UUIDs sind unverändert, die vorhandene WebApp läuft weiter. ## Clients * **Camper Monitor** (iOS) – die App in diesem Projekt. Geräteart *Nivellierung*: grafische Libelle, Kalibrierung aus der App, zusammen mit den übrigen Geräten im Fahrzeug. * Die ursprüngliche WebBLE-Oberfläche liegt weiterhin im Projekt `VanAllign-Pro` unter `WebAPP/`. ## Weitere Dateien Unter `experimente/` liegen `esp32_switch.yaml` (Umschalten zwischen WLAN und BLE) und `esp32_EspNow-rec.yaml` (ESP-NOW-Empfänger). Beide gehören nicht zum Neigungsmesser und werden für den Betrieb nicht gebraucht – sie sind nur aufgehoben, weil sie Ideen aus der Entstehungszeit festhalten. ## Herkunft Übernommen aus dem eigenständigen Projekt `VanAllign-Pro`. Dort liegen weiterhin die WebBLE-Oberfläche (`WebAPP/`, durch die iOS-App abgelöst) und unter `bin/` die gebauten Binärdateien der Version 1.0. ## Voraussetzungen * ESP32-S3, MPU6050 an I²C (SDA GPIO8, SCL GPIO9) * ESPHome (geprüft mit 2026.6.5)