Je teste la sirène Zigbee 3.0 intérieure WOOX R7051

Qui est Woox ??

 

Difficile à la lecture de leur site internet de savoir qui ils sont, il faut chercher un peu.

Woox est une entreprise chinoise basée à Shenzen fondée en 2018 qui fabrique des produits dans trois univers distincts : prise, éclairage et sécurité. Leur origine chinoise est confirmée par le lien avec Tuya, en effet, leurs objets connectés ZigBee évoluent tous sous environnement Tuya. A noter qu’ils peuvent heureusement être installés directement sur des passerelles pour box domotique.

Honnêtement, c’est mon premier équipement Woox, je suis curieux de voir la finition et les fonctionnalités de cet équipement.

Où acheter cette sirène, à quel prix ?

La sirène que je teste m’a été prêtée par Domadoo, je leur rends donc hommage en premier, cela d’autant qu’ils sont les moins chers.

Au jour de ce test, voici les prix constatés :

J’ouvre la boite et vérifie le modèle reçu

A l’ouverture, première déception, il n’y a pas de transformateur 5v, juste le câble, il va falloir se débrouiller à trouver une alimentation. Je cherche l’ampérage minimum, il est indiqué au dessus du connecteur. Il faudra donc 1A.

Seconde déception le connecteur est un Micro-B, j’aurais préféré un Type C, tant pis, ce n’est pas dramatique mais montre que ce produit n’est pas de conception récente.

La sirène est fournie avec un système de fixation murale toute fine, un peu gadget, qui tiendrait avec deux vis minuscules, pourquoi pas. On va retenir qu’il y a un système de fixation murale tout court.

Je pense que l’utilisation du double-face 3M fourni sera bien plus indiquée.

La sirène elle même est dans un plastique bas de gamme, mais rien de trop déplaisant, elle est très légère et semble pleine de vide. La zone brillante sur dessus est assez sympa. Elle est finalement plutôt mignone.

Je tripote les boutons

Comme je suis un garçon, il faut que je tripote tout, je touche au bouton On/Off persuadé qu’il ne va rien se passer puisque rien n’est branché.

Surprise !! La sirène s’allume 1s en bleu et sonne 1 petit coup. Elle est donc sur batterie, je n’avais pas compris cela, je pensais qu’elle devait être branchée sur secteur, cela vient donc compenser ma première déception (cf. paragraphe précédent). Je recherche dans la doc, rien n’est mentionné sur la batterie, je regarde sur le descriptif du site Domadoo, je vois “Batterie: 500mAh, rechargeable (incluse)” J’avais donc lu trop vite. C’est une bonne nouvelle.

Je lis la documentation pour appairer la sirène

Comme toujours, je n’ai pas du tout l’intention d’utiliser l’application de la marque, je n’installe donc pas l’application Woox et comme je n’ai pas non plus la passerelle Zigbee Woox, je vais referme la documentation qui ne me dit rien de plus. Le bouton Reset n’est pas évoqué non plus, j’imagine que c’est lui qui va lancer l’appairage voyons…

Je tente une intégration Zigbee2MQTT

Dans Zigbee2MQTT, j’active l’appairage

J’appuie longuement sur le bouton reset, la sirène devient bleue puis bleu clignotant, tout cela me semble normal. Je patiente quelques secondes et la sirène est reconnue parfaitement par Zigbee2MQTT

Avec un peu d’imagination, l’image correspond à la sirène (enfin presque) et elle est bien reconnue en R7051, parfait à ce stade.

Du côté des informations qui remontent, on constate que la batterie est plutôt livrée chargée

Elle est arrivée de chine, un peu stockée chez quelques intermédiaires puis arrivée chez moi, je l’allume et elle est à 85.5%, je trouve que c’est pas mal. 

Les autres commandes vont pouvoir être testées, voici l’écran :

A ce stade, cela semble complet, à tester dans les prochains paragraphes …

Je teste les différents modes

Cela peut se faire via Zigbee2MQTT ou pas HA.

Par sécurité pour éviter un intermédiaire de plus, je teste dans Zigbee2MQTT.

Les effets sonores

Sans être génialissime, la liste des sons semble suffire à ce dont j’ai besoin.

Je teste tous les sons, et surprise, ils font tous exactement la même chose.

Seul stop arrête la sirène, tous les autres sons sont identiques, cette liste n’a donc aucun intérêt !

Le niveau du son

Je n’ai aucune idée de ce que veut dire cette option, je pensais que cela avait un lien avec le volume, pas du tout. que je mette de low à very_hight, cela ne change absolument rien. Option inutile.

L’intensité du stroboscope

Même constat, totale inaction, option inutile.

Strobe

Même constat, totale inaction, option inutile.

Longueur du cycle de flash

Même constat, totale inaction, option inutile.

Durée de l’alarme

Toujours aucune action, quelque soit le nombre de secondes (entre 0 et 10), rien ne change, option inutile.

Je teste par acquis de conscience via HA

Je lance des publish MQTT via HA grâce à la commande warning, même constat, toutes les options ne changent rien ! Je pense que l’intégration dans Zigbee2MQTT n’est pas parfaite.

Pour la suite, il suffira d’utiliser stop pour stopper l’alarme et n’importe quelle tonalité pour la déclencher. puisqu’elles sont toutes identiques (une sonnerie stridente) ; je vais prendre burglar car c’est la première proposée.

Je teste la commande Volume

Cette commande fonctionne. Un peu étrangement mais elle fonctionne.

Le volume va de 0 à 100 mais le volume le plus fort est 50. Après 50, le volume redescend.

Ainsi, le volume à 20 et le volume à 80 donnent le même résultat.

Je ne pense pas que je toucherai au volume en production. Une fois réglé au maximum, je n’ai pas trouvé d’utilité à son changement.

La commande existe dans Home Assistant mais je n’envisage pas de l’activer, je la laisse à 50 (donc au max)

Je teste la commande Duration

Elle correspond à la durée de la sirène, la valeur peut être réglé entre 0 et 3600 donc entre 0 et 1 heure.

Cette commande fonctionne parfaitement, l’alarme est bien déclenchée le nombre de secondes configuré par cette valeur.

Comme pour le volume, je pense ne pas toucher à cette configuration en production.

Pour mémoire, en France, la durée maximale de sonnerie d’une alarme est de 3 minutes en extérieur mais n’est pas limitée en intérieur. Je pense qu’une sonnerie pendant 3 minutes est suffisant en intérieur également, je vais donc régler cette valeur sur 180.

Je vérifie les autres informations qui remontent de la sirène

Attention, ces informations de la batterie ne sont pas à jour en temps réel. C’est d’ailleurs précisé, l’information remonte toutes les 24h. Sur l’image ci dessus, on voit une batterie à 0.5% alors qu’elle a été chargé il y a quelques minutes. Je pense que demain à la même heure, j’aurai presque 100% à la place. 

Alarm passe à Vrai quand l’alarme sonne et reste sur Faux quand elle est silencieuse.

Ac connected passe à Vrai quand la sirène est reliée à un chargeur 5v, elle reste sur Faux quand elle est sur batterie (non connectée donc).

Enfin, certains utilisateurs aiment surveiller leur réseau et la qualité des liens Zigbee, je n’ai pas de souci réseau, je ne charge pas ma domotique avec ces contrôles, cette information sera probablement désactivée en prod.

Je regarde si tout cela remonte bien dans Home Assistant

Pas de souci, tout est bien présent. En prod, je désactiverai tout ce qui ne m’est pas utile.

Et maintenant comment je déclenche la sirène dans Home Assistant

Je cherche un bouton ou une commande, et là, c’est le drame, il n’y a rien dans l’intégration HA de l’équipement sirène Woox :

Je teste la sirène en la pilotant via un Publish MQTT

Je vais donc tenter de déclencher la sirène en demandant à Zigbee2MQTT de lancer un warning avec la tonalité burglar

La documentation Zigbee2MQTT donne :

Warning (composite)

Can be set by publishing to zigbee2mqtt/FRIENDLY_NAME/set with payload {"warning": {"mode": VALUE, "level": VALUE, "strobe_level": VALUE, "strobe": VALUE, "strobe_duty_cycle": VALUE, "duration": VALUE}}

  • mode (enum): Mode of the warning (sound effect) allowed values: stopburglarfireemergencypolice_panicfire_panicemergency_panic
  • level (enum): Sound level allowed values: lowmediumhighvery_high
  • strobe_level (enum): Intensity of the strobe allowed values: lowmediumhighvery_high
  • strobe (binary): Turn on/off the strobe (light) during warning allowed values: true or false
  • strobe_duty_cycle (numeric): Length of the flash cycle max value is 10
  • duration (numeric): Duration in seconds of the alarm unit is s

Mais je sais grâce aux tests précédents qu’aucune de ces commandes ne fonctionne.

Dans Outils de développement /services, je vais déclencher :

service: mqtt.publish
data:
  topic: zigbee2mqtt/Sirène WOOX/set
  payload: '{"warning": {"mode": "burglar"}}'

Cela fonctionne parfaitement, la sirène se met à sonner au lancement de la commande.

Je pourrais ainsi utiliser une commande pour lancer la sirène et une commande pour arrêter la sirène (en utilisant le mode stop.

Ce n’est pas l’option que je vais prendre, je vais plutôt tenter d’intégrer cette sirène comme si elle était reconnue comme une sirène ZHA.

J’intègre la sirène en sirène ZHA

Je veux pouvoir utiliser les commandes intégrées de Home Assistant (siren.turn_on siren.turn_off)

Il faut déclarer la sirène dans la configuration MQTT manuelle de HA, cela se réalise via le fichier mqtt.yaml qui a bien été déclaré dans configuration.yaml via mqtt: !include mqtt.yaml

 
siren:
  - unique_id: sirene_woox
    name: Sirène WOOX
    command_topic: "zigbee2mqtt/Sirène WOOX/set"
    optimistic: false
    state_topic: "zigbee2mqtt/Sirène WOOX"
    command_template: '{"warning": {"mode": "burglar"}}'
    command_off_template: '{"warning": {"mode": "stop"}}'
    icon: mdi:bullhorn

 

Explication de chaque ligne de la configuration

unique_id qui identifie de manière unique ce dispositif de sirène. Si deux sirènes ont le même ID unique, Home Assistant déclenchera une erreur.

name qui reste facultatif est un nom plutôt sympathique qu’on donne à la sirène, pour plus de simplicité, je donne le même que le nom donné dans Zigbee2MQTT.

optimistic est un mode qui considère que tout va bien, c’est à dire que si on dit à la sirène de s’activer, sans attendre le retour d’état, elle est activée. Je déconseille ce mode car il ne revient pas à Off après lancement de la sirène. A noter quand sans la présence de la ligne state_topic, cette option optimistic ne se désactive pas, j’ai donc ajouté une ligne state_topic même si je sais (cf. plus loin) qu’elle ne fonctionne pas.

command_topic enfin est la commande à envoyer pour provoquer une action. La syntaxe a utiliser est donné dans la doc de l’équipement sur zigbee2mqtt. 

command_template et command_off_template sont les commandes à envoyer quand on publie un on ou un off.

Résultat

Une fois cette déclaration prise en compte par HA, on peut utiliser les services de pilotage direct de la sirène :

La récupération de la valeur de la sirène semble impossible.

J’ai cherché dans tous les sens, avec state_value_template, avec state_topic, tous les paramètres possibles et inimaginables, impossible d’avoir l’état. Visiblement je ne suis pas le seul, les forums regorgent d’utilisateurs qui n’arrivent pas à remonter l’état d’une sirène déclarée en siren: dans mqtt:

Je laisse tomber, visiblement, j’ai suivi la même logique que cette page qui a fini par faire deux boutons. Je n’ai pas besoin de boutons, je vais garder turn_on et turn_off, cela me suffit. A noter que je ne suis pas arrivé à changer les icones des deux commandes sirene.turn, tant pis, elles ne seront pas piloté par le dashboard donc rien de grave. Je garde mes icones eclair et eclair barré.

A toutes fins utiles, je garde ici le code des deux boutons en archive, mais je ne les garde en prod :

button:
  - unique_id: sirene_woox_sonne
    name: "Sirène WOOX Sonne"
    command_topic: "zigbee2mqtt/Sirène WOOX/set"
    payload_press: '{"warning": {"mode": "burglar"}}'
    icon: mdi:bullhorn
    entity_category: "config"
    device_class: "restart"

  - unique_id: sirene_woox_stop
    name: "Sirène WOOX Stop"
    command_topic: "zigbee2mqtt/Sirène WOOX/set"
    payload_press: '{"warning": {"mode": "stop"}}'
    icon: mdi:alarm-light-off
    entity_category: "config"
    device_class: "restart"   

 

Conclusion sur cette sirène

La première conclusion qui me vient à l’esprit est que son intégration Z2M/Ha n’est pas du tout simple. Il faut un peu bricoler mais c’est toujours très enrichissant de mettre les mains dans le cambouis. Je pense que l’intégration Zigbee2MQTT n’est pas complète, c’est elle qui rend ensuite difficile le travail dans HA. Si quelqu’un peu me dire comment cette Sirène s’intègre dans Jeedom, ce serait intéressant de le savoir.

Les tonalités ne sont pas configurables, pas plus que l’effet stroboscopique. C’est quand même dommage.

Le volume et le temps de retentissement sont configurables facilement, mais plutôt une fois pour toute.

J’aime bien la fonctionnalité sur batterie, c’est très pratique, si je la place en production, je peux la mettre où je veux. A voir combien de temps elle tient.

A noter enfin que cette sirène n’est utilisable qu’en intérieur, la documentation la donne pour 85dB max.

Notice (pour archives)

La notice est assez ridicule, mais elle a le mérite d’exister et il y a deux pages en français.