MQTT / Zigbee2MQTT premiers pas difficiles

Mon problème

Ayant majoritairement des périphériques en Zigbee, je me suis lancé dans l’installation de Zigbee2MQTT après en avoir lu que du bien (avant je m’en passais et ça marchait correctement, mais j’étais un peu limité dans mes projets). J’ai donc installé MQTT et Zigbee2MQTT, j’ai configuré le tout. J’ai ajouté mes périph à Zigbee2MQTT… j’ai l’impression que MQTT et Zigbee2MQTT fonctionnent tous les deux correctement mais pas l’impression que ça discute entre eux, et depuis HA je ne vois pas mes périph (en dehors de l’addon). J’ai dû louper quelque chose ! Merci par avance pour votre aide.

Sous ma config je vous glisse mes configs&journaux de MQTT et Zigbee2MQTT :

Ma configuration


System Health

version core-2022.7.6
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.10.5
os_name Linux
os_version 5.15.45
arch aarch64
timezone Europe/Paris
config_dir /config
Home Assistant Community Store
GitHub API ok
Github API Calls Remaining 4965
Installed Version 1.15.2
Stage running
Available Repositories 1070
Installed Repositories 5
Home Assistant Cloud
logged_in true
subscription_expiration 25 juillet 2022 à 02:00
relayer_connected true
remote_enabled true
remote_connected true
alexa_enabled true
google_enabled true
remote_server eu-central-1-4.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 8.2
update_channel stable
supervisor_version supervisor-2022.07.0
agent_version 1.2.1
docker_version 20.10.14
disk_total 57.8 GB
disk_used 8.2 GB
healthy true
supported true
board odroid-c4
supervisor_api ok
version_api ok
installed_addons SSH & Web Terminal (11.0.2), Node-RED (13.1.0), File editor (5.3.3), Mosquitto broker (6.1.2), Tydom2MQTT - Beta (release_v1.2.4), Zigbee2MQTT (1.26.0-1)
Dashboards
dashboards 1
resources 1
views 4
mode storage
Recorder
oldest_recorder_run 14 juillet 2022 à 05:28
current_recorder_run 22 juillet 2022 à 19:03
estimated_db_size 138.43 MiB
database_engine sqlite
database_version 3.38.5

MQTT

logins:
  - username: MQTT
    password: xxx
require_certificate: false
certfile: fullchain.pem
keyfile: privkey.pem
customize:
  active: false
  folder: mosquitto

Log:

[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] mosquitto.sh: executing...

[11:40:38] INFO: Setting up user MQTT
[11:40:39] INFO: SSL is not enabled
[cont-init.d] mosquitto.sh: exited 0.
[cont-init.d] nginx.sh: executing... 
[cont-init.d] nginx.sh: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
[11:40:41] INFO: Starting NGINX for authentication handling...
[11:40:41] INFO: Starting mosquitto MQTT broker...
1658655641: Warning: Mosquitto should not be run as root/administrator.
[11:40:44] INFO: Successfully send discovery information to Home Assistant.
[11:40:44] INFO: Successfully send service information to the Supervisor.

Zigbee2MQTT

data_path: /config/zigbee2mqtt
socat:
  enabled: false
  master: pty,raw,echo=0,link=/tmp/ttyZ2M,mode=777
  slave: tcp-listen:8485,keepalive,nodelay,reuseaddr,keepidle=1,keepintvl=1,keepcnt=5
  options: '-d -d'
  log: false
mqtt:
  base_topic: zigbee2mqttHA
  server: mqtt://10.0.0.38
  user: MQTT
  password: xxx
serial:
  port: >-
    /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE2440581-if00
  adapter: deconz

Log :

s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
cont-init: info: running /etc/cont-init.d/socat.sh
[11:59:11] INFO: Socat not enabled, marking service as down
cont-init: info: /etc/cont-init.d/socat.sh exited 0
cont-init: info: running /etc/cont-init.d/zigbee2mqtt.sh
cont-init: info: /etc/cont-init.d/zigbee2mqtt.sh exited 0
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service legacy-services: starting
services-up: info: copying legacy longrun socat (no readiness notification)
services-up: info: copying legacy longrun zigbee2mqtt (no readiness notification)
[11:59:17] INFO: Handing over control to Zigbee2MQTT Core ...
> zigbee2mqtt@1.26.0 start
> node index.js
Zigbee2MQTT:info  2022-07-24 11:59:25: Logging to console and directory: '/config/zigbee2mqtt/log/2022-07-24.11-59-25' filename: log.txt
Zigbee2MQTT:info  2022-07-24 11:59:25: Starting Zigbee2MQTT version 1.26.0 (commit #unknown)
Zigbee2MQTT:info  2022-07-24 11:59:25: Starting zigbee-herdsman (0.14.40)
Zigbee2MQTT:info  2022-07-24 11:59:26: zigbee-herdsman started (resumed)
Zigbee2MQTT:info  2022-07-24 11:59:26: Coordinator firmware version: '{"meta":{"maintrel":0,"majorrel":38,"minorrel":120,"product":0,"revision":"0x26780700","transportrev":0},"type":"ConBee2/RaspBee2"}'
Zigbee2MQTT:info  2022-07-24 11:59:26: Currently 8 devices are joined:
Zigbee2MQTT:info  2022-07-24 11:59:26: Porte Scellier (0x00124b0025135214): SNZB-04 - SONOFF Contact sensor (EndDevice)
Zigbee2MQTT:info  2022-07-24 11:59:26: Prise Scellier (0xcc86ecfffe2abe23): SP 220 - Innr Smart plug (Router)
Zigbee2MQTT:info  2022-07-24 11:59:26: Prise pompe piscine (0x847127fffe99e7a2): SP 220 - Innr Smart plug (Router)
Zigbee2MQTT:info  2022-07-24 11:59:26: Thermomètre garage (0xa4c138802ca7a67f): E6 - Nous Temperature & humidity LCD sensor (EndDevice)
Zigbee2MQTT:info  2022-07-24 11:59:26: Vibrations porte d'entrée (0x00158d000669063a): DJT11LM - Xiaomi Aqara vibration sensor (EndDevice)
Zigbee2MQTT:info  2022-07-24 11:59:26: Capteur présence pallier (0x00158d0006c3903a): RTCGQ11LM - Xiaomi Aqara human body movement and illuminance sensor (EndDevice)
Zigbee2MQTT:info  2022-07-24 11:59:26: Porte garage (0x00158d0006ed7a78): MCCGQ11LM - Xiaomi Aqara door & window contact sensor (EndDevice)
Zigbee2MQTT:info  2022-07-24 11:59:26: Arrosage jardin (0x847127fffea4a03f): R7060 - Woox Smart garden irrigation control (EndDevice)
Zigbee2MQTT:warn  2022-07-24 11:59:26: `permit_join` set to  `true` in configuration.yaml.
Zigbee2MQTT:warn  2022-07-24 11:59:26: Allowing new devices to join.
Zigbee2MQTT:warn  2022-07-24 11:59:26: Set `permit_join` to `false` once you joined all devices.
Zigbee2MQTT:info  2022-07-24 11:59:26: Zigbee: allowing new devices to join.
Zigbee2MQTT:info  2022-07-24 11:59:26: Connecting to MQTT server at mqtt://10.0.0.38
Zigbee2MQTT:info  2022-07-24 11:59:27: Connected to MQTT server
Zigbee2MQTT:info  2022-07-24 11:59:27: MQTT publish: topic 'zigbee2mqtt/bridge/state', payload 'online'
Zigbee2MQTT:info  2022-07-24 11:59:27: Started frontend on port 0.0.0.0:8099
Zigbee2MQTT:info  2022-07-24 11:59:27: MQTT publish: topic 'zigbee2mqtt/bridge/config', payload '{"commit":"unknown","coordinator":{"meta":{"maintrel":0,"majorrel":38,"minorrel":120,"product":0,"revision":"0x26780700","transportrev":0},"type":"ConBee2/RaspBee2"},"log_level":"info","network":

As tu essayé un reboot du server ?
Parfois je suis obligé de le faire pour que HA prenne en compte mes nouveaux capteurs

Bonjour @Bigmat oui j’ai redémarré plusieurs fois mais rien n’y fait :frowning: je penche plus pour une histoire de config entre MQTT et Zigbee2MQTT mais je ne vois pas ce qui cloche.

Bonjour,

Alors dans l’interface web zigbee2mqtt essaye de donner un ordre d’allumage/extinction. Si c’est ok on part du principe que MQTT+z2m fonctionnent correctement.
Dans le fichier de configuration de zigbee2mqtt, j’ai activé la directive : homeassistant: true

Après pour t’assurer que tout le monde est bien connecté au broker MQTT tu consultes les logs de celui-ci (hésites pas a ajouter les directives client_id pour identifier les connexions zigbee2mqtt et homeassistant.

Tu peux également augmenter les logs MQTT du coté de HA.

Voilà quelques pistes pour démarrer.

1 « J'aime »

Merci @bsheep
Depuis l’interface web de Zigbee2mqtt j’arrive bien a à piloter mes périphériques.
J’ai ajouté homeassistant: true mais je n’ai pas vu de différence après redémarrage.

Pour les logs : côté zigbee2mqtt j’en ai un max, ça discute à fond :slight_smile: exemple plus bas.
côté mqtt, je ne vois rien dans les logs, par contre si dans la config j’écoute le topic d’un de mes périphériques, je vois bien les messages arriver.

Pour les clients ID, je ne sais pas trop comment faire, j’ai pas tenté.

Donc le cablage me semble ok, par contre je n’arrive pas à exploiter le tout dans HomeAssistant et utiliser mes périphériques (qui ne sont pas dans ma liste d’appareils). Dans les appareils et entités, de l’intégraton de MQTT Broker, j’ai quelques appareils dispos d’un autre addon (que j’ai désactivé d’ailleurs, mais les appareils sont toujours là), mais pas ceux de zigbee2mqtt.

exemple log Zigbee2MQTT :

Zigbee2MQTT:info  2022-07-24 18:32:13: Connecting to MQTT server at mqtt://10.0.0.38
Zigbee2MQTT:info  2022-07-24 18:32:14: Connected to MQTT server
Zigbee2MQTT:info  2022-07-24 18:32:14: MQTT publish: topic 'zigbee2mqtt/bridge/state', payload 'online'
Zigbee2MQTT:info  2022-07-24 18:32:14: Started frontend on port 0.0.0.0:8099
Zigbee2MQTT:info  2022-07-24 18:32:14: MQTT publish: topic 'zigbee2mqtt/bridge/config', payload '{"commit":"unknown","coordinator":{"meta":{"maintrel":0,"majorrel":38,"minorrel":120,"product":0,"revision":"0x26780700","transportrev":0},"type":"ConBee2/RaspBee2"},"log_level":"info","network":{"channel":11,"extendedPanID":"0xdddddddddddddddd","panID":6754},"permit_join":true,"version":"1.26.0"}'
Zigbee2MQTT:info  2022-07-24 18:32:14: MQTT publish: topic 'zigbee2mqtt/binary_sensor/0x00124b0025135214/contact/config', payload '{"availability":[{"topic":"zigbee2mqtt/bridge/state"}],"device":{"identifiers":["zigbee2mqtt_0x00124b0025135214"],"manufacturer":"SONOFF","model":"Contact sensor (SNZB-04)","name":"Porte Scellier"},"device_class":"door","json_attributes_topic":"zigbee2mqtt/Porte Scellier","name":"Porte Scellier contact","payload_off":true,"payload_on":false,"state_topic":"zigbee2mqtt/Porte Scellier","unique_id":"0x00124b0025135214_contact_zigbee2mqtt","value_template":"{{ value_json.contact }}"}'
Zigbee2MQTT:info  2022-07-24 18:32:14: MQTT publish: topic 'zigbee2mqtt/binary_sensor/0x00124b0025135214/battery_low/config', payload '{"availability":[{"topic":"zigbee2mqtt/bridge/state"}],"device":{"identifiers":["zigbee2mqtt_0x00124b0025135214"],"manufacturer":"SONOFF","model":"Contact sensor (SNZB-04)","name":"Porte Scellier"},"device_class":"battery","entity_category":"diagnostic","json_attributes_topic":"zigbee2mqtt/Porte Scellier","name":"Porte Scellier battery low","payload_off":false,"payload_on":true,"state_topic":"zigbee2mqtt/Porte Scellier","unique_id":"0x00124b0025135214_battery_low_zigbee2mqtt","value_template":"{{ value_json.battery_low }}"}'
Zigbee2MQTT:info  2022-07-24 18:32:14: MQTT publish: topic 'zigbee2mqtt/sensor/0x00124b0025135214/battery/config', payload '{"availability":[{"topic":"zigbee2mqtt/bridge/state"}],"device":{"identifiers":["zigbee2mqtt_0x00124b0025135214"],"manufacturer":"SONOFF","model":"Contact sensor (SNZB-04)","name":"Porte Scellier"},"device_class":"battery","enabled_by_default":true,"entity_category":"diagnostic","json_attributes_topic":"zigbee2mqtt/Porte Scellier","name":"Porte Scellier battery","state_class":"measurement","state_topic":"zigbee2mqtt/Porte Scellier","unique_id":"0x00124b0025135214_battery_zigbee2mqtt","unit_of_measurement":"%","value_template":"{{ value_json.battery }}"}'
Zigbee2MQTT:info  2022-07-24 18:32:14: MQTT publish: topic 'zigbee2mqtt/sensor/0x00124b0025135214/voltage/config', payload '{"availability":[{"topic":"zigbee2mqtt/bridge/state"}],"device":{"identifiers":["zigbee2mqtt_0x00124b0025135214"],"manufacturer":"SONOFF","model":"Contact sensor (SNZB-04)","name":"Porte Scellier"},"device_class":"voltage","enabled_by_default":false,"entity_category":"diagnostic","json_attributes_topic":"zigbee2mqtt/Porte Scellier","name":"Porte Scellier voltage","state_class":"measurement","state_topic":"zigbee2mqtt/Porte Scellier","unique_id":"0x00124b0025135214_voltage_zigbee2mqtt","unit_of_measurement":"mV","value_template":"{{ value_json.voltage }}"}'

Exemple écoute d’un topic précis sous MQTT :

Écouter
zigbee2mqtt/Capteur présence pallier

Message 1 reçu sur zigbee2mqtt/Capteur présence pallier à 18:39 :

{
    "battery": 100,
    "device_temperature": 39,
    "illuminance": 348,
    "illuminance_lux": 348,
    "linkquality": 255,
    "occupancy": true,
    "power_outage_count": 22,
    "voltage": 3035
}

Salut,

A priori, si z2m voit et pilote les appareils il ne reste plus grand choses à faire.
Par contre vu les noms ‹ compliqués › (apostrophes, espaces) je suggère de chercher par mots simples (scellier, palier) uniquement dans les outils de développements

Bonjour @Pulpy-Luke je suis d’accord que je ne dois pas être loin du but ! Mais non je n’ai toujours rien qui remonte dans HA (ni dans les appareils, ni dans outils de dvpt).
Je vais tenter de réinstaller MQTT.

Salut,

Avant de tout casser, prends MQTTExplorer et regarde les topics qui sont publiés ainsi que l’activité

@Pulpy-Luke j’ai réinstallé MQTT et laissé la config par défaut. Dans MQTT explorer j’arrive à me connecter et je vois des messages de certains de mes capteurs. Avant la réinstall je n’arrivais à me connecter avec MQTT explorer, c’est plutot bon signe.

Par contre je ne vois toujours rien dans Home Assistant, pas moyen d’exploiter mes périphériques, je les vois nul part :frowning: