Skip to content

Remove Inovelli entities - #802

Merged
TheJulianJES merged 3 commits into
devfrom
zigpy-bot/inovelli-drop-hardcoded-entities
Jul 29, 2026
Merged

Remove Inovelli entities#802
TheJulianJES merged 3 commits into
devfrom
zigpy-bot/inovelli-drop-hardcoded-entities

Conversation

@TheJulianJES

@TheJulianJES TheJulianJES commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

Proposed change

The Inovelli VZM switch/select/number/sensor configuration entities were hard-coded in the ZHA library and matched on the Inovelli manufacturer cluster (0xFC31). They are now declared by the zha-quirks v2 device handlers (InovelliQuirkBuilder), so the library copies are removed to avoid creating duplicate entities.

The quirks v2 entities reuse the exact unique_ids these classes produced (suffix "64561-"), so existing Home Assistant entities are preserved. The Inovelli virtual bind/init entities and the INOVELLI_CLUSTER constant are kept.

Regenerated the inovelli-vzm30/31/35 device snapshots (entity classes change from the removed Inovelli* classes to the generic quirks v2 entity classes; unique_ids are unchanged) and added snapshots for VZM32-SN and VZM36.

Corresponding quirks PR(s):

The Inovelli VZM switch/select/number/sensor configuration entities were
hard-coded in the ZHA library and matched on the Inovelli manufacturer
cluster (0xFC31). They are now declared by the zha-quirks v2 device handlers
(InovelliQuirkBuilder), so the library copies are removed to avoid creating
duplicate entities.

The quirks v2 entities reuse the exact unique_ids these classes produced
(suffix "64561-<attribute>"), so existing Home Assistant entities are
preserved. The Inovelli virtual bind/init entities and the INOVELLI_CLUSTER
constant are kept.

Regenerated the Inovelli device snapshots (entity classes change from the
removed Inovelli* classes to the generic quirks v2 entity classes; unique_ids
are unchanged) and added VZM32-SN and VZM36 snapshots.

Requires a zha-quirks release containing the Inovelli v2 entity port; this
must land in the same ZHA release that bumps the zha-quirks pin.
@zigpy-review-bot
zigpy-review-bot force-pushed the zigpy-bot/inovelli-drop-hardcoded-entities branch from 1ec2141 to 0f53bac Compare June 25, 2026 21:07
…p-hardcoded-entities

# Conflicts:
#	tests/data/devices/inovelli-vzm30-sn-0x01100100.json
#	tests/data/devices/inovelli-vzm30-sn.json
#	tests/data/devices/inovelli-vzm31-sn-0x01020212.json
#	tests/data/devices/inovelli-vzm35-sn-0x02020107.json
…p-hardcoded-entities

# Conflicts:
#	tests/data/devices/inovelli-vzm30-sn.json
#	tests/data/devices/inovelli-vzm31-sn-0x01020212.json
#	tests/data/devices/inovelli-vzm35-sn-0x02020107.json
@TheJulianJES
TheJulianJES marked this pull request as ready for review July 29, 2026 04:32
Copilot AI review requested due to automatic review settings July 29, 2026 04:32
@codecov

codecov Bot commented Jul 29, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.15%. Comparing base (353d766) to head (df930c6).

Additional details and impacted files
@@            Coverage Diff             @@
##              dev     #802      +/-   ##
==========================================
- Coverage   97.26%   97.15%   -0.12%     
==========================================
  Files          55       55              
  Lines       10906    10482     -424     
==========================================
- Hits        10608    10184     -424     
  Misses        298      298              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Removes Inovelli VZM configuration entities that were previously hard-coded in ZHA’s platform modules so that the zha-quirks v2 device handlers can be the single source of truth (avoiding duplicate entities while keeping existing entity unique_ids stable).

Changes:

  • Removed Inovelli (0xFC31 / INOVELLI_CLUSTER) entity registrations from the switch/select/number/sensor platforms.
  • Regenerated existing Inovelli VZM device snapshots to reflect the new generic quirks v2 entity classes (while preserving unique_ids).
  • Added new device snapshots for VZM32-SN and VZM36.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated no comments.

Show a summary per file
File Description
zha/application/platforms/switch.py Removes Inovelli-specific configurable switches registered on INOVELLI_CLUSTER.
zha/application/platforms/sensor/init.py Removes Inovelli-specific sensors (internal temp + overheat enum) registered on INOVELLI_CLUSTER.
zha/application/platforms/select.py Removes Inovelli-specific select entities and enums previously tied to INOVELLI_CLUSTER.
zha/application/platforms/number/init.py Removes Inovelli-specific number configuration entities registered on INOVELLI_CLUSTER.
tests/data/devices/inovelli-vzm36.json Adds snapshot coverage for VZM36 using quirks v2 entity classes.
tests/data/devices/inovelli-vzm35-sn-0x02020107.json Updates snapshot to reflect generic quirks v2 entity classes and updated fallback names.
tests/data/devices/inovelli-vzm32-sn-0x0103000a.json Adds snapshot coverage for VZM32-SN using quirks v2 entity classes.
tests/data/devices/inovelli-vzm31-sn-0x01020212.json Updates snapshot to reflect generic quirks v2 entity classes and updated fallback names.
tests/data/devices/inovelli-vzm30-sn.json Updates snapshot to reflect generic quirks v2 entity classes and updated fallback names.
tests/data/devices/inovelli-vzm30-sn-0x01100100.json Updates snapshot to reflect generic quirks v2 entity classes and updated fallback names.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@TheJulianJES
TheJulianJES merged commit a270540 into dev Jul 29, 2026
11 checks passed
@TheJulianJES
TheJulianJES deleted the zigpy-bot/inovelli-drop-hardcoded-entities branch July 29, 2026 16:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants