ESPhome 2025.7 OTA breaking changes

Souhrn tématu

Aktualizace ESPhome na verzi 2025.7 vyžaduje změny v konfiguraci YAML, zejména přidání direktivy web_server pro OTA přes síť. Bez této úpravy ztratíte možnost aktualizovat firmware bezdrátově a budete nuceni používat USB kabel. Nová verze také přináší výrazné optimalizace paměti, lepší výkon díky aktualizovaným knihovnám a podporu nového hardwaru včetně LoRa a nových senzorů.
Mex
Příspěvky: 2017
Registrován: pát zář 29, 2023 4:12 am
Reputace:377
Lokalita: Brno
Systémové napětí: >48V

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od Mex »

Je to skoro přesně dvojnásobek.
Asi to tam to Arduino ukládá dvakrát. Sichr je sichr.
eman
Příspěvky: 2904
Registrován: pát srp 31, 2012 9:20 pm
Reputace:323
Lokalita: Praha
Systémové napětí: 48V
Chci prodávat energii: NE
Chci/Mám dotaci: NE

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od eman »

Chlapi, stalo se vám někdy, že ESPHome builder v HA pořád detekuje jeden modul jako zastaralý?
Mám jeden modul, kde byla verze 2025.3.3. Flashnul jsem jí přes OTA na poslední verzi, ale po pár sekundách se mi v builderu zobrazí jako 2025.3.3.
Přitom výpis logu je aktuální verze.
10kWp JJZ, 3x SmartSolar 150/85, 3xVictron MP II 5kVA v paralelním režimu, Smartshunt, Cerbo GX, 16x400Ah LiFePO4 s JK BMS B2A24S20P + JK BMS Invertor
kkristian
Příspěvky: 191
Registrován: pát kvě 06, 2022 10:39 am
Reputace:23
Lokalita: Galanta
Systémové napětí: 48V
Výkon panelů [Wp]: 5730
Kapacita baterie [kWh]: 14,3
Chci prodávat energii: NE
Chci/Mám dotaci: NE

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od kkristian »

Ano,stava sa mi to celkom casto,niekedy musim updatovat na 2x.
6x Longi 370 JV+ 6x Longi 370 JZ 4440 Wp, 3x430 Longi JZ 1290 Wp | Victron 150/35 MPPT | Must PV1800 Pro 5,2 kW | 16x LiFePo4 280Ah
rva
Příspěvky: 4845
Registrován: úte dub 23, 2013 10:21 am
Reputace:946
Lokalita: Kousek od Lysé nad Labem
Systémové napětí: 48V
Výkon panelů [Wp]: 46000
Kapacita baterie [kWh]: 40
Chci prodávat energii: NE
Chci/Mám dotaci: NE
Bydliště: Kousek od Lysé nad Labem

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od rva »

Dělo se mi to u jednoho z mnoha. Po několika dalších updatech to zmizelo.
_______________________________________________________________________
43 kWp, LiFePO4 62 kWh,
EPSolar 60 A/150 V ET6415N + 3x Isolar SM II (5 kW, 450 V, 80 A) + Axpert PIP 5048MS
Forrest
Příspěvky: 210
Registrován: pát zář 09, 2022 1:42 pm
Reputace:6
Lokalita: Ústeckoorlicko
Systémové napětí: 48V
Výkon panelů [Wp]: 2900
Kapacita baterie [kWh]: 6,4
Chci prodávat energii: NE
Chci/Mám dotaci: NE
Bydliště: Č.T. Lhotka

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od Forrest »

Ahoj, testoval už někdo ESPHome ve verzi 2025.11.0 ?? Hlavně teda změny wifi...používám WPA2, což je default - pokud nemám uvedeno konkrétně v yaml, chápu dobře? :-) ...nerad bych u toho zase půl odpoledne seděl a přehrával po kabelu...
Měnič China SAmoDoMo 1,5 kW a již 900Wp na rotátoru jménem "slunečnice"
PetrDubi
Příspěvky: 1884
Registrován: úte říj 12, 2021 10:43 am
Reputace:329
Lokalita: Blízko Ústí nad Labem
Systémové napětí: 48V
Výkon panelů [Wp]: 10790
Kapacita baterie [kWh]: 13
Chci prodávat energii: NE
Chci/Mám dotaci: NE

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od PetrDubi »

Zatím čekám na 11.1, abych se vyhnul prvotním chybám.
mobilní elektrárna 3x Uni-solar PVL-68 a Victron 75/15 MPPT
doma 3280 Wp JV, 3810 Wp JZ, 3690 Wp SZ, Easun SMW 8k (rebrandovaný MAX 8 kW), aku 13kWh 16s LiFePO4
Uživatelský avatar
TomHC
Příspěvky: 3869
Registrován: pát lis 11, 2022 8:14 am
Reputace:856
Lokalita: Hlohovec, SR
Systémové napětí: 48V
Výkon panelů [Wp]: 8820
Kapacita baterie [kWh]: 30
Chci prodávat energii: NE
Chci/Mám dotaci: NE
Bydliště: Hlohovec, SR

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od TomHC »

