User Tools

Site Tools


haussteuerung:esphome:ws_addons

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

haussteuerung:esphome:ws_addons [2025/12/16 13:33] – created dominikhaussteuerung:esphome:ws_addons [2025/12/16 14:36] (current) dominik
Line 117: Line 117:
       return abs(id(bv).state - id(bms0_total_voltage).state);       return abs(id(bv).state - id(bms0_total_voltage).state);
 </code> </code>
 +
 +
 +
 +====== Optimierung der ESPHome-Wetterstation ======
 +
 +Diese Seite fasst alle Verbesserungsvorschläge und Optimierungen zusammen, die in einer ausführlichen Diskussion mit Grok für die ESPHome-Konfiguration der Outdoor-Wetterstation (basierend auf ESP32-S3, Victron MPPT, JBD BMS, diversen Sensoren) erarbeitet wurden.
 +
 +Ziel ist es, die Konfiguration übersichtlicher, effizienter, stromsparender und informativer zu machen – bei gleichzeitiger Reduktion der Entity-Anzahl in Home Assistant und Erhöhung der meteorologischen Aussagekraft.
 +
 +===== 1. Allgemeine Struktur und Wartbarkeit =====
 +
 +  * **accuracy_decimals** ohne Anführungszeichen definieren (z. B. ''accuracy: 2'' statt ''"2"'').
 +  * Auskommentierte und ungenutzte Blöcke komplett entfernen:
 +    * ADS1115-Hub (wird nicht mehr benötigt, da interner ADC für Windrichtung verwendet wird)
 +    * SHT3x-Sensor (falls nicht verbaut)
 +    * Alte GPIO-Pins für „normalen“ ESP32
 +    * Auskommentierte Berechnungen (Wind Chill, Heat Index, Dew Point) – stattdessen aktivieren (siehe Abschnitt 3)
 +  * Pin-Definitionen konsolidieren – nur die aktuellen ESP32-S3-Pins behalten.
 +  * INA3221 erweitern, falls weitere Kanäle (1 oder 2) für zusätzliche Strommessungen genutzt werden können.
 +
 +===== 2. Reduktion der Sensoren (weniger Entities, weniger Load) =====
 +
 +Die aktuelle Config erzeugt sehr viele Entities – besonders durch JBD BMS und Victron. Viele davon sind redundant oder nur für Debugging relevant.
 +
 +**JBD BMS (von ~40 auf ~15–20 Sensoren reduzieren):**
 +
 +Behalte nur das Wesentliche:
 +  * State of Charge (%), Capacity Remaining + Nominal Capacity
 +  * Total Voltage, Average/Min/Max/Delta Cell Voltage + Min/Max Voltage Cell
 +  * Current (inkl. average_current), Power, Charging/Discharging Power
 +  * Temperaturen 1–3
 +  * Binary Sensoren: Balancing, Charging, Discharging
 +  * Switches: Charging/Discharging
 +  * Remaining Charging/Discharging Time (Packages)
 +  * Errors Bitmask + Balancer Status Bitmask (als diagnostic)
 +
 +**Entfernen:**
 +  * Einzelne Cell Voltage 1–4 (Delta/Min/Max reichen)
 +  * Alle einzelnen Error Counts (Short Circuit, Overcurrent etc.)
 +  * Operation Status Bitmask, Software Version, Battery Strings, Charging Cycles, Battery Cycle Capacity
 +
 +**Victron MPPT (von ~20 auf ~12 reduzieren):**
 +
 +Behalte:
 +  * Panel Voltage/Power/Current
 +  * Battery Voltage/Current
 +  * Yield Today/Yesterday/Total
 +  * Max Power Today/Yesterday
 +  * Error Code + Charging Mode (Text)
 +  * FVE Prozent + Tages Medianwert
 +
 +**Entfernen/Ersetzen:**
 +  * Load Current (redundant)
 +  * Day Number
 +  * Batterie-Prozent aus Voltage (ungenau – besser SOC vom BMS nutzen)
 +  * Tracking Mode
 +
 +**Weitere Reduktionen:**
 +  * Interne Sensoren (z. B. raw Hz, total_pulses, wind_direction_raw_voltage) auf ''internal: true'' setzen.
 +  * Debug-Sensoren (loop_time etc.) nur bei Bedarf aktivieren.
 +
 +===== 3. Neue und aktivierte berechnete Sensoren =====
 +
 +**Pflicht-Aktivierungen (aus auskommentierten Blöcken):**
 +  * Taupunkt (Dew Point) – Magnus-Formel
 +  * Wind Chill (Windkühle)
 +  * Heat Index (gefühlte Temperatur bei Hitze)
 +
 +**Neue Sensoren hinzufügen:**
 +
 +  * **Absolute Feuchte** (built-in Component – präziser als manuelles Template):
 +<code yaml>
 +- platform: absolute_humidity
 +  temperature: aht_temp
 +  humidity: aht_hum
 +  name: "${WetterCalc} Absolute Feuchte"
 +</code>
 +
 +  * **Gefühlte Temperatur (kombiniert „Feels Like“)** – schaltet je nach Bedingung zwischen realer Temp, Wind Chill und Heat Index:
 +    * Template-Sensor mit Bedingungen (T < 10°C + Wind → Wind Chill; T > 27°C → Heat Index; sonst reale Temp)
 +
 +  * **Täglicher Niederschlag** (automatischer Reset um Mitternacht):
 +<code yaml>
 +- platform: integration
 +  source_id: niederschlag_total_mm
 +  name: "${Wetter} Niederschlag heute"
 +  time_unit: day
 +</code>
 +
 +  * **Solar-Effizienz Heute** (aktuelle Power im Verhältnis zur Panel-Nennleistung, z. B. 75 W):
 +<code yaml>
 +- platform: template
 +  name: "${SmartSolar} Effizienz Heute"
 +  unit_of_measurement: "%"
 +  lambda: |-
 +    return (id(panel_power).state / 75.0) * 100.0;
 +</code>
 +
 +  * Wind Gust standardisieren: Die „+10 km/h“-Bedingung entfernen → reiner 10-Minuten-Maximum-Gust (meteorologisch korrekter).
 +
 +===== 4. Effizienz und Stromspar-Optimierungen =====
 +
 +  * Update-Intervalle anpassen:
 +    * Windrichtung-ADC von 1s auf 5s (Richtung ändert sich langsam)
 +    * JBD BMS von 2s auf 10s
 +    * Bodentemperaturen auf 600s
 +    * WiFi-Signal auf 1800s
 +  * I²C-Frequenz von 50 kHz auf 100 kHz erhöhen (schneller, immer noch sparsam).
 +  * Victron-Throttle von 10s auf 30s erhöhen.
 +  * Viele Sensoren mit ''exponential_moving_average'' oder anderen Filtern glätten, um Updates zu reduzieren.
 +
 +===== 5. WiFi Power Save Mode =====
 +
 +Aktuell: ''power_save_mode: none'' (maximale Stabilität, höherer Verbrauch).
 +
 +**Empfehlung:**
 +  * Auf ''light'' wechseln (ESP32-Default) oder die Zeile komplett entfernen → moderates Stromsparen bei guter Stabilität.
 +  * Testen: 1–2 Wochen beobachten (Akku-Verlauf, Disconnections).
 +  * Fallback: Bei Problemen zurück zu ''none''.
 +
 +===== Fazit =====
 +
 +Durch diese Änderungen wird die Station:
 +  * Übersichtlicher (ca. 50 % weniger Entities)
 +  * Informativer (professionelle meteorologische Werte wie Taupunkt, Absolute Feuchte, Feels Like)
 +  * Stromsparender (besonders wichtig bei Solarbetrieb)
 +  * Wartbarer (sauberer Code)
 +
 +Die Vorschläge sind schrittweise umsetzbar – am besten mit Versionskontrolle testen und Akku-Verhalten beobachten.
haussteuerung/esphome/ws_addons.txt · Last modified: by dominik

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki