[Tuto] Contrôler sa chaudière Viessmann avec Domoticz via une interface infrarouge

Vous avez créé un script LUA dont vous êtes fier, un .sh génial, un programme Python hors du commun, un Tuto, c'est ici que vous pouvez les partager.
damolc
Messages : 240
Inscription : 24 juil. 2016, 22:08

Re: [Tuto] Contrôler sa chaudière Viessmann avec Domoticz via une interface infrarouge

Message par damolc »

Bonjour
Il faut un minimum de connaissance pour faire cette installation
La première chose à faire est de lire ce tutoriel de A à Z ainsi que le site : https://www.bricozone.fr/t/interface-vi ... -pi.14671/
Tu as tout pour te lancer avec tout les éléments plus ou moins cachés
Bon courage
Carto_
Messages : 6
Inscription : 25 janv. 2023, 14:53

Re: [Tuto] Contrôler sa chaudière Viessmann avec Domoticz via une interface infrarouge

Message par Carto_ »

C'est fait (tout le threat est passionnant d'ailleurs), et tout me semble assez clair - je pense donc que c'est faisable. Mais le post (et pas mal de commentaires à la suite) datent un peu donc j'espère que tous les packages / logiciels utilisés sont encore valides.

Du coup, pas contre, si quelque chose plante au milieu (une nouvelle erreur, etc...) je serais très rassuré d'avoir quelqu'un pour m'épauler car pas à l'aise avec l'idée de jouer avec les paramètres de la chaudière sans être sur que la partie hardware & software est bien paramétrée.
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: [Tuto] Contrôler sa chaudière Viessmann avec Domoticz via une interface infrarouge

Message par Keros »

Bonjour Carto_ et bienvenu sur le forum :)

Ce forum est un lieu d'entraide et d'échanges. Ce sont des personnes comme toi et moi qui partageons une passion commune autour de la domotique. L'idée ici n'est pas de partager un service contre une rémunération.
On partage des infos, les autres peuvent ainsi se documenter, on peut poser des questions, on aura des réponses, ou pas : cela dépend des personnes qui parcourent le forum en ce moment.
En aucune manière, le forum peut être garant de quoi que ce soit. Si tu le sens de te lancer dans le projet, vas-y, mais si tu as des doutes, fait appelle à un professionnel.
A minima, peut-être éviter de le faire maintenant, au moment le plus critique sur l'utilisation de la chaudière.
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
Carto_
Messages : 6
Inscription : 25 janv. 2023, 14:53

Re: [Tuto] Contrôler sa chaudière Viessmann avec Domoticz via une interface infrarouge

Message par Carto_ »

Entendu, bien noté et merci beaucoup !

Très bon point - d’éviter de tout casser au pire moment de l’année (températures négatives). Je vais en effet attendre un peu. Mais vais surtout récupérer le matos et déjà interfacer la chaudière en IR avec l’optolink et déjà essayer de lire les infos chaudière - sera un bon début. Je vous tiens au courant de mes expérimentations dans les prochaines semaines !
Carto_
Messages : 6
Inscription : 25 janv. 2023, 14:53

Re: [Tuto] Contrôler sa chaudière Viessmann avec Domoticz via une interface infrarouge

Message par Carto_ »

Bon. Cela va en effet être un challenge. Je suis déjà bloqué!

1. J'ai réussi à interfacer ma chaudière avec Tado (thermostat connecté). Déjà une bonne chose de faite, permet de me passer du Vitotrol à un prix prohibitif qu'on voulait m'installer.

2. J'ai aussi récupéré un cable USB Optolink (Viessman) et je cherche donc à implémenter vitalk (puis, tout le reste). Car permet d'aller beaucoup plus loin dans la lecture / écriture sur la chaudière.

Code : Tout sélectionner

sudo nano /etc/init.d/vitalk
Et je change le script pour :

Code : Tout sélectionner

DAEMON_ARGS="-t /dev/ttyUSB0"

Code : Tout sélectionner

/etc/init.d/vitalk start
Et ensuite :

Code : Tout sélectionner

sudo vitalk -t /dev/ttyUSB0
Qui me donne un méchant :

Code : Tout sélectionner

Reset Communication to KW Proto..... failed!
Dans /etc/udev/rules.d/70-lsekopf.rules, j'ai :

Code : Tout sélectionner

SUBSYSTEMS=="usb", ATTRS{serial}=="0001", SYMLINK+="vitoir0"
Le Serial venant de :

Code : Tout sélectionner

udevadm info --query=all --name=/dev/ttyUSB0
Qui me donne : ID_SERIAL_SHORT=0001
Et ID_SERIAL=Silicon_Labs_CP2102_USB_TO_UART_Bridge_Controller_0001

Mais aussi

Code : Tout sélectionner

sudo udevadm info --name=/dev/ttyUSB0 --attribute-walk
, qui me donne:
ATTRS[serial]=="0001"

Si quelqu'un a une idée - merci milles dois. D'ici-là, je continue d'investiguer et je reviens vers vous si je trouve !
damolc
Messages : 240
Inscription : 24 juil. 2016, 22:08

