Skip to content

Expose Evohome faults as binary sensors of problem class#168634

Open
zxdavb wants to merge 9 commits intohome-assistant:devfrom
zxdavb:evo_add_sensors
Open

Expose Evohome faults as binary sensors of problem class#168634
zxdavb wants to merge 9 commits intohome-assistant:devfrom
zxdavb:evo_add_sensors

Conversation

@zxdavb
Copy link
Copy Markdown
Member

@zxdavb zxdavb commented Apr 20, 2026

Proposed change

Add binary sensors to Evohome that expose active system faults as PROBLEMs with extra_state_attributes containing the details of any faults.

Type of change

  • Dependency upgrade
  • Bugfix (non-breaking change which fixes an issue)
  • New integration (thank you!)
  • New feature (which adds functionality to an existing integration)
  • Deprecation (breaking change to happen in the future)
  • Breaking change (fix/feature causing existing functionality to break)
  • Code quality improvements to existing code or addition of tests

Additional information

Checklist

  • I understand the code I am submitting and can explain how it works.
  • The code change is tested and works locally.
  • Local tests pass. Your PR cannot be merged unless tests pass
  • There is no commented out code in this PR.
  • I have followed the development checklist
  • I have followed the perfect PR recommendations
  • The code has been formatted using Ruff (ruff format homeassistant tests)
  • Tests have been added to verify that the new code works.
  • Any generated code has been carefully reviewed for correctness and compliance with project standards.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • For the updated dependencies a diff between library versions and ideally a link to the changelog/release notes is added to the PR description.

To help with the load of incoming pull requests:

zxdavb and others added 6 commits April 20, 2026 14:40
Exposes active faults from Evohome zones and DHW as Problem binary sensors,
providing a dedicated entity for fault monitoring in place of extra_state_attrs.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@zxdavb zxdavb changed the title Expose Evohome faults via the BINARY_SENSORS platform Expose Evohome faults as binary sensors of problem class Apr 20, 2026
Comment thread homeassistant/components/evohome/binary_sensor.py Outdated
Comment thread homeassistant/components/evohome/binary_sensor.py Outdated
class EvoDhwFaultSensor(EvoFaultSensorBase):
"""Fault sensor for a DHW controller."""

_attr_name = "DHW faults"
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.

The names should be translatable.

Copy link
Copy Markdown
Member Author

@zxdavb zxdavb Apr 20, 2026

Choose a reason for hiding this comment

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

Whoops - the intention was to take _attr_name out altogether!

Very recently, when I did translatable names in a similar PR, joostlek suggested it was pragmatic to remove it from that PR: #167550 (comment)

Hmm, in a way I like the translation, but given that the rest of the integration isn't translated at all, I'd maybe just opt to say, keep it simple for yourself and just do it like the other entities

Reason:

  • Evohome is an older integration, and much of it that should be translatable is not
  • the complexity of handling dynamic zone names vs @cached_property

My plan to address translation en-masse, when I go for platinum. Hope that's OK?

@home-assistant
Copy link
Copy Markdown

Please take a look at the requested changes, and use the Ready for review button when you are done, thanks 👍

Learn more about our pull request process.

@home-assistant home-assistant bot marked this pull request as draft April 20, 2026 17:31
@elupus
Copy link
Copy Markdown
Contributor

elupus commented Apr 20, 2026

Ps. I like the idea of this. These multi problem sensors are annoying. I wish there was a way to display the error list in frontend though.

@zxdavb zxdavb requested a review from elupus April 20, 2026 19:06
@zxdavb zxdavb marked this pull request as ready for review April 20, 2026 19:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants