From cb03118b5ad8a5b4fc2365a8ac6281c8d1768ee6 Mon Sep 17 00:00:00 2001 From: reachableceo Date: Wed, 2 Sep 2026 18:54:12 -0500 Subject: [PATCH] =?UTF-8?q?fix(plant):=20drop=20device=5Fclass=20from=20sn?= =?UTF-8?q?mp=20sensors=20=E2=80=94=20empty=20first=20render=20kills=20add?= =?UTF-8?q?=20[#344]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit HA 2026.8 raises ValueError(int('')) at entity ADD when a device_classed snmp sensor's first render is empty (host down at boot/reload), so the entity silently vanishes (artroom/garage/subopi3). Units alone keep the °F/W/A display; automations are numeric_state, dashboards don't filter on device_class. https://projects.knownelement.com/issues/344#note-3916 --- packages/plant_snmp.yaml | 27 +++++---------------------- 1 file changed, 5 insertions(+), 22 deletions(-) diff --git a/packages/plant_snmp.yaml b/packages/plant_snmp.yaml index 0c5478e..1250ceb 100644 --- a/packages/plant_snmp.yaml +++ b/packages/plant_snmp.yaml @@ -1,4 +1,9 @@ sensor: + # NOTE (2026-09-02, HA 2026.8): NO device_class on snmp platform sensors. + # HA 2026.8 hard-fails entity ADD when a device_classed sensor's first + # render is empty (host down/asleep at boot) — ValueError int('') drops + # the entity until manual reload. unit_of_measurement alone keeps °F/W/A + # display; numeric_state triggers and dashboards do not need device_class. # --- TEMPer USB probe hosts (External probe, Internal fallback) --- - platform: snmp name: "PFV artroom temperature" @@ -7,7 +12,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_artroom_temperature value_template: >- @@ -23,7 +27,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_garage_temperature value_template: >- @@ -39,7 +42,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_tsys1_rack_temperature value_template: >- @@ -57,7 +59,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_tsys3_cpu_temperature value_template: >- @@ -72,7 +73,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_tsys4_ambient_temperature value_template: >- @@ -87,7 +87,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_tsys5_ambient_temperature value_template: >- @@ -102,7 +101,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_tsys6_cpu_temperature value_template: >- @@ -117,7 +115,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: power unit_of_measurement: "W" unique_id: pfv_tsys6_node_power value_template: >- @@ -132,7 +129,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_tsys7_cpu_temperature value_template: >- @@ -147,7 +143,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: power unit_of_measurement: "W" unique_id: pfv_tsys7_node_power value_template: >- @@ -162,7 +157,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_tsys9_cpu_temperature value_template: >- @@ -177,7 +171,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_jetson_temperature value_template: >- @@ -191,7 +184,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_svrpi_temperature value_template: >- @@ -205,7 +197,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_subopi3_temperature value_template: >- @@ -219,7 +210,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_subopi_dev_3_temperature value_template: >- @@ -233,7 +223,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.108.109.115.101.110.115.111.114.115 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_subopi_dev_4_temperature value_template: >- @@ -250,7 +239,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.4.100.114.97.99 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_tsys6_drac_ambient value_template: >- @@ -264,7 +252,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.4.100.114.97.99 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_tsys7_drac_inlet value_template: >- @@ -278,7 +265,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.4.100.114.97.99 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_tsys7_drac_exhaust value_template: >- @@ -292,7 +278,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.4.100.114.97.99 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_tsys7_drac_cpu1 value_template: >- @@ -306,7 +291,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.4.100.114.97.99 accept_errors: true - device_class: temperature unit_of_measurement: "°F" unique_id: pfv_tsys7_drac_cpu2 value_template: >- @@ -323,7 +307,6 @@ sensor: community: kn3lmgmt baseoid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.9.103.97.114.97.103.101.112.100.117 accept_errors: true - device_class: current unit_of_measurement: "A" unique_id: pfv_garage_pdu_amps value_template: >-