openvdocker
Anbindung einer Viessmann Heizung über die Optolinkschnittstelle.
Verfügbar auf
GitHub und
Docker Hub
Es wird der vcontrold Server mit dem vclient zur Verfügung gestellt. Optional können die Werte in einem einstellbarem Intervall über Mqtt gepublisht werden.
Installation über Portainer
Bildstrecke findet ihr im unteren Teil.
Volume erstellen:
Name: vcontrold-conf > "Create the Volume" drücken.
Container erstellen:
Name: openvdocker
Image: murelli146/openvdocker
Port mapping: host 3002 -> container 3002 TCP
> "Deploy the Container"
Container einstellen:
Command > Console: Interactive & TTY
Volumes mapping > container: /etc/vcontrold -> volume: vcontrold-conf
Env >
OPTOLINK /dev/ttyUSB1 Optolink Adapter
IPMQTTBROKER 192.168.179.45 IP vom Mqtt Broker (z.B. mosquitto)
PORTMQTTBROKER 1883 Port vom Mqtt Broker
MQTTTOPIC Vitoplus_300 Topic Name (Ergebnis: z.B. Vitoplus_300/getTempA)
MQTT true Mqtt Option aktivieren oder deaktivieren
MQTTPUB 30 Zeit in Sekunden wie oft die Werte gepublisht werden (!Intervall)
Restart policy > value: always
Runtime & Resources > host: /var/husky/devices/FTDI_FT232R_USB_UART_AI0309KD container: /dev/ttyUSB1
Info: Den Pfad zum Optolinkadapter am Host findet man im WebIF vom TWS unter Portainer.
> "Deploy the Container"
Konfiguration
Alle relevanten Dateien sind im /etc/vcontrold Ordner.
Um auf die Dateien zu zugreifen, verwendet man am besten den
SSH Container.
vcontrold.xml und vito.xml
Diese zwei Files müssen an die jeweilige Heizungstype angepasst werden.
Die Informationen bekommt man über das
openv Wiki
Für die Konfiguration dieser Dateien kann hier kein Support erfolgen.
Nun ist der vcontrold Server einsatzbereit und man kann über telnet (IP_vom_Host:3002) auf die vclient prompt zugreifen.
Ist die Option Mqtt aktiviert muss man noch volgende Einstellungen vornehmen.
1_mqtt_commands.txt
Befehlsliste die Abgerufen werden.
Die Zeilennummer entspricht der Variablen Nummer im Template (2_mqtt.tmpl)
z.B. Zeilennummer 3 entspricht im Template den Variablen $C3 (Befehlsname) und $3 (Wert)
2_mqtt.tmpl
Hier wird eingestellt welche Werte veröffentlicht werden sollen.
z.B. Zeile 3 (getTempWWist) der Befehlsliste
Code: Alles auswählen
mosquitto_pub -h $IPMQTTBROKER -p $PORTMQTTBROKER -t $MQTTTOPIC/$C3 -m $3
Zur Veranschaulichung, diese Zeile sieht letztlich beim Abfragen wie folgt aus:
Code: Alles auswählen
mosquitto_pub -h 192.168.179.45 -p 1883 -t Vitoplus_300/getTempWWist -m 60.00000
ToDo
Optolinkadapter soll auch über eine Variable im Portainer eingestellt werden können. (auch IP:Port)
Werte sollen zukünftig über mqtt auch gesetzt werden können.
Bildstrecke:
1.) Volume erstellen
2.) Container erstellen
Deploy the Container
3.) Container einstellen
Env
OPTOLINK /dev/ttyUSB1 Optolink Adapter
IPMQTTBROKER 192.168.179.45 IP vom Mqtt Broker (z.B. mosquitto)
PORTMQTTBROKER 1883 Port vom Mqtt Broker
MQTTTOPIC Vitoplus_300 Topic Name (Ergebnis: z.B. Vitoplus_300/getTempA)
MQTT true Mqtt Option aktivieren oder deaktivieren
MQTTPUB 30 Zeit in Sekunden wie oft die Werte gepublisht werden (!Intervall)
Restart policy
TWS WebIF
Optolinkadapter
Hinzugefügt nach 1 Stunde 32 Minuten 45 Sekunden:
@gbglace und
@Robert_Mini
Und ab in die KB
