Skip to content

Add Home Assistant MQTT discovery for system trouble sensors#603

Open
cpavot wants to merge 1 commit into
ParadoxAlarmInterface:devfrom
cpavot:cpavot-pai-troubles-discovery
Open

Add Home Assistant MQTT discovery for system trouble sensors#603
cpavot wants to merge 1 commit into
ParadoxAlarmInterface:devfrom
cpavot:cpavot-pai-troubles-discovery

Conversation

@cpavot
Copy link
Copy Markdown

@cpavot cpavot commented May 19, 2026

Hello,

Note sure why troubles are currently not propagated from alarm panel to Home Assistant. I find it useful to notify me when something goes wrong (typically AC power failure troube). So let me know if I missed something (maybe something specific to my setup ?).

And thanks for the great job, that's awesome to have such a mature implementation !

Summary

This PR adds Home Assistant MQTT discovery for panel trouble states exposed by PAI.

PAI already publishes trouble states under:

paradox/states/system/troubles/...

but Home Assistant discovery was only generated from status["system"]. On MG/SP panels, troubles are present in the status update payload as a top-level status["troubles"] branch, so Home Assistant did not create the corresponding binary sensors.

This PR normalizes the discovery input by adding the top-level troubles branch to the system discovery flow, producing entities such as:

binary_sensor._system_troubles_ac_failure_trouble
binary_sensor._system_troubles_low_battery_trouble
binary_sensor._system_troubles_telephone_line

Why

This makes system trouble states directly available in Home Assistant without relying on raw event parsing or custom automations.

Notes

The existing SystemBinarySensor implementation and MQTT topic convention are reused. No new MQTT state topic structure is introduced.

@sonarqubecloud
Copy link
Copy Markdown

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.

1 participant