Paramètrage d'une télécommande Heimann pour Alarmo

J’ai une télécommande Heiman que je ne sais pas intégrer dans Home Assistant.

Cette télécommande est reconnue par Zibee2mqtt, mais je ne comprends pas comment s’en servir pour activer ou désactiver l’alarme de Alarmo.

Ma configuration


[center] ## System Information

version core-2023.3.5
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.10.10
os_name Linux
os_version 5.15.90
arch x86_64
timezone Europe/Paris
config_dir /config
Home Assistant Community Store
GitHub API ok
GitHub Content ok
GitHub Web ok
GitHub API Calls Remaining 4996
Installed Version 1.31.0
Stage running
Available Repositories 1247
Downloaded Repositories 21
Home Assistant Cloud
logged_in true
subscription_expiration 14 février 2024 à 01:00
relayer_connected true
remote_enabled true
remote_connected true
alexa_enabled true
google_enabled false
remote_server eu-central-1-1.ui.nabu.casa
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Home Assistant Supervisor
host_os Home Assistant OS 9.5
update_channel stable
supervisor_version supervisor-2023.03.1
agent_version 1.4.1
docker_version 20.10.22
disk_total 30.8 GB
disk_used 8.6 GB
healthy true
supported true
board ova
supervisor_api ok
version_api ok
installed_addons File editor (5.5.0), Terminal & SSH (9.6.1), Mosquitto broker (6.1.3), Studio Code Server (5.5.4), Zigbee2MQTT (1.30.2-1), ESPHome (2023.3.0), Duck DNS (1.15.0), VLC (0.1.3)
Dashboards
dashboards 4
resources 9
views 5
mode storage
Recorder
oldest_recorder_run 9 mars 2023 à 19:49
current_recorder_run 18 mars 2023 à 14:57
estimated_db_size 271.79 MiB
database_engine sqlite
database_version 3.38.5
[/center] Merci d'avance pour l'aide apportée.

Bjr,
Je repose ma question.
Après des recherches sur le forum, j’ai trouvé ce post:
https://forum.hacf.fr/t/telecommande-dalarme-heiman-hs1rc/15106
Est-il obligatoire d’installer Zigbee Home Automation ?
De mon côté, j’ai installé Zigbee2mqtt et Mosquitto broker.
Merci beaucoup pour l’aide apportée.

Cette télécommande fonctionne sous ZHA ou Z2M, j’en ai parlé sur le blog pour ZHA, quant à Z2M il suffit de chercher un peu :

Par exemple pour désarmer, voici le trigger :

    - platform: device
      domain: mqtt
      device_id: 139eb4ce27272a4b53601 # RC 2 Heiman MQTT
      type: action
      subtype: disarm
      discovery_id: 0x84fd27fffe915 action_disarm
      id: "Heiman RC2"
1 « J'aime »

Bjr et merci beaucoup pour la réponse !
Je teste cela dès que je peux.

Bjr,

Je viens de faire le test, mais je suis débutant …
Tout d’abord, le trigger pour désarmer l’alarme est :

  • un automatisme ?
  • un script ?
  • autre chose ?
    Oui, je sais, je pars de loin !
    Pourquoi ces deux id:
    device_id: 139eb4ce27272a4b53601 discovery_id: 0x84fd27fffe915 action_disarm
    De mon côté dans Zigbee2mqtt, j’obtiens l’id de ma télécommande 0x8cf681fffeef8ee2

Merci pour le temps consacré …

Bonjour,
Dans une automatisation, que tu va utiliser le trigger.
Pour le device_id, tu peu le voir quand tu va créer une automatisation. Dans Déclencheur, tu choisie équipements et cherche ta télécommande. Ensuite tu clique sur les 3 petit points et modifier en tant que YAML. Tu va retrouver la ligne device_id:

Exemple avec une ampoule:

platform: device
type: changed_states
device_id: e2e08351bb15151b0936e515bc1f4ffe
entity_id: light.0x00158d0007b044d2
domain: light

Pour le discovery_id: , c’est Adresse IEEE de ton appareil que tu retrouve sur ta page de l’appareil dans Z2M.

Pour discovery_id: 0x84fd27fffe915 action_disarm, le action_disarm est une action envoyer par mqtt (topic).
tu trouvera les infos dans ton appareil et clique sur MQTT Info. Faut regarder les topics suivant l’action que tu fera sur la télécommande, pour retrouver le bon nom de l’action.

Pour finir, un exemple d’automatisation ( une supposition, je n’est pas c’est télécommande):

alias: Heiman RC2 Désarmer alarme
description: ""
trigger:
  - platform: device
    domain: mqtt
    device_id: 139eb4ce27272a4b53601
    type: action
    subtype: disarm
    discovery_id: 0x84fd27fffe915 action_disarm
    id: Heiman RC2
condition: []
action:
  - service: script.desarmer_alarme
    data: {}
mode: single

Bonjour,
tu devrais trouver les messages suivants dans les payloads en fonction de la touche activée

image

Merci pour vos réponses.
J’ai donc essayé:

alias: Heiman RC1 Désarmer alarme
description: " "
trigger:
  - platform: device
    domain: mqtt
    device_id: 0x8cf681fffeef8ee2
    type: action
    subtype: disarm
    discovery_id: 0x8cf681fffeef8ee2 action_disarm
    id: Heiman RC1
condition: []
action:
  - service: script.desarmer_alarme
    data: {}
mode: single

J’ai ce message d’erreur :
Message malformed: expected str for dictionary value @ data[‹ device_id ›]
Est ce normal d’avoir les mêmes codes pour device_id et discovery_id ?
Je joins ce que je vois avec mqtt info

MQTT discovery data:
Topic: homeassistant/device_automation/0x8cf681fffeef8ee2/action_emergency/config
Payload
automation_type: trigger
device:
  identifiers:
    - zigbee2mqtt_0x8cf681fffeef8ee2
  manufacturer: HEIMAN
  model: Smart remote controller (HM1RC-2-E)
  name: Télécommande Alarme
payload: emergency
subtype: emergency
topic: zigbee2mqtt/Télécommande Alarme/action
type: action
platform: mqtt
MQTT discovery data:
Topic: homeassistant/device_automation/0x8cf681fffeef8ee2/action_arm_all_zones/config
Payload
automation_type: trigger
device:
  identifiers:
    - zigbee2mqtt_0x8cf681fffeef8ee2
  manufacturer: HEIMAN
  model: Smart remote controller (HM1RC-2-E)
  name: Télécommande Alarme
payload: arm_all_zones
subtype: arm_all_zones
topic: zigbee2mqtt/Télécommande Alarme/action
type: action
platform: mqtt

dans déclancheur , choisie équipement et sélectionne l’entité de ta télécommande. Et fait modifier en YAML. tu verra le bon device_id de ta télécommande.




Si tu as nommé dans zigbee2mqtt ta télécommande, tu dois la retrouver dans l’IHM des automatisation en temps qu’entité et en choisissant comme déclencheur « état »
voilà ce que j’ai chez moi

alias: "Alarme: Activation complète  Téléc. 1, 2 et  clavier RFID + Ring"
description: "activation complète de l'alarme "
trigger:
  - platform: state
    entity_id: sensor.telecommande_alarme_1_action
    attribute: action
    to: arm_all_zones
    id: Téléc1

cela fonctionne à merveille sans s’occuper de MQTT et des ID

1 « J'aime »

Impeccable !!!
Un grand merci!!!
Je viens de réussir à désarmer l’alarme.
Je vais tester l’armement …

Attention à un truc : ces télécommandes quand on arrive à la maison doivent d’abord rejoindre le réseau Zigbee, donc parfois le premier appui n’est pas concluant… (ce que l’on ne voit pas quand on fait un test)

Ok , je vais faire le test en ce sens.
Une autre question, concernant les sirènes…
J’ai une sirène HEIMAN ( intérieure)
J’ai cet automatisme :

alias: Sirene TURN OFF
description: Sirène intérieure
trigger:
  - platform: state
    entity_id:
      - alarm_control_panel.alarmo
condition: []
action:
  - service: mqtt.publish
    data:
      qos: "0"
      retain: false
      payload: "{\"warning\": {\"duration\": 1, \"mode\": \"emergency\", \"strobe\": false}}'"
mode: single

Cependant il n’arrête pas la sirène.( En mettant cet automatisme dans les actions dans ALARMO)
Par ailleurs, j’ai mis une sirène extérieure que je déclenche avec un module zigbee ( Cela fonctionne quand l’alarme est déclenchée).
Là encore mon problème est d’arrêter la sirène quand on dévérouille l’alarme.
Pour celle-ci, j’ai fait ceci dans Alarmo :

Merci pour les coups de main …

On dirait qu’on a les mme elements

pour la sirene j’ai ça ci dessous, inspiré de posts de ce site

mqtt:
     siren:
       - unique_id: heiman_sirene_cabanon
         name: Sirène Heiman Cabanon
         state_topic: "zigbee2mqtt/0x000d6f001539f407/set"
         command_topic: "zigbee2mqtt/0x000d6f001539f407/set"
         optimistic: false
         qos: 0
         retain: true
         state_value_template: "{{ value_json.warning['mode'] }}"
         command_template: '{"warning": {"duration": 2, "mode": "burglar", "level": "very_high", "strobe": true}}'
         command_off_template: '{"warning": {"duration": 2, "mode": "stop", "level": "very_high", "strobe": true}}'
         state_on: "burglar"
         state_off: "stop"

cela permet d’avoir un bouton et de le gérer facilement dans alarmo

1 « J'aime »

Merci pour les réponses.
Ceci est à mettre dans un automatisme ou un script ou autre chose ?
Je ne sais pas comment créer un mqtt button

Je viens d’essayer sans succès…
Merci encore.

Bonjour,
dans le configuration.yaml.

faut bien respecter les espaces, son exemple en a trop.

# Example configuration.yaml entry
mqtt:
  siren:
    - command_topic: "home/bedroom/siren/set"

Son exemple formater:

mqtt:
  siren:
    - unique_id: heiman_sirene_cabanon
      name: Sirène Heiman Cabanon
      state_topic: "zigbee2mqtt/0x000d6f001539f407/set"
      command_topic: "zigbee2mqtt/0x000d6f001539f407/set"
      optimistic: false
      qos: 0
      retain: true
      state_value_template: "{{ value_json.warning['mode'] }}"
      command_template: '{"warning": {"duration": 2, "mode": "burglar", "level": "very_high", "strobe": true}}'
      command_off_template: '{"warning": {"duration": 2, "mode": "stop", "level": "very_high", "strobe": true}}'
      state_on: "burglar"
      state_off: "stop"

Bjr,
Je copie donc le script ci dessous en mettant l’id de ma sirène

mqtt:
  siren:
    - unique_id: heiman_sirene_salon
      name: Sirène  2
      state_topic: "zigbee2mqtt/0xb4e3f9fffe12ff50/set"
      command_topic: "zigbee2mqtt/0xb4e3f9fffe12ff50/set"
      optimistic: false
      qos: 0
      retain: true
      state_value_template: "{{ value_json.warning['mode'] }}"
      command_template: '{"warning": {"duration": 2, "mode": "burglar", "level": "very_high", "strobe": true}}'
      command_off_template: '{"warning": {"duration": 2, "mode": "stop", "level": "very_high", "strobe": true}}'
      state_on: "burglar"
      state_off: "stop"

Et comment fait-on pour le faire prendre en compte dans alarmo ?

Par un script. Tu créer un script qui appel le bon service et dans alarmo tu choisira ce script pour déclancher l’alarme.

exemple de script:

alias: Déclanche sirène alarme
sequence:
  - service: switch.turn_on
    data: {}
    target:
      entity_id: switch.0x0015bc0034000ec6_alarm

faut adapter, car je sais pas ce que créer ton siren mqtt en entité.

ta trouvera des infos supplementaire pour alarmo la: Action avec sirène intérieur dans alarmo - #2 par WarC0zes

Attention, ceci n’est pas un script au sens HA ,c’est un template qui te permet de créer un sensor.

comme l’a dit @WarC0zes tu mets ce code dans ton fichier configuration.yaml ou ailleurs suivant le mode d’organisation de ta config.

une fois ce code installé, tu vérifies bien dans outils développement que le code est valide, si oui tu redémarres HA.

tu devrais retrouver ta sirène 2 dans les entités.

Dans ALARMO tu vas dans Actions et tu en crées une avec pour évènement « Alarme déclenchée » puis dans action ajoutes ta sirène 2.

bon courage à toi

@WarC0zes a répondu pendant que j"écrivais ,il a un autre approche pour Alarmo, mais cela fonctionne aussi