Modesty
(PeeterPan)
April 30, 2024, 5:44am
21
Hi again,
This is a system that reports back to HA.
Idea about alarm is among give alarm states but also “I’m alive”
I’m alive is not so important due to paketNo and also parameters changes.
Due to writing data both on HA dashboard and on OLED screen on the receiver the text is pre defined (placing), and empty alarm will in make User questions, no alarm?:
But as you have learned, I’m not into HA per today, HA is my final stage after developing this system for 2 years, so HA ladder is starting now.
What you mean by?
I was already afraid this would happen
Anyway, if there is a work around, I appreciate any help.
TheFes
(The Fes)
April 30, 2024, 5:50am
22
You were having 2 sensors with the same name, which were therefore creating entities with the same entity_id.
Without an unique id they will keep adding suffixes to the entity_id because the other one is still in use.
But you didn’t really answer my question, do you need to have a sensor that has the 9
as its state?
Modesty
(PeeterPan)
April 30, 2024, 7:12am
23
Hi
I dont ned a 9, i need 1 to 4 as a minimum
TheFes
(The Fes)
April 30, 2024, 7:17am
24
You are misunderstanding my question.
Would it be okay if the mqtt doesn’t return 9
, but the converted state directly? You won’t have access to the number in HA anymore, but the sensor will show Kube 1 ingen alarm
1 Like
Modesty
(PeeterPan)
April 30, 2024, 7:30am
25
Hi
I don’t need to see the numbers, that is todays solution.
For me the important part is that I get a text alarm if number 1-4 is received to HA
TheFes
(The Fes)
April 30, 2024, 7:50am
26
# Loads default set of integrations. Do not remove.
default_config:
#my integration
my:
# Load frontend themes from the themes folder
frontend:
themes: !include_dir_merge_named themes
# Text to speech
tts:
- platform: google_translate
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
##########
# Alt over er fra default installasjon
# DO NOT RENAME THIS FILE TO CONFIGURATION.YAML! YOU WILL BREAK YOUR CONFIG IF YOU DO SO!
# INSTEAD, COPY THIS CODE WITHIN YOUR OWN SECRETS.YAML
##########
influxdb:
host: xxxxxx
port: 8086
database: xxxx
username: xxxx
password: xxxxxxxxxxx
max_retries: 3
default_measurement: state
# ############################## HiveMon start ############################
mqtt:
- sensor:
- name: 'Kube 1 alarm'
unique_id: kube1alarm
state_topic: 'bikuber/kube1/alarmValue'
value_template: >
{% set alarm = {
'1': 'Kube 1 flyttet',
'2': 'Kube 1 lavt batteri',
'3': 'Kube 1 a',
'4': 'Kube 1 b',
'5': 'Kube 1 c',
'6': 'Kube 1 d',
'7': 'Kube 1 e',
'8': 'Kube 1 f',
'9': 'Kube 1 ingen alarm'
} %}
{{ alarm.get(value | string), 'Ukjent alarm') }}
- name: 'Kube 1 vekt'
unique_id: kube1Vekt
state_topic: 'bikuber/kube1/vekt'
state_class: measurement
unit_of_measurement: 'Kg'
- name: 'Kube 1 DHT temp'
unique_id: kube1DHTtemp
state_topic: 'bikuber/kube1/DHTtempKube'
unit_of_measurement: '°C'
- name: 'Kube 1 DHT fukt'
unique_id: kube1DHTFukt
state_topic: 'bikuber/kube1/DHTfuktKube'
unit_of_measurement: '%RH'
- name: 'Kube 1 BS temp kube'
unique_id: kube1BSTempKube
state_topic: 'bikuber/kube1/BStempKube'
unit_of_measurement: '°C'
device_class: temperature
- name: 'Kube 1 BS temp ute'
unique_id: kube1BtempUte
state_topic: 'bikuber/kube1/BStempUte'
state_class: measurement
unit_of_measurement: '°C'
- name: 'Kube 1 volt'
unique_id: kube1volt
state_topic: 'bikuber/kube1/volt'
state_class: measurement
unit_of_measurement: 'V'
- name: 'Kube 1 kubenr'
unique_id: kube1 kubeNr
state_topic: 'bikuber/kube1/kubeNr'
state_class: measurement
- name: 'Kube 1 senderVersjonNr'
unique_id: kube1versjonsnr
state_topic: 'bikuber/kube1/senderVersjonNr'
state_class: measurement
- name: 'Kube 1 pakkeNr'
unique_id: kube1 nr
state_topic: 'bikuber/kube1/pakkeNr'
state_class: measurement
- name: 'Kube 1 signalstyrke'
unique_id: kube1 signalstyrke
state_topic: 'bikuber/kube1/signalstyrke'
# state_class: measurement
device_class: signal_strength
unit_of_measurement: 'dBm'
############################## HiveMon ferdig ############################
Can you try this? I removed the config for the template sensor and applied the template directly in the mqtt sensor
1 Like
Modesty
(PeeterPan)
April 30, 2024, 10:08am
27
Thanks one more time
I removed number 4:
It saved with green checkmark
Error:
Failed to reload configuration
Validation error: Invalid config for ‘sensor’ at configuration.yaml, line 38: invalid template (TemplateSyntaxError: unexpected ‘)’) for dictionary value ‘value_template’, got “{% set alarm = {\n ‘1’: ‘Kube 1 flyttet’,\n ‘2’: ‘Kube 1 lavt batteri’,\n ‘3’: ‘Kube 1 a’,\n ‘4’: ‘Kube 1 b’,\n ‘5’: ‘Kube 1 c’,\n ‘6’: ‘Kube 1 d’,\n ‘7’: ‘Kube 1 e’,\n ‘8’: ‘Kube 1 f’,\n ‘9’: ‘Kube 1 ingen alarm’\n} %} {{ alarm.get(value | string), ‘Ukjent alarm’) }}\n”, please check the docs at MQTT - Home Assistant
Copy of running code (your code):
# ############################## HiveMon start ############################
mqtt:
- sensor:
- name: 'Kube 1 alarm'
unique_id: kube1alarm
state_topic: 'bikuber/kube1/alarmValue'
value_template: >
{% set alarm = {
'1': 'Kube 1 flyttet',
'2': 'Kube 1 lavt batteri',
'3': 'Kube 1 a',
'4': 'Kube 1 b',
'5': 'Kube 1 c',
'6': 'Kube 1 d',
'7': 'Kube 1 e',
'8': 'Kube 1 f',
'9': 'Kube 1 ingen alarm'
} %}
{{ alarm.get(value | string), 'Ukjent alarm') }}
- name: 'Kube 1 vekt'
unique_id: kube1Vekt
state_topic: 'bikuber/kube1/vekt'
state_class: measurement
unit_of_measurement: 'Kg'
- name: 'Kube 1 DHT temp'
unique_id: kube1DHTtemp
state_topic: 'bikuber/kube1/DHTtempKube'
unit_of_measurement: '°C'
- name: 'Kube 1 DHT fukt'
unique_id: kube1DHTFukt
state_topic: 'bikuber/kube1/DHTfuktKube'
unit_of_measurement: '%RH'
- name: 'Kube 1 BS temp kube'
unique_id: kube1BSTempKube
state_topic: 'bikuber/kube1/BStempKube'
unit_of_measurement: '°C'
device_class: temperature
- name: 'Kube 1 BS temp ute'
unique_id: kube1BtempUte
state_topic: 'bikuber/kube1/BStempUte'
state_class: measurement
unit_of_measurement: '°C'
- name: 'Kube 1 volt'
unique_id: kube1volt
state_topic: 'bikuber/kube1/volt'
state_class: measurement
unit_of_measurement: 'V'
- name: 'Kube 1 kubenr'
unique_id: kube1 kubeNr
state_topic: 'bikuber/kube1/kubeNr'
state_class: measurement
- name: 'Kube 1 senderVersjonNr'
unique_id: kube1versjonsnr
state_topic: 'bikuber/kube1/senderVersjonNr'
state_class: measurement
- name: 'Kube 1 pakkeNr'
unique_id: kube1 nr
state_topic: 'bikuber/kube1/pakkeNr'
state_class: measurement
- name: 'Kube 1 signalstyrke'
unique_id: kube1 signalstyrke
state_topic: 'bikuber/kube1/signalstyrke'
# state_class: measurement
device_class: signal_strength
unit_of_measurement: 'dBm'
############################## HiveMon ferdig ############################
TheFes
(The Fes)
April 30, 2024, 10:09am
28
My bad, remove the )
after string
on line 53
1 Like
Modesty
(PeeterPan)
April 30, 2024, 10:45am
29
Holy cow!!!
Something happened!
Alarm 9 gave
Alarm 3:
Dashboard:
Can it be some int/string/charproblem?
As I remember the HA mqtt packet is a string
TheFes
(The Fes)
April 30, 2024, 11:43am
30
can you post what you use now? Looks like your template is not correct.
1 Like
Modesty
(PeeterPan)
April 30, 2024, 11:58am
31
yaml:
# ############################## HiveMon start ############################
mqtt:
- sensor:
- name: 'Kube 1 alarm'
unique_id: kube1alarm
state_topic: 'bikuber/kube1/alarmValue'
value_template: >
{% set alarm = {
'1': 'Kube 1 flyttet',
'2': 'Kube 1 lavt batteri',
'3': 'Kube 1 a',
'4': 'Kube 1 b',
'5': 'Kube 1 c',
'6': 'Kube 1 d',
'7': 'Kube 1 e',
'8': 'Kube 1 f',
'9': 'Kube 1 ingen alarm'
} %}
{{ alarm.get(value | string), 'Ukjent alarm' }}
- name: 'Kube 1 vekt'
unique_id: kube1Vekt
state_topic: 'bikuber/kube1/vekt'
state_class: measurement
unit_of_measurement: 'Kg'
- name: 'Kube 1 DHT temp'
unique_id: kube1DHTtemp
state_topic: 'bikuber/kube1/DHTtempKube'
unit_of_measurement: '°C'
- name: 'Kube 1 DHT fukt'
unique_id: kube1DHTFukt
state_topic: 'bikuber/kube1/DHTfuktKube'
unit_of_measurement: '%RH'
- name: 'Kube 1 BS temp kube'
unique_id: kube1BSTempKube
state_topic: 'bikuber/kube1/BStempKube'
unit_of_measurement: '°C'
device_class: temperature
- name: 'Kube 1 BS temp ute'
unique_id: kube1BtempUte
state_topic: 'bikuber/kube1/BStempUte'
state_class: measurement
unit_of_measurement: '°C'
- name: 'Kube 1 volt'
unique_id: kube1volt
state_topic: 'bikuber/kube1/volt'
state_class: measurement
unit_of_measurement: 'V'
- name: 'Kube 1 kubenr'
unique_id: kube1 kubeNr
state_topic: 'bikuber/kube1/kubeNr'
state_class: measurement
- name: 'Kube 1 senderVersjonNr'
unique_id: kube1versjonsnr
state_topic: 'bikuber/kube1/senderVersjonNr'
state_class: measurement
- name: 'Kube 1 pakkeNr'
unique_id: kube1 nr
state_topic: 'bikuber/kube1/pakkeNr'
state_class: measurement
- name: 'Kube 1 signalstyrke'
unique_id: kube1 signalstyrke
state_topic: 'bikuber/kube1/signalstyrke'
# state_class: measurement
device_class: signal_strength
unit_of_measurement: 'dBm'
############################## HiveMon ferdig ############################
TheFes
(The Fes)
April 30, 2024, 12:13pm
32
you removed the wrong )
, I meant the one directly after string
So:
{{ alarm.get(value | string, 'Ukjent alarm') }}
However, the template doesn’t seem to work, I’m not that familiar with mqtt
config, but as far as I know value
should refer to the value from the state topic.
@petro any chance you can shed some light on this?
1 Like
Modesty
(PeeterPan)
April 30, 2024, 12:22pm
33
Thanks TheFes, you are giving me the best forum support ever!
I changed the parentheses, Devil is in the details!
Did not change Dash
TheFes
(The Fes)
April 30, 2024, 12:23pm
34
mqtt:
- sensor:
- name: 'Kube 1 alarm'
unique_id: kube1alarm
state_topic: 'bikuber/kube1/alarmValue'
value_template: >
{% set alarm = {
'1': 'Kube 1 flyttet',
'2': 'Kube 1 lavt batteri',
'3': 'Kube 1 a',
'4': 'Kube 1 b',
'5': 'Kube 1 c',
'6': 'Kube 1 d',
'7': 'Kube 1 e',
'8': 'Kube 1 f',
'9': 'Kube 1 ingen alarm'
} %}
{{ alarm.get(value | string | trim, 'Ukjent alarm') }}
can you try this? Make sure to reload mqtt entities afterwards, because your previous screenshot indicates the )
is still in the wrong place
2 Likes
Modesty
(PeeterPan)
April 30, 2024, 12:38pm
35
What shall I say, 1000 thanks!!! (Norwegian tusen takk!)
The help you have provided is gold standard. I hope I one day can do the same!
Low batt alarm (nr 2)
TheFes
(The Fes)
April 30, 2024, 12:43pm
36
Værsågod! (which should be “you’re welcome” according to Google Translate)
1 Like
Modesty
(PeeterPan)
April 30, 2024, 3:13pm
38
Match a number received from a MQTT message to a specific text in HA:
Thanks to @TheFes also @paddy0174 and @Olivier1974
Full confuguration.yaml solution:
mqtt:
- sensor:
- name: 'Kube 1 alarm'
unique_id: kube1alarm
state_topic: 'bikuber/kube1/alarmValue'
value_template: >
{% set alarm = {
'1': 'Kube 1: Bevegelse',
'2': 'Kube 1: Lavt batteri',
'3': 'Kube 1: Pluttselig vektendring NEGATIV',
'4': 'Kube 1: Kubetemp under 20 °C',
'5': 'Kube 1: Temp ute under -10 °C',
'6': 'Kube 1: Ingen alarm 6',
'7': 'Kube 1: Ingen alarm 7',
'8': 'Kube 1: Ingen alarm 8',
'9': 'Kube 1: Default ingen alarm 9'
} %}
{{ alarm.get(value | string | trim, 'Ukjent alarm') }}
- name: 'Kube 1 vekt'
unique_id: kube1Vekt
state_topic: 'bikuber/kube1/vekt'
state_class: measurement
unit_of_measurement: 'Kg'
- name: 'Kube 1 DHT temp'
unique_id: kube1DHTtemp
state_topic: 'bikuber/kube1/DHTtempKube'
unit_of_measurement: '°C'
- name: 'Kube 1 DHT fukt'
unique_id: kube1DHTFukt
state_topic: 'bikuber/kube1/DHTfuktKube'
unit_of_measurement: '%RH'
- name: 'Kube 1 BS temp kube'
unique_id: kube1BSTempKube
state_topic: 'bikuber/kube1/BStempKube'
unit_of_measurement: '°C'
device_class: temperature
- name: 'Kube 1 BS temp ute'
unique_id: kube1BtempUte
state_topic: 'bikuber/kube1/BStempUte'
state_class: measurement
unit_of_measurement: '°C'
- name: 'Kube 1 volt'
unique_id: kube1volt
state_topic: 'bikuber/kube1/volt'
state_class: measurement
unit_of_measurement: 'V'
- name: 'Kube 1 kubenr'
unique_id: kube1 kubeNr
state_topic: 'bikuber/kube1/kubeNr'
state_class: measurement
- name: 'Kube 1 senderVersjonNr'
unique_id: kube1versjonsnr
state_topic: 'bikuber/kube1/senderVersjonNr'
state_class: measurement
- name: 'Kube 1 pakkeNr'
unique_id: kube1 nr
state_topic: 'bikuber/kube1/pakkeNr'
state_class: measurement
- name: 'Kube 1 signalstyrke'
unique_id: kube1 signalstyrke
state_topic: 'bikuber/kube1/signalstyrke'
device_class: signal_strength
unit_of_measurement: 'dBm'
############################## HiveMon ferdig ############################
Modesty
(PeeterPan)
April 30, 2024, 3:15pm
39
Not today but next step:
Automate:
mqtt:
-sensor:
-name 'kube x alamr'
to receive messages from beeHive 1 to x and not copy code x times
Wife have 10 hives…