Mám to už všade, pohoda.
2x MUST PH1800 5.5kW, 9kWp V+J+Z, 600 Ah LiFePO4 s BMS JBD 200A, SW: Home Assistant na Synology DS923+ ku tomu ESPHome, Tasmota, MariaDB, InfluxDB, Telegraf, Grafana, Zigbee2MQTT..., HW: ESPlan (ESP32 + LAN 8720 + RS485). Nejaké moje projekty: MUST-ESPhome, ELTEK Flatpack2 ESPhome, ESP32-EMON, PZEM-017@WiFi, diyBMS-CurrentShunt-ESPhome , BMS UART-TS485 adaptér
Forrest
Příspěvky: 210
Registrován: pát zář 09, 2022 1:42 pm
Reputace:6
Lokalita: Ústeckoorlicko
Systémové napětí: 48V
Výkon panelů [Wp]: 2900
Kapacita baterie [kWh]: 6,4
Chci prodávat energii: NE
Chci/Mám dotaci: NE
Bydliště: Č.T. Lhotka

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od Forrest »

Ještě jsem to nepřekopnul, ale jen kontroloval yaml a u ESP32CAM musí být změna, protože doposud funkční cfg mi najednou hází chyby...Případně jsem prokaučoval již dříve..

Kód: Vybrat vše

Failed config

esp32_camera: [source /config/esphome/kamera-5.yaml:58]
  
  This option requires component psram.
  name: Kamera_5
  external_clock: 
    pin: GPIO0
    frequency: 20MHz
  i2c_id: cam_i2c
  data_pins: 
    - GPIO5
    - GPIO18
    - GPIO19
    - GPIO21
    - GPIO36
    - GPIO39
Měnič China SAmoDoMo 1,5 kW a již 900Wp na rotátoru jménem "slunečnice"
eman
Příspěvky: 2904
Registrován: pát srp 31, 2012 9:20 pm
Reputace:323
Lokalita: Praha
Systémové napětí: 48V
Chci prodávat energii: NE
Chci/Mám dotaci: NE

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od eman »

Poslední dobou ty update ESP nějak sypou. Taky mám trochu strach to aktualizovat.
10kWp JJZ, 3x SmartSolar 150/85, 3xVictron MP II 5kVA v paralelním režimu, Smartshunt, Cerbo GX, 16x400Ah LiFePO4 s JK BMS B2A24S20P + JK BMS Invertor
PetrDubi
Příspěvky: 1884
Registrován: úte říj 12, 2021 10:43 am
Reputace:329
Lokalita: Blízko Ústí nad Labem
Systémové napětí: 48V
Výkon panelů [Wp]: 10790
Kapacita baterie [kWh]: 13
Chci prodávat energii: NE
Chci/Mám dotaci: NE

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od PetrDubi »

Zjistil jsem, že je změna u rolet. Mám krabičku Sonoff se 4 relátkama, který ovládají 2 venkovní rolety a v nové verzi mu tam chybí nějaký objekt stop - budu se na to muset podívat doma na počítači.
mobilní elektrárna 3x Uni-solar PVL-68 a Victron 75/15 MPPT
doma 3280 Wp JV, 3810 Wp JZ, 3690 Wp SZ, Easun SMW 8k (rebrandovaný MAX 8 kW), aku 13kWh 16s LiFePO4
PetrDubi
Příspěvky: 1884
Registrován: úte říj 12, 2021 10:43 am
Reputace:329
Lokalita: Blízko Ústí nad Labem
Systémové napětí: 48V
Výkon panelů [Wp]: 10790
Kapacita baterie [kWh]: 13
Chci prodávat energii: NE
Chci/Mám dotaci: NE

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od PetrDubi »

Tak ten problém dělalo ovládání rolet pomocí tlačítek připojených bezdrátově k Sonoffu - změnilo se totiž ovládání žaluzií přes lambda a místo přímého volání na jeden řádek je nutné používat funkci auto call, která dělá to samé na 3 řádkách..
mobilní elektrárna 3x Uni-solar PVL-68 a Victron 75/15 MPPT
doma 3280 Wp JV, 3810 Wp JZ, 3690 Wp SZ, Easun SMW 8k (rebrandovaný MAX 8 kW), aku 13kWh 16s LiFePO4
Forrest
Příspěvky: 210
Registrován: pát zář 09, 2022 1:42 pm
Reputace:6
Lokalita: Ústeckoorlicko
Systémové napětí: 48V
Výkon panelů [Wp]: 2900
Kapacita baterie [kWh]: 6,4
Chci prodávat energii: NE
Chci/Mám dotaci: NE
Bydliště: Č.T. Lhotka

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od Forrest »

Tak tohle je přesně to, co me na to sejří.. predtim to bylo nekolik měsíců pak se zmenil kod. Ted pomalu kazdych 14 dni... 😂
Měnič China SAmoDoMo 1,5 kW a již 900Wp na rotátoru jménem "slunečnice"
glottis
Příspěvky: 3812
Registrován: stř úno 02, 2022 10:30 am
Reputace:501
Lokalita: okolí Mělníka
Systémové napětí: 48V
Výkon panelů [Wp]: 13000
Kapacita baterie [kWh]: 30

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od glottis »

jen at na tom makaj, neni nic horsiho nez kdyz projekt umre

A upadtovat neni nutne :) klidne muzete jet roky starej kod na nodech.
Uživatelský avatar
TomHC
Příspěvky: 3869
Registrován: pát lis 11, 2022 8:14 am
Reputace:856
Lokalita: Hlohovec, SR
Systémové napětí: 48V
Výkon panelů [Wp]: 8820
Kapacita baterie [kWh]: 30
Chci prodávat energii: NE
Chci/Mám dotaci: NE
Bydliště: Hlohovec, SR

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od TomHC »

A máme tu zase niečo nové - zlepšenie podpory ESP8266, nová verzia ESP-IDF frameworku, nový komponent pre bojler (vo vývoji pre HA, zatiaľ len pre interný webserver), WiFi roaming, OTA rollback...

https://esphome.io/changelog/2026.1.0/

Upgrade Checklist
If you used api: password:, replace it with api: encryption: key:
If you rely on Arduino-only components, explicitly set ESP32 framework to type: arduino
If you used web server URLs directly, note the new name-based URLs and the / restriction in entity names
If you have lambdas using Fan, Select, Climate, Event, or Light state methods, check the Lambda API Changes below

WiFi Roaming Support
One of the most requested features for years: ESPHome devices now automatically switch to better access points after connecting (#12809).
This addresses three scenarios where devices get stuck on suboptimal APs:

AP reboot - Device connects to a distant AP while the nearby one restarts, never switches back
Power outage - Devices connect to whichever AP recovers first, often the worst option
Improv provisioning - Bluetooth or serial setup may pick a suboptimal AP

OTA Rollback Support
Water Heater Component

Home Assistant integration for water heater entities is not yet available. See home-assistant/core#159201 for progress.

Breaking changes
2x MUST PH1800 5.5kW, 9kWp V+J+Z, 600 Ah LiFePO4 s BMS JBD 200A, SW: Home Assistant na Synology DS923+ ku tomu ESPHome, Tasmota, MariaDB, InfluxDB, Telegraf, Grafana, Zigbee2MQTT..., HW: ESPlan (ESP32 + LAN 8720 + RS485). Nejaké moje projekty: MUST-ESPhome, ELTEK Flatpack2 ESPhome, ESP32-EMON, PZEM-017@WiFi, diyBMS-CurrentShunt-ESPhome , BMS UART-TS485 adaptér
Uživatelský avatar
TomHC
Příspěvky: 3869
Registrován: pát lis 11, 2022 8:14 am
Reputace:856
Lokalita: Hlohovec, SR
Systémové napětí: 48V
Výkon panelů [Wp]: 8820
Kapacita baterie [kWh]: 30
Chci prodávat energii: NE
Chci/Mám dotaci: NE
Bydliště: Hlohovec, SR

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od TomHC »

https://esphome.io/changelog/2026.4.0/

Dnes zase kopa noviniek - potešilo ma pridanie interrupt pinu pre port expandéry, takže sa polling robí iba ak príde ku zmene. Ale je tam toho zase dosť veľa.
2x MUST PH1800 5.5kW, 9kWp V+J+Z, 600 Ah LiFePO4 s BMS JBD 200A, SW: Home Assistant na Synology DS923+ ku tomu ESPHome, Tasmota, MariaDB, InfluxDB, Telegraf, Grafana, Zigbee2MQTT..., HW: ESPlan (ESP32 + LAN 8720 + RS485). Nejaké moje projekty: MUST-ESPhome, ELTEK Flatpack2 ESPhome, ESP32-EMON, PZEM-017@WiFi, diyBMS-CurrentShunt-ESPhome , BMS UART-TS485 adaptér
PetrDubi
Příspěvky: 1884
Registrován: úte říj 12, 2021 10:43 am
Reputace:329
Lokalita: Blízko Ústí nad Labem
Systémové napětí: 48V
Výkon panelů [Wp]: 10790
Kapacita baterie [kWh]: 13
Chci prodávat energii: NE
Chci/Mám dotaci: NE

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od PetrDubi »

Jo a Tome, nezkoušel jsi s předchozí verzí (2026.3.x) ten pipsolar pro esphome od syssi? Něco změnili v esphome a po upgradu nefunguje spojení s měničem - všechny hodnoty jsou 0 a v logu to hlásí při spojení NOK.. Lidi kterým to taky nejde to řešili a je problém v CRC - syssi přepisoval standartní CRC v esphome, protože Voltronic používá nějaký nestandardní znaky a tohle přepsání části kódu v nové verzi nefunguje.
mobilní elektrárna 3x Uni-solar PVL-68 a Victron 75/15 MPPT
doma 3280 Wp JV, 3810 Wp JZ, 3690 Wp SZ, Easun SMW 8k (rebrandovaný MAX 8 kW), aku 13kWh 16s LiFePO4
Uživatelský avatar
TomHC
Příspěvky: 3869
Registrován: pát lis 11, 2022 8:14 am
Reputace:856
Lokalita: Hlohovec, SR
Systémové napětí: 48V
Výkon panelů [Wp]: 8820
Kapacita baterie [kWh]: 30
Chci prodávat energii: NE
Chci/Mám dotaci: NE
Bydliště: Hlohovec, SR

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od TomHC »

Veru neskúšal, EASUN leží v krabici odkedy prišiel a MAX232 ležia vedľa monitora :) Možno na to raz príde 😎 Aspoň budem vedieť čo sa deje, keď to nepôjde. Na githube nie je nejaký issue na to?
2x MUST PH1800 5.5kW, 9kWp V+J+Z, 600 Ah LiFePO4 s BMS JBD 200A, SW: Home Assistant na Synology DS923+ ku tomu ESPHome, Tasmota, MariaDB, InfluxDB, Telegraf, Grafana, Zigbee2MQTT..., HW: ESPlan (ESP32 + LAN 8720 + RS485). Nejaké moje projekty: MUST-ESPhome, ELTEK Flatpack2 ESPhome, ESP32-EMON, PZEM-017@WiFi, diyBMS-CurrentShunt-ESPhome , BMS UART-TS485 adaptér
PetrDubi
Příspěvky: 1884
Registrován: úte říj 12, 2021 10:43 am
Reputace:329
Lokalita: Blízko Ústí nad Labem
Systémové napětí: 48V
Výkon panelů [Wp]: 10790
Kapacita baterie [kWh]: 13
Chci prodávat energii: NE
Chci/Mám dotaci: NE

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od PetrDubi »

Jo u syssiho je, tam se to probírá, ale syssi zatím nabídnul jenom možnosti, které nezafungovali. Někdo i psal řádek kódu, kde se ten problém odehrává.
Nevím jestli je to možné opravit nějakým jiným způsobem nebo se to bude muset reportovat přímo na esphome - takový programátor nejsem 😉
mobilní elektrárna 3x Uni-solar PVL-68 a Victron 75/15 MPPT
doma 3280 Wp JV, 3810 Wp JZ, 3690 Wp SZ, Easun SMW 8k (rebrandovaný MAX 8 kW), aku 13kWh 16s LiFePO4
rva
Příspěvky: 4845
Registrován: úte dub 23, 2013 10:21 am
Reputace:946
Lokalita: Kousek od Lysé nad Labem
Systémové napětí: 48V
Výkon panelů [Wp]: 46000
Kapacita baterie [kWh]: 40
Chci prodávat energii: NE
Chci/Mám dotaci: NE
Bydliště: Kousek od Lysé nad Labem

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od rva »

Od https://github.com/syssi/esphome-pipsolar yaml používám a nezaregistroval jsem problém. Jen jsem k tomu originálnímu přidal pár řádek, abych mohl z HA měnit napětí regulátoru:
syssi-esphome-pipsolar.jpg
A tam jsem si bokem pro těch pár zapisovaných hodnot CRC spočítal. Upravený je pak takový:

Kód: Vybrat vše

# Warning:
# https://github.com/syssi/esphome-pipsolar
# If you configure a lot of the possible sensors etc. it could be that you run
# out of memory (on esp8266). If you configure nearly all sensors etc. you run
# in a stack-size issue. In this case you have to increase stack size!
#
#  https://github.com/esphome/issues/issues/855

substitutions:
  name: esp32-c3-supermini6
  friendly_name: esp32-c3-supermini6
  device_description: "Monitoring měniče regulátoru ISolar u okna (master 1) via UART-TTL"
  tx_pin: GPIO1
  rx_pin: GPIO0

esphome:
  name: ${name}
  friendly_name: ${friendly_name}
  comment: ${device_description}
  name_add_mac_suffix: false
  project:
    name: esphome.web
    version: '1.0'

esp32:
  board: esp32-c3-devkitm-1
#  board: wemos_d1_mini32
  framework:
#    type: arduino
    type: esp-idf

# Enable logging
logger:

# Enable Home Assistant API
api:
#  reboot_timeout: 0s
#  encryption:
#    key: "vvvvvvvvvvvvvvvvvvvvvvvv"

ota:
  platform: esphome
#  password: "xxxxxxxxxxxxxxxxxxxxxxxxxxx"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  min_auth_mode: WPA2
# Optional manual IP
  manual_ip:
    static_ip: 192.168.0.67
    gateway: 192.168.0.1
    subnet: 255.255.255.0

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "esp32-c3-supermini6"
    password: "xxxxxxxxxxxxxxxxxx6"

# V HA se pak k položkám "edit" a "logs" objeví položka "visit", kde se po kliknutí otevře stránka esphome daného zařízení
web_server:
 port: 80

# Allow provisioning Wi-Fi via serial
improv_serial:

# In combination with the `ap` this allows the user
# to provision wifi credentials to the device via WiFi AP.
captive_portal:

#dashboard_import:
#  package_import_url: github://esphome/firmware/esphome-web/esp32c3.yaml@v2
#  import_full_config: true

# Sets up Bluetooth LE (Only on ESP32) to allow the user
# to provision wifi credentials to the device.
#esp32_improv:
#  authorizer: none

# To have a "next url" for improv serial
#web_server:

uart:
  id: uart_0
  baud_rate: 2400
  tx_pin: ${tx_pin}
  rx_pin: ${rx_pin}
#  debug:
#    direction: BOTH
#    dummy_receiver: false
#    after:
#      delimiter: "\r"
#    sequence:
#      - lambda: UARTDebug::log_string(direction, bytes);

# zápis do měniče dle https://github.com/syssi/esphome-pipsolar/blob/main/tests/esp8266-test-protocols.yaml
#      - uart.write: [0x51, 0x4D, 0x4F, 0x44, 0x49, 0xC1, 0x0D]  # QMODI\xc1\r
#      - delay: 1s

# příkazy dle https://forums.aeva.asn.au/uploads/293/HS_MS_MSX_RS232_Protocol_20140822_after_current_upgrade.pdf
# PCVV<nn.n><cr>: Setting battery C.V. (constant voltage) charging voltage
# Computer: PCVV <nn.n><CRC><cr>
# Device: (ACK<CRC><cr> if device accepts this command, otherwise, responds (NAK<CRC><cr>
# nn.n: 48.0V ~ 58.4V for 48V unit
# PBFT<nn.n><cr>: Setting battery float charging voltage
# Computer: PBFT <nn.n><CRC><cr>
# Device: (ACK<CRC><cr> if device accepts this command, otherwise, responds (NAK<CRC><cr>
# nn.n: 48.0V ~ 58.4V for 48V unit

# dle https://crccalc.com/ to vypadá, že u CRC se jedná o CRC-16, podle CRC-16/XMODEM. Na dané stránce si těch pár požadovaných CRC hodnot pro potřebné příkazy nechám spočítat.

# nastavení bulk na 54.4 V = PCVV54.8
#      - uart.write: [0x50, 0x43, 0x56, 0x56, 0x35, 0x34, 0x2E, 0x38, 0xF0, 0xB3, 0x0D]  # PCVV54.8<CRC>\r
# nastavení bulk na 53.8 V = PCVV53.8
#      - uart.write: [0x50, 0x43, 0x56, 0x56, 0x35, 0x33, 0x2E, 0x38, 0x75, 0x23, 0x0D]  # PCVV53.8<CRC>\r
# nastavení bulk na 53.6 V = PCVV53.6
#      - uart.write: [0x50, 0x43, 0x56, 0x56, 0x35, 0x33, 0x2E, 0x36, 0x94, 0xED, 0x0D]  # PCVV53.6<CRC>\r
# nastavení bulk na 53.4 V = PCVV53.4
#      - uart.write: [0x50, 0x43, 0x56, 0x56, 0x35, 0x33, 0x2E, 0x34, 0xB4, 0xAF, 0x0D]  # PCVV53.4<CRC>\r
# nastavení bulk na 53.2 V = PCVV53.2
#      - uart.write: [0x50, 0x43, 0x56, 0x56, 0x35, 0x33, 0x2E, 0x32, 0xD4, 0x69, 0x0D]  # PCVV53.2<CRC>\r
# nastavení bulk na 53.0 V = PCVV53.0
#      - uart.write: [0x50, 0x43, 0x56, 0x56, 0x35, 0x33, 0x2E, 0x30, 0xF4, 0x2B, 0x0D]  # PCVV53.0<CRC>\r

# nastavení float na 54.4 V = PBFT54.4
#      - uart.write: [0x50, 0x42, 0x46, 0x54, 0x35, 0x34, 0x2E, 0x34, 0xD7, 0x59, 0x0D]  # PBFT54.4<CRC>\r
# nastavení float na 54.0 V = PBFT54.0
#      - uart.write: [0x50, 0x42, 0x46, 0x54, 0x35, 0x34, 0x2E, 0x30, 0x97, 0xDD, 0x0D]  # PBFT54.0<CRC>\r
# nastavení float na 53.6 V = PBFT53.6
#      - uart.write: [0x50, 0x42, 0x46, 0x54, 0x35, 0x33, 0x2E, 0x36, 0x72, 0x8B, 0x0D]  # PBFT53.6<CRC>\r
# nastavení float na 53.4 V = PBFT53.4
#      - uart.write: [0x50, 0x42, 0x46, 0x54, 0x35, 0x33, 0x2E, 0x34, 0x52, 0xC9, 0x0D]  # PBFT53.4<CRC>\r
# nastavení float na 53.2 V = PBFT53.2
#      - uart.write: [0x50, 0x42, 0x46, 0x54, 0x35, 0x33, 0x2E, 0x32, 0x32, 0x0F, 0x0D]  # PBFT53.2<CRC>\r
# nastavení float na 53.0 V = PBFT53.0
#      - uart.write: [0x50, 0x42, 0x46, 0x54, 0x35, 0x33, 0x2E, 0x30, 0x12, 0x4D, 0x0D]  # PBFT53.0<CRC>\r


pipsolar:
  uart_id: uart_0
  id: inverter0
# asi to nemá zavedeno-  
  update_interval: 30s

sensor:
  - platform: pipsolar
    pipsolar_id: inverter0
    # QPIRI
#    grid_rating_voltage:
#      name: "${name} grid_rating_voltage"
#    grid_rating_current:
#      name: "${name} grid_rating_current"
#    ac_output_rating_voltage:
#      name: "${name} ac_output_rating_voltage"
#    ac_output_rating_frequency:
#      name: "${name} ac_output_rating_frequency"
#    ac_output_rating_current:
#      name: "${name} ac_output_rating_current"
#    ac_output_rating_apparent_power:
#      name: "${name} ac_output_rating_apparent_power"
#    ac_output_rating_active_power:
#      name: "${name} ac_output_rating_active_power"
#    battery_rating_voltage:
#      name: "${name} battery_rating_voltage"
    battery_recharge_voltage:
      name: "${name} battery_recharge_voltage"
    battery_under_voltage:
      name: "${name} battery_under_voltage"
    battery_bulk_voltage:
      name: "${name} battery_bulk_voltage"
    battery_float_voltage:
      name: "${name} battery_float_voltage"
#    battery_type:
#      name: "${name} battery_type"
#    current_max_ac_charging_current:
#      name: "${name} current_max_ac_charging_current"
#    current_max_charging_current:
#      name: "${name} current_max_charging_current"
#    input_voltage_range:
#      name: "${name} input_voltage_range"
#    output_source_priority:
#      name: "${name} output_source_priority"
#    charger_source_priority:
#      name: "${name} charger_source_priority"
#    parallel_max_num:
#      name: "${name} parallel_max_num"
#    machine_type:
#      name: "${name} machine_type"
#    topology:
#      name: "${name} topology"
#    output_mode:
#      name: "${name} output_mode"
#    battery_redischarge_voltage:
#      name: "${name} battery_redischarge_voltage"
#    pv_ok_condition_for_parallel:
#      name: "${name} pv_ok_condition_for_parallel"
#    pv_power_balance:
#      name: "${name} pv_power_balance"

    # QPIGS
    grid_voltage:
      name: "${name} grid_voltage"
    grid_frequency:
      name: "${name} grid_frequency"
    ac_output_voltage:
      name: "${name} ac_output_voltage"
    ac_output_frequency:
      name: "${name} ac_output_frequency"
    ac_output_apparent_power:
      name: "${name} ac_output_apparent_power"
    ac_output_active_power:
      name: "${name} ac_output_active_power"
#    output_load_percent:
#      name: "${name} output_load_percent"
    bus_voltage:
      name: "${name} bus_voltage"
    battery_voltage:
      name: "${name} battery_voltage"
    battery_charging_current:
      name: "${name} battery_charging_current"
#    battery_capacity_percent:
#      name: "${name} battery_capacity_percent"
    inverter_heat_sink_temperature:
      name: "${name} inverter_heat_sink_temperature"
    pv_input_current_for_battery:
      name: "${name} pv_input_current_for_battery"
    pv_input_voltage:
      name: "${name} pv_input_voltage"
    battery_voltage_scc:
      name: "${name} battery_voltage_scc"
    battery_discharge_current:
      name: "${name} battery_discharge_current"
#    battery_voltage_offset_for_fans_on:
#      name: "${name} battery_voltage_offset_for_fans_on"
#    eeprom_version:
#      name: "${name} eeprom_version"
    pv_charging_power:
      name: "${name} pv_charging_power"

text_sensor:
  - platform: pipsolar
    pipsolar_id: inverter0
    device_mode:
      name: "${name} device_mode"
#    last_qpigs:
#      name: "${name} last_qpigs"
#    last_qpiri:
#      name: "${name} last_qpiri"
#    last_qmod:
#      name: "${name} last_qmod"
#    last_qflag:
#      name: "${name} last_qflag"

binary_sensor:
  - platform: pipsolar
    pipsolar_id: inverter0
    add_sbu_priority_version:
      name: "${name} add_sbu_priority_version"
    configuration_status:
      name: "${name} configuration_status"
#    scc_firmware_version:
#      name: "${name} scc_firmware_version"
    load_status:
      name: "${name} load_status"
    battery_voltage_to_steady_while_charging:
      name: "${name} battery_voltage_to_steady_while_charging"
    charging_status:
      name: "${name} charging_status"
    scc_charging_status:
      name: "${name} scc_charging_status"
    ac_charging_status:
      name: "${name} ac_charging_status"
    charging_to_floating_mode:
      name: "${name} charging_to_floating_mode"
    switch_on:
      name: "${name} switch_on"
#    dustproof_installed:
#      name: "${name} dustproof_installed"
    silence_buzzer_open_buzzer:
      name: "${name} silence_buzzer_open_buzzer"
    overload_bypass_function:
      name: "${name} overload_bypass_function"
    lcd_escape_to_default:
      name: "${name} lcd_escape_to_default"
    overload_restart_function:
      name: "${name} overload_restart_function"
    over_temperature_restart_function:
      name: "${name} over_temperature_restart_function"
#    backlight_on:
#      name: "${name} backlight_on"

switch:
  - platform: pipsolar
    pipsolar_id: inverter0
    output_source_priority_utility:
      name: "${name} output_source_priority_utility"
    output_source_priority_solar:
      name: "${name} output_source_priority_solar"
    output_source_priority_battery:
      name: "${name} output_source_priority_battery"
    input_voltage_range:
      name: "${name} input_voltage_range"
    pv_ok_condition_for_parallel:
      name: "${name} pv_ok_condition_for_parallel"
    pv_power_balance:
      name: "${name} pv_power_balance"
#Vytvoření přepínače, kterým se dá nastavovat požadované float napětí baterie v měniči ISolar SM II:
#-----začátek-----------------------------------------  
#  - platform: template
#    name: "Battery voltage Low - High"
#    id: inverter0_battery_voltage_low_high
#    optimistic: true
#    turn_on_action:
#    - uart.write: 
#        id: uart_0
#        data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x34, 0x2E, 0x38, 0xF0, 0xB3, 0x0D]  # nejprve zvýší napětí bulk na 54.8V: PCVV54.8<CRC>\r
#    - delay: 1s
#    - uart.write: 
#        id: uart_0
#        data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x34, 0x2E, 0x34, 0xD7, 0x59, 0x0D]  # potom zvýší napětí float na 54.4.V: PBFT54.4<CRC>\r
#    - delay: 1s
#    turn_off_action:
#    - uart.write:
#        id: uart_0
##        data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x34, 0x2E, 0x36, 0xF7, 0x1B, 0x0D]  # nejprve sníží napětí float na 54.6V: PBFT54.6<CRC>\r
##        data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x34, 0x2E, 0x34, 0xD7, 0x59, 0x0D]  # PBFT54.4<CRC>\r
#        data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x34, 0x2E, 0x32, 0xB7, 0x9F, 0x0D]  # PBFT54.2<CRC>\r
##        data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x34, 0x2E, 0x30, 0x97, 0xDD, 0x0D]  # PBFT54.0<CRC>\r
##        data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x33, 0x2E, 0x38, 0x93, 0x45, 0x0D]  # PBFT53.8<CRC>\r
##        data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x33, 0x2E, 0x36, 0x72, 0x8B, 0x0D]  # PBFT53.6<CRC>\r
##        data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x33, 0x2E, 0x34, 0x52, 0xC9, 0x0D]  # PBFT53.4<CRC>\r
##        data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x33, 0x2E, 0x32, 0x32, 0x0F, 0x0D]  # PBFT53.2<CRC>\r
##        data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x33, 0x2E, 0x30, 0x12, 0x4D, 0x0D]  # PBFT53.0<CRC>\r
#    - delay: 1s
#    - uart.write:
#        id: uart_0
##        data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x34, 0x2E, 0x38, 0xF0, 0xB3, 0x0D]  # potom sníží napětí bulk na 54.8V: PCVV54.8<CRC>\r
##        data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x34, 0x2E, 0x36, 0x11, 0x7D, 0x0D]  # PCVV54.6<CRC>\r
#        data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x34, 0x2E, 0x34, 0x31, 0x3F, 0x0D]  # PCVV54.4<CRC>\r
##        data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x34, 0x2E, 0x32, 0x51, 0xF9, 0x0D]  # PCVV54.2<CRC>\r
##        data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x34, 0x2E, 0x30, 0x71, 0xBB, 0x0D]  # PCVV54.0<CRC>\r
##        data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x33, 0x2E, 0x38, 0x75, 0x23, 0x0D]  # PCVV53.8<CRC>\r
##        data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x33, 0x2E, 0x36, 0x94, 0xED, 0x0D]  # PCVV53.6<CRC>\r
##        data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x33, 0x2E, 0x34, 0xB4, 0xAF, 0x0D]  # PCVV53.4<CRC>\r
##        data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x33, 0x2E, 0x32, 0xD4, 0x69, 0x0D]  # PCVV53.2<CRC>\r
#    - delay: 1s
#-----konec-----------------------------------------

#Vytvoření výběru, kterým se dá vybrat požadované bulk + float napětí baterie v měniči "ISolar":
#-----začátek-----------------------------------------  
select:
  - platform: template
    name: "Bulk_select"
    optimistic: true
    id: bulk_select
    options:
      - Bulk 54,8 V Float 54,6 V
      - Bulk 54,6 V Float 54,4 V
      - Bulk 54,4 V Float 54,2 V
      - Bulk 54,2 V Float 54,0 V
      - Bulk 54,0 V Float 53,8 V
      - Bulk 53,8 V Float 53,6 V
      - Bulk 53,6 V Float 53,4 V
      - Bulk 53,4 V Float 53,2 V
      - Bulk 53,2 V Float 53,0 V
    initial_option: Bulk 54,0 V Float 53,8 V
    on_value:
      then:
      - if:
          condition:
            lambda: |-
              return (id(bulk_select).active_index() == 0);
          then:
          - logger.log: "54,8"
          - uart.write:
              id: uart_0
              data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x34, 0x2E, 0x36, 0xF7, 0x1B, 0x0D]  # nejprve sníží napětí float na 54.6V: PBFT54.6<CRC>\r
          - delay: 1s
          - uart.write:
              id: uart_0
              data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x34, 0x2E, 0x38, 0xF0, 0xB3, 0x0D]  # potom sníží napětí bulk na 54.8V: PCVV54.8<CRC>\r
          - delay: 1s
      - if:
          condition:
            lambda: |-
              return (id(bulk_select).active_index() == 1);
          then:
          - logger.log: "54,6"
          - uart.write:
              id: uart_0
              data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x34, 0x2E, 0x34, 0xD7, 0x59, 0x0D]  # nejprve sníží napětí float na 54.4V: PBFT54.4<CRC>\r
          - delay: 1s
          - uart.write:
              id: uart_0
              data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x34, 0x2E, 0x36, 0x11, 0x7D, 0x0D]  # potom sníží napětí bulk na 54.6V: PCVV54.6<CRC>\r
          - delay: 1s
      - if:
          condition:
            lambda: |-
              return (id(bulk_select).active_index() == 2);
          then:
          - logger.log: "54,4"
          - uart.write:
              id: uart_0
              data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x34, 0x2E, 0x32, 0xB7, 0x9F, 0x0D]  # nejprve sníží napětí float na 54.2V: PBFT54.2<CRC>\r
          - delay: 1s
          - uart.write:
              id: uart_0
              data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x34, 0x2E, 0x34, 0x31, 0x3F, 0x0D]  # potom sníží napětí bulk na 54.4V: PCVV54.4<CRC>\r
          - delay: 1s
      - if:
          condition:
            lambda: |-
              return (id(bulk_select).active_index() == 3);
          then:
          - logger.log: "54,2"
          - uart.write:
              id: uart_0
              data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x34, 0x2E, 0x30, 0x97, 0xDD, 0x0D]  # nejprve sníží napětí float na 54.0V: PBFT54.0<CRC>\r
          - delay: 1s
          - uart.write:
              id: uart_0
              data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x34, 0x2E, 0x32, 0x51, 0xF9, 0x0D]  # potom sníží napětí bulk na 54.2V: PCVV54.2<CRC>\r
          - delay: 1s
      - if:
          condition:
            lambda: |-
              return (id(bulk_select).active_index() == 4);
          then:
          - logger.log: "54,0"
          - uart.write:
              id: uart_0
              data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x33, 0x2E, 0x38, 0x93, 0x45, 0x0D]  # nejprve sníží napětí float na 53.8V: PBFT53.8<CRC>\r
          - delay: 1s
          - uart.write:
              id: uart_0
              data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x34, 0x2E, 0x30, 0x71, 0xBB, 0x0D]  # potom sníží napětí bulk na 54.0V: PCVV54.0<CRC>\r
          - delay: 1s
      - if:
          condition:
            lambda: |-
              return (id(bulk_select).active_index() == 5);
          then:
          - logger.log: "53,8"
          - uart.write:
              id: uart_0
              data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x33, 0x2E, 0x36, 0x72, 0x8B, 0x0D]  # nejprve sníží napětí float na 53.6V: PBFT53.6<CRC>\r
          - delay: 1s
          - uart.write:
              id: uart_0
              data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x33, 0x2E, 0x38, 0x75, 0x23, 0x0D]  # potom sníží napětí bulk na 53.8V: PCVV53.8<CRC>\r
          - delay: 1s
      - if:
          condition:
            lambda: |-
              return (id(bulk_select).active_index() == 6);
          then:
          - logger.log: "53,6"
          - uart.write:
              id: uart_0
              data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x33, 0x2E, 0x34, 0x52, 0xC9, 0x0D]  # nejprve sníží napětí float na 53.4V: PBFT53.4<CRC>\r
          - delay: 1s
          - uart.write:
              id: uart_0
              data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x33, 0x2E, 0x36, 0x94, 0xED, 0x0D]  # potom sníží napětí bulk na 53.6V: PCVV53.6<CRC>\r
          - delay: 1s
      - if:
          condition:
            lambda: |-
              return (id(bulk_select).active_index() == 7);
          then:
          - logger.log: "53,4"
          - uart.write:
              id: uart_0
              data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x33, 0x2E, 0x32, 0x32, 0x0F, 0x0D]  # nejprve sníží napětí float na 53.2V: PBFT53.2<CRC>\r
          - delay: 1s
          - uart.write:
              id: uart_0
              data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x33, 0x2E, 0x34, 0xB4, 0xAF, 0x0D]  # potom sníží napětí bulk na 53.4V: PCVV53.4<CRC>\r
          - delay: 1s
      - if:
          condition:
            lambda: |-
              return (id(bulk_select).active_index() == 8);
          then:
          - logger.log: "53,2"
          - uart.write:
              id: uart_0
              data: [0x50, 0x42, 0x46, 0x54, 0x35, 0x33, 0x2E, 0x30, 0x12, 0x4D, 0x0D]  # nejprve sníží napětí float na 53.0V: PBFT53.0<CRC>\r
          - delay: 1s
          - uart.write:
              id: uart_0
              data: [0x50, 0x43, 0x56, 0x56, 0x35, 0x33, 0x2E, 0x32, 0xD4, 0x69, 0x0D]  # potom sníží napětí bulk na 53.2V: PCVV53.2<CRC>\r
          - delay: 1s


