0.309.2
evcc-io/evcc0.309.2Jun 19, 2026by andig
AI Summary
This release focuses on UI improvements, including a switch from Monaco to CodeMirror 6 in the Config UI, and introduces support for new hardware variants and the Smart-hello #5 device. It also enhances EEBus functionality by exposing SHIP QR codes and adds Latvian language support.
Key Highlights
- Config UI upgrade from Monaco to CodeMirror 6
- EEBus SHIP installation QR code exposure
- New support for Smart-hello #5 device
- Modbus improvements with shared block reading
Breaking Changes
- Enphase: fix battery_type parameter (BC)
New Features
- Charger (go-e): add missing product variants
- Kostal Plenticore: add holdcharge battery mode
- Modbus: add shared block reading
- RCT: add maxacpower
- Smart-hello: add Smart #5 support
- Vehicle: add autodetectdisabled feature
- aa55 udp: add delay option
- evnotify: add v3 api support
- i18n: add Latvian to language selector
- EEBus: expose SHIP installation QR code
- History: reload data after backend restart
Full Release Notes
## Changelog ### Breaking Changes 🚨 * 7f680ebd80bb63fc79c33277b75f15c9c4fe65d5 enphase: fix battery_type parameter (BC) (#30860) ### New Features 💫 * 418ac13b32da537b7f8bfd9a8f577f1500ae2a02 Charger (go-e): add missing product variants (#30915) * 3842c3da5242343561c946afa9aed17e4cc3a122 Kostal Plenticore: add holdcharge battery mode (#30853) * 18609ee8743670eb56b8c59dc7381e0fdb295869 Modbus: add shared block reading (#30846) * fa0cd94bde49f94e093f950e87b9cb825b53cac7 RCT: add maxacpower (#30936) * a68f23e4836b2e8f43646c73b9d296315ad7d703 Smart-hello: add Smart #5 support (#31024) * 1056e85af283af2af1fb749f97781ee7423c7a5b Vehicle: add autodetectdisabled feature (#30941) * 41e893e0238c61bd6c1e7e58cfac6617051f1ada aa55 udp: add delay option to space inverter sends (#30832) * 6b7995d7440b696fffe46776cd36c71e718c5c44 evnotify: add v3 api support (#30927) * 470082e7d7261b28bc6d2d6c1537444af7fe54ad i18n: add Latvian to language selector (#30988) ### Other Changes ☀️ * 93f49dd06f8d677cbc14a17de9e330fef8967011 Bump esbuild and storybook (#31016) * 4e40218a65756c9b6ff1fe4c68ed4ef33fccdad5 Bump js-yaml from 4.1.1 to 4.2.0 (#30917) * 81a84fcf812b0c30b4172cc3e7b2bbeeceb71e43 Config UI: replace Monaco editor with bundled CodeMirror 6 (#30855) * 8769ae489de5d6c87fd46abd042c4cb9dc9afeae Config UI: separate consumers from additional meters (#30243) * ebe4a3d6a3e0a5e2f1a75889ebca7863fcef6f21 EEBus: expose SHIP installation QR code (#30840) * 33d9c3bddba1744eee9a7716f47f6bc3b375c36d EEBus: treat unavailable measurement data as not available (#30874) * 10e3f0dcf97f4b9cd82307214237613c07c065a7 EEBus: update eebus-go, ship-go and spine-go to dev (#30633) * bcd75510d0ee9ddb7e93ae9b4d5d8ac6c1ed186f EU Data Act: identify ID.3 cruising range by data point key (#30851) * 52562d918608771e867685ffc6c2077f6add19c0 EU Data Act: skip optional marketing consent page after login (#30956) * e4ddbfbe69bce9c8fcc404f0476b005a2b06328a Energyflow: apply forecast adjustment to remaining solar energy (#30906) * 359e053a40205578fb799dfb8692d83995befec4 Energyflow: keep small consumption segments visible (#30781) * aa16b1c7572e6d609de761bb6efd497e9a07f63a GoodWe Wifi ET: correct grid power sign (#30896) * 95868686a001991ff67c4720b342a7dc5c1c5a67 GoodWe: deprecate wifi template (#30966) * 642be2fc1e4fe70ded5eea49c8e6ab1202aa78bd GoodWe: treat nightly 0xFFFF register sentinel as invalid (#30924) * 7ac3af86c237c6c12e1e8083e346a5b0dbca046e History: reload data after backend restart (#30985) * e5b9a014c5f5872839e1cef14ff05ece7e3a5671 Home Assistant: Enable insecure option for self-signed certificates in oauth2 flow (#30648) * d7a294f06e319835124674eb821a1053be597fbe Huawei: move warnings to caveats (#30658) * 662e5d2059642ac059f4fb2ea7af8cb7a3648c64 Huawei: optimized force-charging (#30975) * 7c98d6db25d2ebdcaa765cc02842b4413467755a Lambda Zewotherm: use register 1012 for power (FW >= 1.1.3) (#30780) * d1dd7900c5cd29cad432555d4f6cfbec44743c84 Meter: treat zero lifetime energy reading as not available (#31019) * 1582d869cc75dd29f9cd6123808b83a828e5c1db Metrics: join energy series by entity name (#30991) * cae5e6608544d16fcf36b2257d595e9afb281c57 Modbus: reuse modbus decoder in aa55 (#30848) * 494f6cf9bb1d8e11c9fdfaac2019c124867b83cd Optimizer: make grid charging strategy configurable (#30782) * 51eb75d1917c0d4c2fd77a5bd08e54b4c78be0c6 Sessions: relabel solar/total toggle buttons (#30883) * f621327c5c5358039b302cd630e38e4ebbe9a78a Sessions: show more columns per breakpoint (#30933) * 7dafb000c181e52c89f0d3c65e0f8da88b6aec03 Site: publish meter returnEnergy and use in history (#30881) * 614ff4ac06cd6cbe1fa0a843fbcca3b0df13fd0c Smart-hello: reject unsupported vehicle platform (#31022) * f7b89cedc39a866073a16f4de4c9ef01d1e73035 Sponsor: set gRPC client idle timeout (#30913) * a70f4b35f1a58abc58a0efb5670015e8c9619b18 Templates: consolidate shared param properties with defaults.yaml (#30908) * 5304d98a8c0214f4c9c1bd638b78c6512624cf0f Vehicle (EU Data Act): prefer most recently delivered value per field (#30916) * 2269e6a463453be8b306076c4da14231b0324ec1 Zaptec Go 2: warn on unequal installation phase current (#30964) * 12f3221aed1941f4541efdb76fab858933b6b582 http plugin: honor cache when upstream sends no-store/max-age=0 (#31028) ### Bug Fixes 🐞 * e004993a62309ed0666f61ae9ac49ef52140718e Energyflow: fix invisible expand icon in dark mode (#31026) * e02106130e8612df068be7e5669f96d9800c7be6 Fix minimum marker for zero forecast values (#30892) * 361f92878aa37dbd6336e46ac91f8bf2055c6eda Kostal Plenticore: fix pv energy encoding (#30862) * d62ccfe3dff8b11add0bbadf2d7873acc40d3fc6 YamlEditor: fix dark-mode cursor visibility and selection contrast (#30978)