fix(P4): Verlaufs-Historie ins PSRAM verlagern — interner RAM lief über #4

Merged
thomas merged 1 commits from fix/verlaufs-historie-ins-psram into main 2026-07-12 21:17:14 +02:00
Owner

Build von 1.0.11 brach ab: „Globale Variablen verwenden 351284 Bytes (107 %)" — die 60-min-Ringpuffer der Verlauf-Seite (~29 KB) lagen als statische Arrays im internen RAM, der schon vorher zu ~98 % voll war.

Fix: Historie als ein zusammenhängender Block (struct ChartHist) per heap_caps_malloc(MALLOC_CAP_SPIRAM) im PSRAM, Fallback MALLOC_CAP_8BIT; gleiche Stelle wie die LVGL-Framebuffer. chart_sample_cb/chart_redraw prüfen den Zeiger — schlägt die Allokation fehl, bleibt das Chart leer statt abzustürzen.

Damit liegt der statische Verbrauch wieder auf 1.0.10-Niveau (~98 %). Bitte einmal neu kompilieren.

🤖 Generated with Claude Code

Build von 1.0.11 brach ab: „Globale Variablen verwenden 351284 Bytes (107 %)" — die 60-min-Ringpuffer der Verlauf-Seite (~29 KB) lagen als statische Arrays im internen RAM, der schon vorher zu ~98 % voll war. Fix: Historie als ein zusammenhängender Block (`struct ChartHist`) per `heap_caps_malloc(MALLOC_CAP_SPIRAM)` im PSRAM, Fallback `MALLOC_CAP_8BIT`; gleiche Stelle wie die LVGL-Framebuffer. `chart_sample_cb`/`chart_redraw` prüfen den Zeiger — schlägt die Allokation fehl, bleibt das Chart leer statt abzustürzen. Damit liegt der statische Verbrauch wieder auf 1.0.10-Niveau (~98 %). Bitte einmal neu kompilieren. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
thomas added 1 commit 2026-07-12 21:17:12 +02:00
Die 60-min-Ringpuffer der Verlauf-Seite (~29 KB) lagen als statische Arrays
im internen RAM und sprengten das Board-Limit (Linker: 107 % dynamischer
Speicher, Build brach ab). Historie jetzt als ein Block per heap_caps_malloc
im PSRAM (Fallback MALLOC_CAP_8BIT), wie die LVGL-Framebuffer; alle Zugriffe
gegen Allokationsfehler abgesichert (Chart bliebe dann leer).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
thomas merged commit 92ef4fbfb6 into main 2026-07-12 21:17:14 +02:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: thomas/Dual-PID#4