Elark KB

Intégrations

Pont Mosquitto : publier vers Elark en parallèle

Vous avez déjà un broker Mosquitto local (Home Assistant OS, Raspberry Pi, NAS…) avec Zigbee2MQTT, Shelly ou Tasmota ? Plutôt que de reconfigurer chaque appareil, faites recopier les topics par votre Mosquitto vers Elark. Votre installation locale continue de fonctionner.

Lecture 6 min

Le principe

Un appareil (Zigbee2MQTT, Shelly…) ne peut publier que vers un seul broker. On ne le reconfigure donc pas : c’est votre Mosquitto local qui « bridge » (recopie) les topics vers le broker Elark. Les états restent disponibles en local et remontent dans Elark.

Étape 1 — Créer la passerelle dans Elark

  1. Dans l’app : Passerelles MQTT + Nouvelle passerelle, choisissez le type (Zigbee2MQTT, Shelly…).
  2. À la validation, Elark crée automatiquement un appareil « Pont … » et affiche sa config MQTT : serveur, port, identifiant, mot de passe et topic racine (un suffixe unique est ajouté, ex. zigbee2mqtt-a1b2c3). Copiez ces valeurs — le mot de passe n’est affiché qu’une seule fois.
Sécurité — ces identifiants sont propres à votre passerelle. Ne les partagez jamais et ne les publiez nulle part. En cas de doute, régénérez le mot de passe MQTT du device pont depuis sa fiche.

Étape 2 — Récupérer le certificat CA

Le broker Elark est en TLS avec un certificat racine dédié. Votre Mosquitto doit lui faire confiance. Téléchargez le fichier elark-ca.crt depuis l’app (bouton « Télécharger le CA » sur la page Passerelles), puis déposez-le sur votre machine, par ex. dans /share/mosquitto/elark-ca.crt (Home Assistant OS) ou /etc/mosquitto/certs/elark-ca.crt.

Étape 3 — Le fichier de configuration du bridge

Créez un fichier de conf pour votre Mosquitto. Sur Home Assistant OS, activez d’abord le dossier perso de l’add-on Mosquitto (customize: { active: true, folder: mosquitto }), puis créez /share/mosquitto/elark_bridge.conf :

# Pont Mosquitto local → broker Elark
connection elark
address mqtt.elark.cloud:8883

# Identifiants du device "Pont …" (affichés dans l'app à la création)
remote_username <claim_code>
remote_password <mot_de_passe>
remote_clientid elark-bridge

# TLS : CA Elark (certificat dédié, à télécharger dans l'app)
bridge_cafile /share/mosquitto/elark-ca.crt
bridge_protocol_version mqttv311

try_private false
cleansession true
notifications false
restart_timeout 10

# États locaux → Elark (remontée / supervision)
topic <topic_racine>/# out 0

# (optionnel) commandes Elark → local (piloter les appareils)
# topic <topic_racine>/+/set in 0

Remplacez <claim_code>, <mot_de_passe> et <topic_racine> par les valeurs affichées à la création de la passerelle. Puis redémarrez l’add-on / le service Mosquitto.

Étape 4 — Vérifier

Dans les logs de Mosquitto, vous devez voir la connexion connection elark s’établir vers mqtt.elark.cloud:8883. Côté Elark, les appareils remontent dans Mes appareils › section Appareils via passerelle, avec leur tag.

Plusieurs clients / installations

Chaque passerelle reçoit un topic racine unique (suffixe automatique) : deux installations ne se mélangent pas sur le broker mutualisé. Si votre Mosquitto local publie sur la racine standard (ex. zigbee2mqtt/), remappez vers le topic unique de la passerelle dans le bridge :

topic # out 0 zigbee2mqtt/ <topic_racine>/

Dépannage

  • Erreur TLS / handshake : le CA n’est pas trouvé ou mal référencé. Vérifiez bridge_cafile et que le fichier elark-ca.crt se termine par une ligne vide après -----END CERTIFICATE-----.
  • « Connection Refused: not authorised » : identifiants incorrects, ou le device pont n’est pas/plus lié à la passerelle.
  • Les états remontent mais pas le pilotage : activez la ligne topic <topic_racine>/+/set in 0.