From efb1e5f1f374d4438c96e1b292eab8a707f29aff Mon Sep 17 00:00:00 2001 From: Alex Savin Date: Wed, 12 Feb 2025 14:03:15 -0500 Subject: [PATCH] Added mqtt sensors for the Weather station Acurite Atlas --- .../mqtt/{mqtt.yaml.bak => .mqtt.yaml.bak} | 0 configuration/mqtt/mqtt.yaml | 291 ++++++++++++++---- 2 files changed, 238 insertions(+), 53 deletions(-) rename configuration/mqtt/{mqtt.yaml.bak => .mqtt.yaml.bak} (100%) diff --git a/configuration/mqtt/mqtt.yaml.bak b/configuration/mqtt/.mqtt.yaml.bak similarity index 100% rename from configuration/mqtt/mqtt.yaml.bak rename to configuration/mqtt/.mqtt.yaml.bak diff --git a/configuration/mqtt/mqtt.yaml b/configuration/mqtt/mqtt.yaml index 3e5a929..48bd63f 100644 --- a/configuration/mqtt/mqtt.yaml +++ b/configuration/mqtt/mqtt.yaml @@ -28,57 +28,242 @@ sensor: state_topic: "zigbee02/bridge/state" icon: mdi:router-wireless -# - name: '' -# unique_id: -# device: -# state_topic: 'rtl433-01/RTL_433_ESP_OOK/RTL_433toMQTT/Acurite-Atlas/A/409' -# json_attributes_topic -# suggested_display_precision: 1 -# unit_of_measurement: "°C" -# value_template: "{{ value_json.temperature }}" -# availability: -# - topic: "home/sensor1/status" -# payload_available: "online" -# payload_not_available: "offline" -# -#{"model":"Acurite-Atlas","id":409,"channel":"A","sequence_num":0,"battery_ok":1,"message_type":39,"wind_avg_km_h":0,"uv":1,"lux":12710,"strike_count":14,"strike_distance":0,"exception":0,"raw_msg":"c199e70081097703c005","protocol":"Acurite 592TXR Temp/Humidity, 592TX Temp, 5n1 Weather Station, 6045 Lightning, 899 Rain, 3N1, Atlas","rssi":-79,"duration":151996} +# {"model":"Acurite-Atlas","id":409,"channel":"A","sequence_num":0,"battery_ok":1,"message_type":37,"wind_avg_km_h":0,"temperature_C":2.77778,"humidity":45,"strike_count":14,"strike_distance":0,"exception":0,"raw_msg":"c199650006822d03c037","protocol":"Acurite 592TXR Temp/Humidity, 592TX Temp, 5n1 Weather Station, 6045 Lightning, 899 Rain, 3N1, Atlas","rssi":-77,"duration":152997} +# {"model":"Acurite-Atlas","id":409,"channel":"A","sequence_num":0,"battery_ok":1,"message_type":38,"wind_avg_km_h":4.82803,"wind_dir_deg":280,"rain_mm":60.706,"strike_count":14,"strike_distance":0,"exception":0,"raw_msg":"c199668148e16f03c09c80","protocol":"Acurite 592TXR Temp/Humidity, 592TX Temp, 5n1 Weather Station, 6045 Lightning, 899 Rain, 3N1, Atlas","rssi":-77,"duration":155997} +# {"model":"Acurite-Atlas","id":409,"channel":"A","sequence_num":0,"battery_ok":1,"message_type":39,"wind_avg_km_h":0,"uv":1,"lux":12710,"strike_count":14,"strike_distance":0,"exception":0,"raw_msg":"c199e70081097703c005","protocol":"Acurite 592TXR Temp/Humidity, 592TX Temp, 5n1 Weather Station, 6045 Lightning, 899 Rain, 3N1, Atlas","rssi":-79,"duration":151996} -# - name: "Outdoor Temp" -# state_topic: "rtl433/ESP32-RTL-433-01/RTL_433toMQTT/Acurite-Atlas/A/409" -# unit_of_measurement: '°C' -# value_template: > -# {% if value_json is defined and value_json.message_type == 37 %} -# {{ value_json.temperature_C }} -# {% else %} -# {{ states('sensor.outdoor_temp') }} -# {% endif %} -# -# - name: "Outdoor Humidity" -# state_topic: "rtl433/ESP32-RTL-433-01/RTL_433toMQTT/Acurite-Atlas/A/409" -# unit_of_measurement: '%' -# value_template: > -# {% if value_json is defined and value_json.message_type == 37 %} -# {{ value_json.humidity }} -# {% else %} -# {{ states('sensor.outdoor_humidity') }} -# {% endif %} -# -# - name: "Outdoor UV" -# state_topic: "rtl433/ESP32-RTL-433-01/RTL_433toMQTT/Acurite-Atlas/A/409" -# unit_of_measurement: 'UV' -# value_template: > -# {% if value_json is defined and value_json.message_type == 39 %} -# {{ value_json.uv }} -# {% else %} -# {{ states('sensor.outdoor_uv') }} -# {% endif %} -# -# - name: "Outdoor LUX" -# state_topic: "rtl433/ESP32-RTL-433-01/RTL_433toMQTT/Acurite-Atlas/A/409" -# unit_of_measurement: 'lx' -# value_template: > -# {% if value_json is defined and value_json.message_type == 39 %} -# {{ value_json.lux }} -# {% else %} -# {{ states('sensor.outdoor_lux') }} -# {% endif %} +# {"stat_t":"+/+/RTL_433toMQTT/Acurite-Atlas/A/409","dev_cla":"signal_strength","unit_of_meas":"dB","name":"RSSI","uniq_id":"Acurite-Atlas-A-409-rssi","val_tpl":"{{ value_json.rssi | is_defined }}","stat_cla":"measurement","device":{"ids":["Acurite-Atlas-A-409"],"cns":[["mac","Acurite-Atlas-A-409"]],"mdl":"Acurite-Atlas","name":"Acurite-Atlas-A-409","via_device":"RTL_433_ESP_OOK"}} + - name: 'RSSI' + unique_id: 'Acurite-Atlas-409-A-Strike-RSSI' + state_topic: 'rtl433-01/RTL_433_ESP_OOK/RTL_433toMQTT/Acurite-Atlas/A/409' + value_template: "{{ value_json.rssi | is_defined }}" + unit_of_measurement: "dB" + device_class: "signal_strength" + device: + via_device: RTL_433_ESP_OOK + model: Acurite-Atlas + identifiers: + - Acurite-Atlas-A-409 + connections: + - - mac + - Acurite-Atlas-A-409 + name: Acurite-Atlas-A-409 + availability: + - topic: "rtl433-01/RTL_433_ESP_OOK/LWT" + payload_available: "online" + payload_not_available: "offline" + +# {"stat_t":"+/+/RTL_433toMQTT/Acurite-Atlas/A/409","dev_cla":"temperature","unit_of_meas":"°C","name":"Temperature","uniq_id":"Acurite-Atlas-A-409-temperature_C","val_tpl":"{{ value_json.temperature_C | is_defined }}","stat_cla":"measurement","device":{"ids":["Acurite-Atlas-A-409"],"cns":[["mac","Acurite-Atlas-A-409"]],"mdl":"Acurite-Atlas","name":"Acurite-Atlas-A-409","via_device":"RTL_433_ESP_OOK"}} + - name: 'Temperature' + unique_id: 'Acurite-Atlas-409-A-Strike-Temperature' + state_topic: 'rtl433-01/RTL_433_ESP_OOK/RTL_433toMQTT/Acurite-Atlas/A/409' + value_template: "{{ value_json.temperature_C | is_defined }}" + unit_of_measurement: "°C" + device_class: "temperature" + device: + via_device: RTL_433_ESP_OOK + model: Acurite-Atlas + identifiers: + - Acurite-Atlas-A-409 + connections: + - - mac + - Acurite-Atlas-A-409 + name: Acurite-Atlas-A-409 + availability: + - topic: "rtl433-01/RTL_433_ESP_OOK/LWT" + payload_available: "online" + payload_not_available: "offline" + +# {"stat_t":"+/+/RTL_433toMQTT/Acurite-Atlas/A/409","dev_cla":"humidity","unit_of_meas":"%","name":"Humidity","uniq_id":"Acurite-Atlas-A-409-humidity","val_tpl":"{{ value_json.humidity | is_defined }}","stat_cla":"measurement","device":{"ids":["Acurite-Atlas-A-409"],"cns":[["mac","Acurite-Atlas-A-409"]],"mdl":"Acurite-Atlas","name":"Acurite-Atlas-A-409","via_device":"RTL_433_ESP_OOK"}} + - name: 'Humidity' + unique_id: 'Acurite-Atlas-409-A-Strike-Humidity' + state_topic: 'rtl433-01/RTL_433_ESP_OOK/RTL_433toMQTT/Acurite-Atlas/A/409' + value_template: "{{ value_json.humidity | is_defined }}" + unit_of_measurement: "%" + state_class: "measurement" + device_class: "precipitation" + device: + via_device: RTL_433_ESP_OOK + model: Acurite-Atlas + identifiers: + - Acurite-Atlas-A-409 + connections: + - - mac + - Acurite-Atlas-A-409 + name: Acurite-Atlas-A-409 + availability: + - topic: "rtl433-01/RTL_433_ESP_OOK/LWT" + payload_available: "online" + payload_not_available: "offline" + +# {"stat_t":"+/+/RTL_433toMQTT/Acurite-Atlas/A/409","dev_cla":"wind_speed","unit_of_meas":"km/h","name":"Wind average","uniq_id":"Acurite-Atlas-A-409-wind_avg_km_h","val_tpl":"{{ value_json.wind_avg_km_h | is_defined }}","stat_cla":"measurement","device":{"ids":["Acurite-Atlas-A-409"],"cns":[["mac","Acurite-Atlas-A-409"]],"mdl":"Acurite-Atlas","name":"Acurite-Atlas-A-409","via_device":"RTL_433_ESP_OOK"}} + - name: 'Wind Speed (Average)' + unique_id: 'Acurite-Atlas-409-A-Wind-Speed' + state_topic: 'rtl433-01/RTL_433_ESP_OOK/RTL_433toMQTT/Acurite-Atlas/A/409' + value_template: "{{ value_json.wind_avg_km_h | is_defined }}" + state_class: "measurement" + unit_of_measurement: "km/h" + device_class: "wind_speed" + device: + via_device: RTL_433_ESP_OOK + model: Acurite-Atlas + identifiers: + - Acurite-Atlas-A-409 + connections: + - - mac + - Acurite-Atlas-A-409 + name: Acurite-Atlas-A-409 + availability: + - topic: "rtl433-01/RTL_433_ESP_OOK/LWT" + payload_available: "online" + payload_not_available: "offline" + +# {"stat_t":"+/+/RTL_433toMQTT/Acurite-Atlas/A/409","unit_of_meas":"°","name":"Wind direction","uniq_id":"Acurite-Atlas-A-409-wind_dir_deg","val_tpl":"{{ value_json.wind_dir_deg | is_defined }}","stat_cla":"measurement","device":{"ids":["Acurite-Atlas-A-409"],"cns":[["mac","Acurite-Atlas-A-409"]],"mdl":"Acurite-Atlas","name":"Acurite-Atlas-A-409","via_device":"RTL_433_ESP_OOK"}} + - name: 'Wind Direction' + unique_id: 'Acurite-Atlas-409-A-Wind-Direction' + state_topic: 'rtl433-01/RTL_433_ESP_OOK/RTL_433toMQTT/Acurite-Atlas/A/409' + value_template: "{{ value_json.wind_dir_deg | is_defined }}" + state_class: measurement + unit_of_measurement: "°" + device: + via_device: RTL_433_ESP_OOK + model: Acurite-Atlas + identifiers: + - Acurite-Atlas-A-409 + connections: + - - mac + - Acurite-Atlas-A-409 + name: Acurite-Atlas-A-409 + availability: + - topic: "rtl433-01/RTL_433_ESP_OOK/LWT" + payload_available: "online" + payload_not_available: "offline" + +# {"stat_t":"+/+/RTL_433toMQTT/Acurite-Atlas/A/409","dev_cla":"precipitation","unit_of_meas":"mm","name":"Rain","uniq_id":"Acurite-Atlas-A-409-rain_mm","val_tpl":"{{ value_json.rain_mm | is_defined }}","stat_cla":"measurement","device":{"ids":["Acurite-Atlas-A-409"],"cns":[["mac","Acurite-Atlas-A-409"]],"mdl":"Acurite-Atlas","name":"Acurite-Atlas-A-409","via_device":"RTL_433_ESP_OOK"}} + - name: 'Rain' + unique_id: 'Acurite-Atlas-409-A-Rain-MM' + state_topic: 'rtl433-01/RTL_433_ESP_OOK/RTL_433toMQTT/Acurite-Atlas/A/409' + value_template: "{{ value_json.rain_mm | is_defined }}" + state_class: "measurement" + unit_of_measurement: "mm" + device_class: "precipitation" + device: + via_device: RTL_433_ESP_OOK + model: Acurite-Atlas + identifiers: + - Acurite-Atlas-A-409 + connections: + - - mac + - Acurite-Atlas-A-409 + name: Acurite-Atlas-A-409 + availability: + - topic: "rtl433-01/RTL_433_ESP_OOK/LWT" + payload_available: "online" + payload_not_available: "offline" + +# {"stat_t":"+/+/RTL_433toMQTT/Acurite-Atlas/A/409","name":"UV","uniq_id":"Acurite-Atlas-A-409-uv","val_tpl":"{{ value_json.uv | is_defined }}","stat_cla":"measurement","device":{"ids":["Acurite-Atlas-A-409"],"cns":[["mac","Acurite-Atlas-A-409"]],"mdl":"Acurite-Atlas","name":"Acurite-Atlas-A-409","via_device":"RTL_433_ESP_OOK"}} + - name: 'UV' + unique_id: 'Acurite-Atlas-409-A-UV' + state_topic: 'rtl433-01/RTL_433_ESP_OOK/RTL_433toMQTT/Acurite-Atlas/A/409' + value_template: "{{ value_json.uv | is_defined }}" + state_class: "measurement" + device: + via_device: RTL_433_ESP_OOK + model: Acurite-Atlas + identifiers: + - Acurite-Atlas-A-409 + connections: + - - mac + - Acurite-Atlas-A-409 + name: Acurite-Atlas-A-409 + availability: + - topic: "rtl433-01/RTL_433_ESP_OOK/LWT" + payload_available: "online" + payload_not_available: "offline" + +# {"stat_t":"+/+/RTL_433toMQTT/Acurite-Atlas/A/409","dev_cla":"illuminance","unit_of_meas":"lx","name":"Illuminance","uniq_id":"Acurite-Atlas-A-409-lux","val_tpl":"{{ value_json.lux | is_defined }}","stat_cla":"measurement","device":{"ids":["Acurite-Atlas-A-409"],"cns":[["mac","Acurite-Atlas-A-409"]],"mdl":"Acurite-Atlas","name":"Acurite-Atlas-A-409","via_device":"RTL_433_ESP_OOK"}} + - name: 'Illuminance' + unique_id: 'Acurite-Atlas-409-A-LUX' + state_topic: 'rtl433-01/RTL_433_ESP_OOK/RTL_433toMQTT/Acurite-Atlas/A/409' + json_attributes_topic: 'rtl433-01/RTL_433_ESP_OOK/RTL_433toMQTT/Acurite-Atlas/A/409' + value_template: "{{ value_json.lux | is_defined }}" + state_class: "measurement" + unit_of_measurement: "lx" + device_class: "illuminance" + device: + via_device: RTL_433_ESP_OOK + model: Acurite-Atlas + identifiers: + - Acurite-Atlas-A-409 + connections: + - - mac + - Acurite-Atlas-A-409 + name: Acurite-Atlas-A-409 + availability: + - topic: "rtl433-01/RTL_433_ESP_OOK/LWT" + payload_available: "online" + payload_not_available: "offline" + +# {"stat_t":"+/+/RTL_433toMQTT/Acurite-Atlas/A/409","name":"Strike count","uniq_id":"Acurite-Atlas-A-409-strike_count","val_tpl":"{{ value_json.strike_count | is_defined }}","pl_on":"1","pl_off":"0","stat_cla":"total_increasing","device":{"ids":["Acurite-Atlas-A-409"],"cns":[["mac","Acurite-Atlas-A-409"]],"mdl":"Acurite-Atlas","name":"Acurite-Atlas-A-409","via_device":"RTL_433_ESP_OOK"}} + - name: 'Strike Count' + unique_id: 'Acurite-Atlas-409-A-Strike-Count' + state_topic: 'rtl433-01/RTL_433_ESP_OOK/RTL_433toMQTT/Acurite-Atlas/A/409' + json_attributes_topic: 'rtl433-01/RTL_433_ESP_OOK/RTL_433toMQTT/Acurite-Atlas/A/409' + value_template: "{{ value_json.strike_count | is_defined }}" + state_class: "total_increasing" + device: + via_device: RTL_433_ESP_OOK + model: Acurite-Atlas + identifiers: + - Acurite-Atlas-A-409 + connections: + - - mac + - Acurite-Atlas-A-409 + name: Acurite-Atlas-A-409 + availability: + - topic: "rtl433-01/RTL_433_ESP_OOK/LWT" + payload_available: "online" + payload_not_available: "offline" + +# {"stat_t":"+/+/RTL_433toMQTT/Acurite-Atlas/A/409","dev_cla":"distance","name":"Strike distance","uniq_id":"Acurite-Atlas-A-409-strike_distance","val_tpl":"{{ value_json.strike_distance | is_defined }}","stat_cla":"measurement","device":{"ids":["Acurite-Atlas-A-409"],"cns":[["mac","Acurite-Atlas-A-409"]],"mdl":"Acurite-Atlas","name":"Acurite-Atlas-A-409","via_device":"RTL_433_ESP_OOK"}} + - name: 'Strike Distance' + unique_id: 'Acurite-Atlas-409-A-Strike-Distance' + state_topic: 'rtl433-01/RTL_433_ESP_OOK/RTL_433toMQTT/Acurite-Atlas/A/409' + json_attributes_topic: 'rtl433-01/RTL_433_ESP_OOK/RTL_433toMQTT/Acurite-Atlas/A/409' + value_template: "{{ value_json.strike_distance | is_defined }}" + state_class: "measurement" + device_class: "distance" + device: + via_device: RTL_433_ESP_OOK + model: Acurite-Atlas + identifiers: + - Acurite-Atlas-A-409 + connections: + - - mac + - Acurite-Atlas-A-409 + name: Acurite-Atlas-A-409 + availability: + - topic: "rtl433-01/RTL_433_ESP_OOK/LWT" + payload_available: "online" + payload_not_available: "offline" + + - name: Battery + unique_id: Acurite-Atlas-A-409-battery_ok + state_topic: "+/+/RTL_433toMQTT/Acurite-Atlas/A/409" + payload_off: '1' + payload_on: '0' + value_template: '{{ value_json.battery_ok | is_defined }}' + device_class: battery + device: + via_device: RTL_433_ESP_OOK + model: Acurite-Atlas + identifiers: + - Acurite-Atlas-A-409 + connections: + - - mac + - Acurite-Atlas-A-409 + name: Acurite-Atlas-A-409 + availability: + - topic: "rtl433-01/RTL_433_ESP_OOK/LWT" + payload_available: "online" + payload_not_available: "offline"