Les modules DomBus sont connectés entre eux par un bus série , en utilisant un câble d'alarme fin/commun avec 4 fils : 2 pour transporter l'alimentation 12-24 Vdc et 2 fils pour les données à 115200 bps 8,n,1 en utilisant le bus équilibré de qualité industrielle RS485 .

Normalement, le bus est connecté au contrôleur domotique par un câble fin, à l'aide d'un adaptateur RS485/USB bon marché.

Dans le cas où le bus ne peut pas être physiquement connecté au contrôleur domotique (zone différente, impossibilité de faire passer des câbles, ...), il est possible d'utiliser une liaison radio, un tunnel MQTT ou TCP pour maintenir en communication le contrôleur domotique avec le réseau DomBus .


Utiliser une liaison radio pour connecter ensemble deux bus RS485

Fonctionne avec les modules DomBus programmés avec les protocoles DomBus et Modbus.

Il est possible de trouver sur le marché des dispositifs radio permettant d'interconnecter deux bus RS485 de manière transparente. Ainsi, il est possible de connecter :

  • un contrôleur domotique vers un ou plusieurs modules DomBus dans un emplacement distant
  • un réseau DomBus avec un autre dans un endroit distant

Ci-dessous la description de la connexion utilisant différents systèmes radio.

1. Utilisation de l'EBYTE EWM-290-400T20D pour obtenir une liaison sans fil transparente entre deux bus RS485

Le modèle EWM-290-400T20D d'EBYTE est un module LoRa très économique avec interface RS485. Il peut fonctionner à un débit radio de 62 500 bps dans la bande 433-434 MHz avec une puissance maximale de 20 dBm et jusqu'à 115 200 bps sur le port RS485. Attention, ce module ne porte pas le marquage CE ; en Europe, il ne peut donc être utilisé qu'à des fins de test.

Il est fourni avec un câble 5 fils :

  • 5 V doit être connecté à 4,5 ÷ 5,5 V, consommation de courant maximale de 100 mA
  • GND à connecter à la terre
  • TXD/A à connecter au RS485 A
  • RXD/B à connecter au RS485 B
  • STB : je m'en fiche

L'antenne 433MHz, avec connecteur SMA-mâle, n'est pas fournie avec le module, elle doit donc être achetée à part.

Configuration du module EWM290

Le module peut être connecté par commandes AT. Le mode UART par défaut est 9600,8,n,1 et chaque commande doit être envoyée en une seule séquence, sans délai entre les caractères. Vous pouvez ainsi sélectionner chaque commande à la souris et la coller dans le terminal.

Sous Linux, il est possible d'utiliser picocom -b9600 /dev/ttyUSBx pour connecter l'appareil au débit binaire de travail (9600 par défaut, -b115200 s'il est déjà configuré) et envoyer la commande

À+MODE=2

pour mettre le module en mode configuration : maintenant le module sélectionne 9600bps, donc si vous avez émis cette commande à un débit binaire différent, quittez picocom (ctrl-a ctrl-x) et exécutez à nouveau la commande picocom -b9600 /dev/ttyUSBx , puis envoyez chacune des lignes suivantes en spécifiant une valeur KEY aléatoire entre 0 et 65535 (pas 12345 !).

À+TAUX=7
AT+PAQUET=0
À+PUISSANCE=0
AT+LBT=1
AT+UART=7,0
AT+TOUCHE=12345
AT+CANAL=24
À+MODE=0

Le module est désormais en mode transparent, formant une liaison radio sans fil entre les deux bus RS485.


 

Liaison LAN / WiFi / Internet entre le contrôleur domotique et les modules DomBus

Certaines solutions sont prises en compte pour permettre au module DomBus de communiquer avec le contrôleur domotique.

Veuillez noter que les modules DomBus sont disponibles avec deux firmwares différents :

1. prenant en charge le protocole DomBus , protocole propriétaire à très faible latence, idéal pour les relais, sorties, capteurs, entrées, boutons/interrupteurs, capteurs d'alarme, EVSE, contrôleur Solar Tracker et plus encore... En utilisant le plugin Domoticz ou DomBusGateway (pont DomBus 2 MQTT avec AutoDiscovery, compatible avec tous les systèmes domotiques prenant en charge MQTT ), toutes les entités sont créées automatiquement.

2. Prise en charge du protocole Modbus standard, non adapté aux boutons/interrupteurs ou aux capteurs d'alarme devant être gérés sans latence. Le protocole Modbus est compatible avec les sorties relais, les modules EVSE, les contrôleurs de trackers solaires, les entrées de capteurs de température/humidité et autres entrées/capteurs avec un intervalle d'interrogation supérieur ou égal à 5 secondes. Il est compatible avec la plupart des systèmes domotiques et peut également être utile pour la réalisation de produits personnalisés utilisant le protocole Modbus .

Building automation network using DomBus modules and WiFi/Internet trunking

1. Utilisation du matériel DomBusGatewayPIS (pont DomBus 2 MQTT)

Fonctionne avec les modules DomBus programmés avec le protocole DomBus.

Il s'agit d'un mini-ordinateur prêt à l'emploi, basé sur le Rock PI S, ne consommant que 400 mW. Il est équipé de Linux, d'un pare-feu, d'une sauvegarde, de Mosquitto et du logiciel DomBusGateway. Ce dernier permet de connecter un ou plusieurs modules DomBus (utilisant le protocole DomBus , et non Modbus !) à un broker MQTT (intégré au même mini-ordinateur, ou à un broker externe comme Mosquitto exécuté dans le contrôleur Home Assistant). La communication avec les systèmes domotiques s'effectue via le protocole standard MQTT, avec l'extension AutoDiscovery pour les contrôleurs compatibles (comme Home Assistant, NodeRED, OpenHAB, ioBroker).

Le module est disponible sur https://store.creasol.it/DomBusGatewayPIS , mais il est possible de le configurer soi-même en utilisant l'image téléchargeable gratuitement. Consultez https://github.com/CreasolTech/DomBusGateway pour obtenir les instructions.

 

2. Série virtuelle sur TCP/IP entre deux périphériques Linux

Fonctionne avec les modules DomBus programmés avec les protocoles DomBus et Modbus.

Si le contrôleur domotique est hébergé dans un périphérique Linux (par exemple un Raspberry PI ou un NUC, maintenant appelé « principal ») et que les périphériques DomBus sont connectés à un autre périphérique Linux (Raspberry, Rock PI S, QNAP, ..., maintenant appelé « esclave »), il est possible que le contrôleur principal connecte le réseau DomBus par une connexion TCP/IP, filaire ou sans fil, de cette manière :

  1. Sur l'appareil esclave (où le réseau DomBus est connecté à l'aide de l'adaptateur USB/RS485 bon marché), installez le service ser2net :
    sudo apt install ser2net
  2. Configurez le service ser2net en modifiant le fichier /etc/ser2net.yaml :
    sudo nano /etc/ser2net.yaml
  3. Supprimez les connexions existantes qui ne sont pas utilisées et insérez les lignes suivantes pour définir la connexion avec un bus :
    connection: &dombus
    accepter: tcp,2000
    enable: on
    options:
    kickolduser: true
    telnet-brk-on-sync: true
    connector: serialdev,
    /dev/ttyUSB0,
    115200n81,local
  4. Il est possible de modifier le port TCP (2000, dans l'exemple) et le port série (ttyUSB0 dans l'exemple).
  5. Dans le cas où plusieurs bus DomBus sont connectés au périphérique esclave, définissez une connexion pour chaque bus (en spécifiant un port TCP différent pour chaque bus).
  6. Redémarrez le service ser2net à l'aide de la commande service ser2net restart
  7. Vérifiez que cela fonctionne en utilisant la commande telnet localhost 2000 sur le périphérique esclave ; ctrl+] pour quitter
  8. Sur l'appareil principal (avec Domoticz, Home Assistant, Node-RED, contrôleur OpenHAB...) installez l'application socat :
    sudo apt install socat
  9. Exécutez la commande suivante pour créer le port série virtuel /dev/ttyUSBDomBusNet pour gérer les périphériques DomBus connectés au périphérique esclave : socat pty,link=/dev/ttyUSBDomUSBBusNet tcp:192.168.6.2:2000 où 192.168.6.2 doit être remplacé par le numéro IP du périphérique esclave
  10. Dans le cas où la connexion est effectuée via Internet ou un ou plusieurs routeurs avec NAT, il peut être nécessaire de configurer la redirection de port / la destination NAT sur les routeurs
  11. Testez l'ensemble du système en exécutant la commande cat /dev/ttyUSBDomBusNet : si cela fonctionne, écrivez un petit script bash pour activer le port série virtuel, et appelez ce script depuis /etc/rc.local en vous assurant qu'il y a le caractère "&" à la fin, pour exécuter le script en arrière-plan :

    #!/bin/bash
    # New file /usr/local/sbin/dombusnet.sh , permissions 0700
    # Thanks to Patrick Schaerer for testing and suggestions
    TTYDEV=/dev/ttyUSBDomBusNet
    TCPSERVER=192.168.6.2
    TCPPORT=2000
    while true; do
    socat pty,link=${TTYDEV},waitslave tcp:${TCPSERVER}:${TCPPORT}
    sleep 5
    done
    # End of file


    # File /etc/rc.local
    # ........
    /usr/local/sbin/dombusnet.sh &
    exit 0

Il s'agit d'une solution moins coûteuse pour contrôler les modules DomBus par une connexion filaire ou sans fil dans le cas où les modules DomBus sont situés dans une zone où un périphérique Linux est déjà actif.

3. Connexion des modules DomBus à l'aide de convertisseurs RS485 vers Ethernet ou WiFi

Fonctionne avec les modules DomBus programmés avec les protocoles Modbus. Certains modules LAN/Wi-Fi prennent également en charge le port série virtuel, fonctionnant également avec le protocole DomBus.

En utilisant un convertisseur Ethernet <--> RS485 comme MOXA NPORT ou d'autres appareils, il est vraiment simple de connecter des appareils RS485 (modules DomBus ou autres modules Modbus RTU) qui sont placés dans une zone différente du contrôleur.

Dans ce cas, un pilote doit être installé pour créer un port COM virtuel (port série virtuel) pour accéder au bus RS485 distant.

Ci-dessous une liste de convertisseurs RS485 vers Ethernet :

Si vous connaissez d'autres appareils pouvant être utilisés à cette fin à des prix raisonnables, n'hésitez pas à nous le faire savoir.

4. Utilisation d'ESP32 + ESPHome pour connecter des modules Modbus comme DomBus avec le firmware Modbus

Fonctionne avec les modules DomBus programmés avec le protocole Modbus.

Slawomir décrit sur la page GitHub https://github.com/SCiunczyk/wallbox-diy comment utiliser le micrologiciel ESP32 + ESPHome pour créer une passerelle entre les appareils Modbus (modules DomBus programmés avec le micrologiciel Modbus, et non Dombus) et Home Assistant, via le Wi-Fi. Ceci n'est qu'une partie du projet décrit, qui permet de recharger un véhicule électrique en monophasé (faible puissance, de 1 kW à 7 kW, généralement utilisé en mode solaire) et en triphasé (pour recharger le véhicule à pleine vitesse, de 4 kW à 22 kW) grâce au module Creasol DomBusEVSE .
Merci à Slawomir d'avoir partagé des informations sur sa wallbox très intelligente !