Repository navigation
Releases: s1lvi0/deva4004
Release list
v2.3
New: structured attributes on alarm sensors
Each alarm sensor now exposes the following extra_state_attributes:
location— e.g.URBINO,PESAROfrequency_mhz— e.g.103.0station_name— e.g.KISS(the leading103.0from the SNMP-side name is stripped)alarm_type—RF,MPX,Pilot, orRDSlevel_entity_id— the matching*_levelsensor for this alarmlevel_unit—dBμVfor RF,kHzotherwise
This lets automations and dashboards read fields directly via state_attr() instead of parsing friendly_name, which Home Assistant composes as \"{device.name} {entity.original_name}\" and produces a duplicated prefix (e.g. \"103.0 KISS DEVA_URBINO 103.0 KISS RF Alarm\").
See the README changelog for full version history.
v2.2
Bug fix: blocking I/O on the event loop
Restored lookupMib=False in _get_oid and _get_snmp_subtree. Without it, pysnmp's MIB loader was making synchronous os.listdir() and open() calls inside the asyncio event loop on every received SNMP message, which triggered Home Assistant's blocking-call watchdog (homeassistant.util.loop "Detected blocking call to listdir/open ... inside the event loop") and pushed sensor platform setup past the 10-second warning threshold.
_get_monitor_data already had lookupMib=False and was unaffected.
See the README changelog for full version history.
v2.1
- Share a single SNMP engine across all polling calls instead of creating one per request
- Promote SNMP errors from debug to error so failures surface without enabling debug logging
- Simplify config flow validation by relying on the SNMP probe result
- Guard
async_unload_entryagainst a missinghass.data["deva4004"]entry
See the README changelog for full version history.