feat: Add EV Charger control ❘ Deye 3P#1065
Open
DJm00n wants to merge 1 commit into
Open
Conversation
Author
|
@davidrapan can you please take a look? |
4f7f005 to
216db0f
Compare
Adds EV Charger configuration and monitoring to the Deye 3-phase inverter profile (deye_p3.yaml), with supporting read-modify-write fixes in the select and number entity platforms. Profile (deye_p3.yaml) — new group "EV Charger": - EV Charger Power Mode (register 0x0103, bits[1:0]): Solar Only / Free Work - EV Charger Inverter Connection Port (register 0x0103, bits[5:4]): Grid Port / Load Port - EV Charger Off-Grid SOC (register 0x0103, hi-byte): minimum battery SOC threshold for off-grid charging, read-modify-write via mask + divide - EV Charger Maximum Power (register 0x0104): inverter-side power cap (0–22000 W) - EV Charger Requested Power Limit (register 0x02C5): live power limit sent to the EVSE by the inverter, update_interval: 5 Platform fixes: - select.py: read-modify-write for `mask` (top-level, not display.mask) — reads current register, clears masked bits, ORs in new value before writing; triggers coordinator refresh after masked writes - number.py: same read-modify-write pattern for number entities with `mask` and `divide` (used by Off-Grid SOC); fixes value_int overflow check (>= 0xFFFF → <= 0xFFFF) - entity.py: trigger async_request_refresh after write when entity has a mask, so dependent sensors update immediately Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a new "EV Charger" group to the Deye 3P profile based on the Deye Hybrid Inverter Modbus RTU V105.4 specification (https://github.com/user-attachments/files/26004301/Deye.hybrid.inverter.MODBUS.RTU.V105.4-20240813.pdf).
Profile (deye_p3.yaml) — new group "EV Charger":
Platform fixes:
mask(top-level, not display.mask) — reads current register, clears masked bits, ORs in new value before writing; triggers coordinator refresh after masked writesmaskanddivide(used by Off-Grid SOC); fixes value_int overflow check (>= 0xFFFF → <= 0xFFFF)