Re: [Tuto] Contrôler sa chaudière Viessmann avec Domoticz via une interface infrarouge

Message par damolc »

bonjour
as tu reccuperer ton numero ATTRS(serial)? qui devrait ressembler a AI0309l9
puis tu va dans /etc/udev/rules.d70-lesekopf. rules et tu met :
SUBSYSTEM=="tty", ATTRS{product}=="FT232R USB UART", ATTRS{serial}=="AI0309L9", NAME="vitoir0"
peut etre as tu oublié de faire :
pi@raspberrypi $ dmesg | grep "now attached"
Carto_
Messages : 6
Inscription : 25 janv. 2023, 14:53

Re: [Tuto] Contrôler sa chaudière Viessmann avec Domoticz via une interface infrarouge

Message par Carto_ »

Le serial semble être 0001 ?

udevadm info --query=all --name=/dev/ttyUSB0
Me donne >> ID_SERIAL_SHORT=0001
Et >> ID_SERIAL=Silicon_Labs_CP2102_USB_TO_UART_Bridge_Controller_0001

dmesg | grep "now attached" me renvoie : usb 1-1.2: cp210x converter now attached to ttyUSB0
damolc
Messages : 240
Inscription : 24 juil. 2016, 22:08

Re: [Tuto] Contrôler sa chaudière Viessmann avec Domoticz via une interface infrarouge

Message par damolc »

tu as surement oublié une etape
le tuto a suivre : Etape 1. Installation de Raspbian

Etape 2. MAJ Raspbian
On démarre la RaspBerry.
On se connecte avec Putty en ssh (port 22).
Le compte est pi et mot de passe raspberry.
sudo raspi-config
Mise à jour de raspbian
sudo apt-get update
sudo apt-get upgrade
sudo rpi-update
sudo reboot
curl -sSL install.domoticz.com | sudo bash
Etape 3. Installation de apache2-PHP-MySQL
sudo apt install apache2
sudo chown -R pi:www-data /var/www/html/
sudo chmod -R 770 /var/www/html/
sudo apt install php php-mbstring
sudo rm /var/www/html/index.html
echo "<?php phpinfo(); ?>" > /var/www/html/index.php
sudo apt install mariadb-server php-mysql
sudo mysql --user=root

DROP USER 'root'@'localhost';
CREATE USER 'root'@'localhost' IDENTIFIED BY '0864';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;
sudo apt install phpmyadmin
sudo phpenmod mysqli
sudo /etc/init.d/apache2 restart
sudo apt-get install telnet python-mysqldb -y
lsusb
dmesg | grep "now attached"
/sbin/udevadm info --query=all –name=/dev/ttyUSB0
sudo nano /etc/udev/rules.d/70-lesekopf.rules
SUBSYSTEM=="tty", ATTRS{product}=="FT232R USB UART", ATTRS{serial}=="AI0309L9", NAME="vitoir0"
sudo service udev restart
sudo reboot

et ça fonctionne
Etape 3. Installation de ViTalk
cd /var/
sudo wget http://www.edom-plc.pl/images/Vitodens/viTalk.zip
sudo unzip viTalk.zip
sudo rm viTalk.zip
sudo mv /var/viTalk /var/vitalk
cd vitalk
sudo make install



Etape 4. Lancement automatique de ViTalk
cd /etc/init.d
sudo wget http://www.edom-plc.pl/images/Vitodens/ ... launch.zip
sudo unzip vitalk_launch.zip
sudo rm vitalk_launch.zip
sudo nano vitalk
Ajoutez cela en début de fichier
#! /bin/sh
### BEGIN INIT INFO
# Provides: skeleton
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Should-Start: $portmap
# Should-Stop: $portmap
# X-Start-Before: nis
# X-Stop-After: nis
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# X-Interactive: true
# Short-Description: ViTalk initscript
# Description: Vitalk initscript
#
### END INIT INFO

Important:
Si votre liaison avec Optolink s’effectue par une interface USB/Serial, il faut modifier la ligne suivante dans le fichier vitalk
Rechercher DAEMON_ARGS="-t /dev/vitoir0" et remplacer par DAEMON_ARGS="-t /dev/ttyUSB0"
Sauvegarder le fichier.

Ensuite :
sudo chmod +x ./vitalk
sudo update-rc.d vitalk defaults
sudo reboot
Vérification
Vérifiez la partie service
sudo service vitalk status. Ca doit être démarré et vert.
Sinon, sudo service vitalk start

mysql -uroot -p 0864
CREATE DATABASE Vito;
USE Vito;
CREATE TABLE Vito (
time datetime,
comm varchar(14),
value smallint(6));

cd /var/
sudo mkdir python
copier vito dans ce dossier
cd python
sudo chmod +x vito.py

sudo crontab -e
*/2 * * * * /var/python/vito.py > /dev/null 2>&1 #Vito Data Log


Test de communication

sudo vitalk -t /dev/ttyUSB0
Ca doit afficher:
Try Proto 300 Init: Success.
Now Listening to telnet Port 83

Si c’est le cas, on passe à la partie Domoticz.
Dans le cas contraire, vous avez un problème de communication avec l’Optolink (vérifier le montage, le positionnement des Leds, l’installation de Vitalk, …)

