You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
🚐 CamperUI Release V1.2.1
Mit Version V1.2.1 erhält CamperUI ein umfassendes Upgrade: Deutlich gesteigerte Render-Performance (stabile 60 FPS ohne Performance-Overlay), optimiertes Tableisten-Scrollen, vollständige Thread-Sicherheit sowie Fehlerbehebungen bei der VanPi-Integration.
🚀 Highlights & Neuerungen
⚡ 1. Render-Performance & 60 FPS Boost
Zero Software-Shadows: Rechenintensive Software-Weichzeichner und Alpha-Schatten wurden vollständig durch ein modernes, flaches Kontur-Design ersetzt. Dies entlastet die CPU und den PSRAM-Bus massiv.
Double-Buffering im internen SRAM: 2x 20 Zeilen interner Arbeitsspeicherpuffer – LVGL rendert Frame-Streifen parallel, während der vorherige Streifen per DMA ins PSRAM geschrieben wird.
Adaptives Main-Loop Pacing: Bei aktiven Animationen oder Touch-Eingaben wird das Loop-Delay dynamisch übersprungen – für butterweiche Interaktionen ohne Ruckeln.
Nicht-blockierendes Haptik-Feedback: Der Touch-Buzzer nutzt nun einen asynchronen Puls statt blockierender delayMicroseconds()-Schleifen im UI-Thread.
Clean Production Build: Sämtliche internen FPS- und Performance-Monitore sind in der Produktionsversion deaktiviert.
🛡️ 2. Stabilität & Thread-Sicherheit
Cross-Core State-Sicherheit: Schutz des globalen Gerätestatus gegen parallele Zugriffe aus UI- und HTTP-Task mittels rekursivem FreeRTOS-Mutex (StateLockGuard).
Flash-Schonung & RGB-Stabilität: Entfernung unnötiger state_save()-Flash-Schreibvorgänge bei schnellen Schalter-, Slider- und Button-Betätigungen. Panel-Resyncs wurden entkoppelt, wodurch Bildflackern und VSYNC-Drifts eliminiert werden.
Schwung & Trägheit (Momentum): Die untere Tableiste gleitet nach einem "Flick" mit natürlicher Trägheit weiter und stoppt nicht mehr abrupt.
Halbierter Scroll-Schwellenwert (4 px): Wischgesten werden bereits ab 4 Pixeln Bewegung erkannt, was das Scrollen sofort ansprechen lässt.
3-Stufen-Klickschutz: Versehentliches Umschalten von Tabs während des Scrollens wird durch Prüfung von Container-Verschiebung, Scroll-Status und Fingerweg (> 6 px) zuverlässig verhindert.
📶 4. VanPi WiFi-Relais Fix
Korrektes Namens-Mapping: Die Namen von WLAN-Relais (WifiRelay1 bis WifiRelay8) werden nun zuverlässig aus /wrelay gelesen und in der UI angezeigt (z. B. "Testwifi").
Robuster HTTP-Stream-Empfang: Behebung von Aussetzern bei chunked HTTP-Übertragungen aus Node-RED.
Flexible Sensorzuordnung: Alle 4 Sensoren (Außen, Innen, Zusatz 1, Zusatz 2) können aus bis zu 13 Quellen (Kabel- & Ruuvi-Tags) frei konfiguriert werden.
📦 6. Speicher-Footprint & Bereinigung
Ungenutzte LVGL-Module, Demo-Code und überflüssige Schriftgrößen wurden deaktiviert, um Flash- und SRAM-Ressourcen für zukünftige Erweiterungen freizuhalten.
💾 Installation & Update
Web-OTA (Empfohlen): Im Browser http://<IP-des-Displays>/update aufrufen und die Datei CamperUI-V1.2.1.bin hochladen.
USB-Erstinstallation:CamperUI-V1.2.1-merged.bin mit dem ESP Flash Tool oder Arduino IDE ab Offset 0x0 flashen.