#-----konec-----------------------------------------

    
# Deklarace proměnných, které chci v měniči PIP 5048MS měnit - výběr možných je na https://esphome.io/components/pipsolar.html :
# battery_recharge_voltage (Optional): battery recharge voltage;
#   possible_values (Optional, list): a list of possible values default: 44.0,45.0,46.0,47.0,48.0,49.0,50.0,51.0
# battery_under_voltage (Optional): battery under voltage;
#   possible_values (Optional, list): a list of possible values default: 40.0,40.1,42,43,44,45,46,47,48.0
# battery_float_voltage (Optional): battery float voltage;
#   possible_values (Optional, list): a list of possible values default: 48.0,49.0,50.0,51.0
# battery_type (Optional): battery type;
#   possible_values (Optional, list): a list of possible values default: 0,1,2
# current_max_ac_charging_current (Optional): current max ac charging current;
#   possible_values (Optional, list): a list of possible values default: 2,10,20
# current_max_charging_current (Optional): current max charging current;
#   possible_values (Optional, list): a list of possible values default: 10,20,30,40
# output_source_priority (Optional): output source priority;
#   possible_values (Optional, list): a list of possible values default: 0,1,2
# charger_source_priority (Optional): charger source priority;
#   possible_values (Optional, list): a list of possible values default: 0,1,2,3
# battery_redischarge_voltage (Optional): battery redischarge voltage;
#   possible_values (Optional, list): a list of possible values default: 00.0,48.0,49,50.0,51.0,52,53,54,55,56,57,58
#-----začátek-----------------------------------------   
output:
  - platform: pipsolar
    pipsolar_id: inverter0
    battery_recharge_voltage:
      id: inverter0_battery_recharge_voltage_out  
#-----konec-----------------------------------------  
_______________________________________________________________________
43 kWp, LiFePO4 62 kWh,
EPSolar 60 A/150 V ET6415N + 3x Isolar SM II (5 kW, 450 V, 80 A) + Axpert PIP 5048MS
PetrDubi
Příspěvky: 1884
Registrován: úte říj 12, 2021 10:43 am
Reputace:329
Lokalita: Blízko Ústí nad Labem
Systémové napětí: 48V
Výkon panelů [Wp]: 10790
Kapacita baterie [kWh]: 13
Chci prodávat energii: NE
Chci/Mám dotaci: NE

Re: ESPhome 2025.7 OTA breaking changes

Nový příspěvek od PetrDubi »

Já používám od syssi branch pip8048 (pro MAXe, má dva PV vstupy) a ten už si stahuje nějakou externí komponentu z githubu, kterou ta main verze nemá.
mobilní elektrárna 3x Uni-solar PVL-68 a Victron 75/15 MPPT
doma 3280 Wp JV, 3810 Wp JZ, 3690 Wp SZ, Easun SMW 8k (rebrandovaný MAX 8 kW), aku 13kWh 16s LiFePO4

Kdo je online

Uživatelé procházející toto fórum: Claudebot [Bot]