Etape 5: Liaison Domoticz Viessmann
cd /home/pi/domoticz/scripts/python
sudo chmod +x domo2vito.py
crontab -e
*/3 * * * * /home/pi/domoticz/scripts/python/domo2vito.py update
A la ligne domoticz_ip = indiquez l’adresse IP de votre domoticz. S’il est installé sur un synology, il faut indiquer l’adresse du synology et le port TCP que vous avez déclaré (8084 par défaut sur le synology).

Je ne décris pas la configuration du fichier domo2vito.py car tout est déjà bien expliqué dans le début du tuto de js-martin.

Installation Python
sudo apt-get install python-requests (inutile avec la version complète de Raspbian)

Executer le code : sudo ./domo2vito.py update

Cela va effectuer la communication avec la chaudière et remonter les paramètres.
Il ne reste plus qu’à planifier l’update automatique à la fréquence que vous souhaitez. Moi j’ai programmé toute les 2mn.

sudo crontab -e
*/2 * * * * /home/pi/domoticz/scripts/python/domo2vito.py update

Sur la Raspberry, c’est fini.
Carto_
Messages : 6
Inscription : 25 janv. 2023, 14:53

Re: [Tuto] Contrôler sa chaudière Viessmann avec Domoticz via une interface infrarouge

Message par Carto_ »

Merci beaucoup pour tout ce détail et de prendre le temps !
Je suis pourtant passé dans toutes ces étapes...

Dans mon fichier /etc/udev/rules.d/70-lesekopf.rules

J'inscris :

Code : Tout sélectionner

SUBSYSTEM=="tty", ATTRS{product}=="CP2102 USB to UART Bridge Controller", ATTRS{serial}=="0001", NAME="vitoir0"
Et j'ai le sentiment que c'est cela qui plante. Je continue de creuser.

C'est pourtant en ligne avec ce que me donne la commande suivante :

Code : Tout sélectionner

pi@masterpi:/etc/init.d $ sudo udevadm info --name=/dev/ttyUSB0
P: /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2/1-1.2:1.0/ttyUSB0/tty/ttyUSB0
N: ttyUSB0
L: 0
S: serial/by-path/platform-fd500000.pcie-pci-0000:01:00.0-usb-0:1.2:1.0-port0
S: serial/by-id/usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_0001-if00-port0
E: DEVPATH=/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2/1-1.2:1.0/ttyUSB0/tty/ttyUSB0
E: DEVNAME=/dev/ttyUSB0
E: MAJOR=188
E: MINOR=0
E: SUBSYSTEM=tty
E: USEC_INITIALIZED=10388367
E: ID_BUS=usb
E: ID_VENDOR_ID=10c4
E: ID_MODEL_ID=ea60
E: ID_PCI_CLASS_FROM_DATABASE=Serial bus controller
E: ID_PCI_SUBCLASS_FROM_DATABASE=USB controller
E: ID_PCI_INTERFACE_FROM_DATABASE=XHCI
E: ID_VENDOR_FROM_DATABASE=VIA Technologies, Inc.
E: ID_MODEL_FROM_DATABASE=VL805 USB 3.0 Host Controller
E: ID_PATH=platform-fd500000.pcie-pci-0000:01:00.0-usb-0:1.2:1.0
E: ID_PATH_TAG=platform-fd500000_pcie-pci-0000_01_00_0-usb-0_1_2_1_0
E: ID_VENDOR=Silicon_Labs
E: ID_VENDOR_ENC=Silicon\x20Labs
E: ID_MODEL=CP2102_USB_to_UART_Bridge_Controller
E: ID_MODEL_ENC=CP2102\x20USB\x20to\x20UART\x20Bridge\x20Controller
E: ID_REVISION=0100
E: ID_SERIAL=Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_0001
E: ID_SERIAL_SHORT=0001
E: ID_TYPE=generic
E: ID_USB_INTERFACES=:ff0000:
E: ID_USB_INTERFACE_NUM=00
E: ID_USB_DRIVER=cp210x
E: ID_MM_CANDIDATE=1
E: DEVLINKS=/dev/serial/by-path/platform-fd500000.pcie-pci-0000:01:00.0-usb-0:1.2:1.0-port0 /dev/serial/by-id/usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_0001-if00-port0
E: TAGS=:systemd:
E: CURRENT_TAGS=:systemd:
EDIT

J'ai tout de même réussi à interfacer vcontrold avec ma chaudière via l'Optolink. Donc quand je fais tourner vcontrold sur le raspberry, je peux accéder (en local via telnet) à la liste de commandes. Je viens de vérifier, j'arrive à récupérer la température de consigne par exemple. Première étape donc. Pour Vitalk, pour le moment ne fonctionne toujours pas.
damolc
Messages : 240
Inscription : 24 juil. 2016, 22:08

Re: [Tuto] Contrôler sa chaudière Viessmann avec Domoticz via une interface infrarouge

Message par damolc »

effectivement le problème est dans la connexion USB
peut être en changeant de port USB?
peux tu afficher le resultats avec lsusb?
Répondre