donikdesign
New member
Ich glaube du musst mal Titel lesen ;-) Hier ist only Home Assistant IoBroker gibts glaub auch nen Beitrag.Cool. Ist das in iobroker ?
Das WLANThermo Team wünscht euch allen fröhliche und glückliche Feiertage!
Ich glaube du musst mal Titel lesen ;-) Hier ist only Home Assistant IoBroker gibts glaub auch nen Beitrag.Cool. Ist das in iobroker ?
I had something similar with code from the forum but it gave me lots of errors. defaults were not defined and when the wlan was not on: the page gave unavailable errors. have you got that also or do you use another solution? willing to share?Hello,
I haven't had my WLANThermo Mini V3 yet, but I've already made something nice for Lovelace. Maybe that inspires one or the other. (I do not use Pitmaster, so this is not displayed)
Anhang anzeigen 6094
Any update on this?I'm currently working on integrating the whole thing properly into HA.
As soon as I'm completely finished, the files and the instructions will be available. Would like to make this possible for everyone
Here is a preview of the blueprint:
Anhang anzeigen 6099
sensor:
name: "WLANThermo"
state_topic: "WLanThermo/WlanThermo/status/data"
value_template: "{{ value_json.system.soc }}"
json_attributes_topic: "WLanThermo/WlanThermo/status/data"
json_attributes_template: "{{ value_json | tojson }}"
device_class: battery
unit_of_measurement: "%"
expire_after: 60
mqtt: !include mqtt.yaml
ich schließe mich direkt an. Ich muss mich auch mit dder Version 22.12... anfreunden und komme so gar nicht mit der Integration vom Thermo zurecht.Hallo zusammen,
ich bin Einsteiger was Home Assistant angeht. Den Batteriewert bekomme ich mit der Anpassung hin. Allerdings will der Zugriff auf die Temperaturkanäle mit der 2022.12.X Version nicht mehr so recht. Hat vielleicht jemand die Syntax in dem Bereich überarbeitet und würde sie teilen?
Beste Grüße
Robert
{
"system": {
"time": "1672929988",
"unit": "C",
"soc": 47,
"charge": false,
"rssi": -69,
"online": 0
},
"channel": [
{
"number": 1,
"name": "t1 Fleisch",
"typ": 0,
"temp": 999,
"min": 0,
"max": 55,
"alarm": 1,
"color": "#FF1DC4",
"fixed": false,
"connected": false
},
{
"number": 2,
"name": "t2",
"typ": 0,
"temp": 999,
"min": 0,
"max": 195,
"alarm": 2,
"color": "#22B14C",
"fixed": false,
"connected": false
},
{
"number": 3,
"name": "Kanal 3",
"typ": 0,
"temp": 999,
"min": 10,
"max": 165,
"alarm": 0,
"color": "#EF562D",
"fixed": false,
"connected": false
},
{
"number": 4,
"name": "Rost",
"typ": 0,
"temp": 999,
"min": 10,
"max": 130,
"alarm": 1,
"color": "#FFC100",
"fixed": false,
"connected": false
},
{
"number": 5,
"name": "t5 Fleisch",
"typ": 0,
"temp": 999,
"min": 0,
"max": 60,
"alarm": 1,
"color": "#A349A4",
"fixed": false,
"connected": false
},
{
"number": 6,
"name": "Kanal 6",
"typ": 0,
"temp": 999,
"min": 10,
"max": 35,
"alarm": 0,
"color": "#804000",
"fixed": false,
"connected": false
},
{
"number": 7,
"name": "t7 Garraum",
"typ": 0,
"temp": 999,
"min": 0,
"max": 235,
"alarm": 0,
"color": "#5587A2",
"fixed": false,
"connected": false
},
{
"number": 8,
"name": "Kanal 8",
"typ": 0,
"temp": 999,
"min": 10,
"max": 35,
"alarm": 0,
"color": "#5C7148",
"fixed": false,
"connected": false
},
{
"number": 9,
"name": "Garraum",
"typ": 15,
"temp": 999,
"min": 30,
"max": 250,
"alarm": 1,
"color": "#C3D69B",
"fixed": true,
"connected": false
}
],
"pitmaster": {
"type": [
"off",
"manual",
"auto"
],
"pm": [
{
"id": 0,
"channel": 1,
"pid": 3,
"value": 0,
"set": 50,
"typ": "off",
"typ_last": "manual",
"set_color": "#ff0000",
"value_color": "#000000"
}
]
}
}
system.soc gibt die Akkuspannung, und rssi z.B. die Signalstärke.{
"system": {
"time": "1672929988",
"unit": "C",
"soc": 47,
"charge": false,
"rssi": -69,
"online": 0
mqtt:
sensor:
- name: "WLANThermo - Akkuspannung"
state_topic: "WLanThermo/NANOV3/status/data"
value_template: "{{ value_json.system.soc }}"
json_attributes_topic: "WLanThermo/NANOV3/status/data"
json_attributes_template: "{{ value_json | tojson }}"
device_class: battery
unit_of_measurement: "%"
In der Regel muss man zum Auslesen eines Array einfach nur einen Index hinzufügen. So in etwa:Aber in das Array komm ich nicht rein, sorry!
value_template: "{{ value_json.channel[0].temp }}"
mqtt:
sensor:
- name: "Battery"
unique_id: "wlanthermo_battery"
state_topic: &wt_topic "WLanThermo/MINIV3/status/data"
value_template: "{{ value_json.system.soc }}"
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
device_class: battery
unit_of_measurement: "%"
expire_after: 60
device: &wt_device
name: "WlanTermo"
configuration_url: &wt_url "http://192.168.6.144/"
hw_version: "V3"
manufacturer: "WlanThermo"
model: "Mini V3"
identifiers: ["WlanThermo V3 Mini"]
enabled_by_default: true
# Wifi signal strength
- name: "Signal strength"
unique_id: "wlanthermo_signal_strength"
state_topic: *wt_topic
value_template: "{{ value_json.system.rssi }}"
unit_of_measurement: "dBm"
device_class: signal_strength
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
# Channel 1
- name: "Channel 1 name"
value_template: "{{value_json.channel[0].name}}"
unique_id: "wlan_thermo_channel_1_name"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 1 color"
value_template: "{{value_json.channel[0].color}}"
unique_id: "wlan_thermo_channel_1_color"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 1 current temp"
value_template: "{{value_json.channel[0].temp}}"
unique_id: "wlan_thermo_channel_1_temp"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 1 max temp"
value_template: "{{value_json.channel[0].max}}"
unique_id: "wlan_thermo_channel_1_max"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 1 min temp"
value_template: "{{value_json.channel[0].min}}"
unique_id: "wlan_thermo_channel_1_min"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
# Channel 2
- name: "Channel 2 name"
value_template: "{{value_json.channel[1].name}}"
unique_id: "wlan_thermo_channel_2_name"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 2 color"
value_template: "{{value_json.channel[1].color}}"
unique_id: "wlan_thermo_channel_2_color"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 2 current temp"
value_template: "{{value_json.channel[1].temp}}"
unique_id: "wlan_thermo_channel_2_temp"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 2 max temp"
value_template: "{{value_json.channel[1].max}}"
unique_id: "wlan_thermo_channel_2_max"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 2 min temp"
value_template: "{{value_json.channel[1].min}}"
unique_id: "wlan_thermo_channel_2_min"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
# Channel 3
- name: "Channel 3 name"
value_template: "{{value_json.channel[2].name}}"
unique_id: "wlan_thermo_channel_3_name"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 3 color"
value_template: "{{value_json.channel[2].color}}"
unique_id: "wlan_thermo_channel_3_color"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 3 current temp"
value_template: "{{value_json.channel[2].temp}}"
unique_id: "wlan_thermo_channel_3_temp"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 3 max temp"
value_template: "{{value_json.channel[2].max}}"
unique_id: "wlan_thermo_channel_3_max"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 3 min temp"
value_template: "{{value_json.channel[2].min}}"
unique_id: "wlan_thermo_channel_3_min"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
# Channel 4
- name: "Channel 4 name"
value_template: "{{value_json.channel[3].name}}"
unique_id: "wlan_thermo_channel_4_name"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 4 color"
value_template: "{{value_json.channel[3].color}}"
unique_id: "wlan_thermo_channel_4_color"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 4 current temp"
value_template: "{{value_json.channel[3].temp}}"
unique_id: "wlan_thermo_channel_4_temp"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 4 max temp"
value_template: "{{value_json.channel[3].max}}"
unique_id: "wlan_thermo_channel_4_max"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 4 min temp"
value_template: "{{value_json.channel[3].min}}"
unique_id: "wlan_thermo_channel_4_min"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
# Channel 5
- name: "Channel 5 name"
value_template: "{{value_json.channel[4].name}}"
unique_id: "wlan_thermo_channel_5_name"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 5 color"
value_template: "{{value_json.channel[4].color}}"
unique_id: "wlan_thermo_channel_5_color"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 5 current temp"
value_template: "{{value_json.channel[4].temp}}"
unique_id: "wlan_thermo_channel_5_temp"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 5 max temp"
value_template: "{{value_json.channel[4].max}}"
unique_id: "wlan_thermo_channel_5_max"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 5 min temp"
value_template: "{{value_json.channel[4].min}}"
unique_id: "wlan_thermo_channel_5_min"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
# Channel 6
- name: "Channel 6 name"
value_template: "{{value_json.channel[5].name}}"
unique_id: "wlan_thermo_channel_6_name"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 6 color"
value_template: "{{value_json.channel[5].color}}"
unique_id: "wlan_thermo_channel_6_color"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 6 current temp"
value_template: "{{value_json.channel[5].temp}}"
unique_id: "wlan_thermo_channel_6_temp"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 6 max temp"
value_template: "{{value_json.channel[5].max}}"
unique_id: "wlan_thermo_channel_6_max"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 6 min temp"
value_template: "{{value_json.channel[5].min}}"
unique_id: "wlan_thermo_channel_6_min"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
# Channel 7
- name: "Channel 7 name"
value_template: "{{value_json.channel[6].name}}"
unique_id: "wlan_thermo_channel_7_name"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 7 color"
value_template: "{{value_json.channel[6].color}}"
unique_id: "wlan_thermo_channel_7_color"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 7 current temp"
value_template: "{{value_json.channel[6].temp}}"
unique_id: "wlan_thermo_channel_7_temp"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 7 max temp"
value_template: "{{value_json.channel[6].max}}"
unique_id: "wlan_thermo_channel_7_max"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 7 min temp"
value_template: "{{value_json.channel[6].min}}"
unique_id: "wlan_thermo_channel_7_min"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
# Channel 8
- name: "Channel 8 name"
value_template: "{{value_json.channel[7].name}}"
unique_id: "wlan_thermo_channel_8_name"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 8 color"
value_template: "{{value_json.channel[7].color}}"
unique_id: "wlan_thermo_channel_8_color"
state_topic: *wt_topic
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 8 current temp"
value_template: "{{value_json.channel[7].temp}}"
unique_id: "wlan_thermo_channel_8_temp"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 8 max temp"
value_template: "{{value_json.channel[7].max}}"
unique_id: "wlan_thermo_channel_8_max"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- name: "Channel 8 min temp"
value_template: "{{value_json.channel[7].min}}"
unique_id: "wlan_thermo_channel_8_min"
state_topic: *wt_topic
unit_of_measurement: "°C"
device_class: temperature
json_attributes_topic: *wt_topic
json_attributes_template: "{{ value_json | tojson }}"
expire_after: 60
device: *wt_device
enabled_by_default: true
- unique_id: "wlanthermo_tempdiff5"
name: "wlanthermo_tempdiff5"
state: >
{% if not states('sensor.channel_5_current_temp') == "unavailable" %}
{% set temp = states('sensor.channel_5_current_temp') | float %}
{% if temp >= -30 and temp <= 300 %}
{% set aktuell = states('sensor.channel_5_current_temp') | float %}
{% set max = states('sensor.channel_5_max_temp') | float %}
{{ (max - aktuell) | round(1, default=0) }}
{% else %}
aus
{% endif %}
{% else %}
aus
{% endif %}