Skip to main content

Open source interface between a Viessmann device (heat pump, gas heater, etc) and MQTT

Project description

GitHub Tag PyPI - Version

viessmann-optolink2mqtt

Open source interface between a Viessmann device (heat pump, gas heater, etc) and MQTT.

Architecture

Architecture

Hardware

  • A Single Board Computer (SBC) which is capable of running Python and has a USB-A connector (if you plan to use the original Viessmann Optolink USB cable). A typical choice is the Raspberry; myself I've been using the OLinuXino A64 as (slightly cheaper) alternative.
  • The Optolink USB cable to read/write; you have two main options: a) buy the original Viessmann cable on specialized shops such as https://www.loebbeshop.de/; see exact item here or b) build your own cable, more details available from other tinkerers like MyVitotronicLogger or at Optolink splitter readme

Installation

This project supports 2 main installation methods: PyPi and Docker. Both methods are meant to be used from a Linux Operating system which has the USB/DIY cable attached (see "Hardware" section above).

Pypi package

python3 -m venv optolink2mqtt-venv
source optolink2mqtt-venv/bin/activate
pip install viessmann-optolink2mqtt

optolink2mqtt --help

Docker

When using Docker you will need to provide the YAML config file path in the docker run command and also provide the name of the serial port (e.g. /dev/ttyUSB0 in the following example):

docker run -d -v <your config file>:/etc/optolink2mqtt/optolink2mqtt.yaml \
    --device=/dev/ttyUSB0 \
    --hostname $(hostname) \
    --name optolink2mqtt \
    ghcr.io/f18m/optolink2mqtt:latest

docker logs -f optolink2mqtt

The docker image of optolink2mqtt supports 3 main architectures: amd64, armv7 and arm64.

Configuration file

This software accepts a declarative configuration in YAML format. Please look at the optolink2mqtt.yaml file as reference source for the syntax.

How to discover register addresses

TO BE WRITTEN

HomeAssistant Integration

This project allows a very easy integration with HomeAssistant. It's enough to populae the ha_discovery section of each register defined in the configuration file with some metadata specific for each sensor, to get the sensor automatically appear inside your HomeAssistant:

HA integration

Related projects

  • Optolink Splitter: this is the original project that inspired this one
  • Optolink Bridge: inspired from the "Optolink Splitter"; requires you to own a VitoConnect device and allows you to setup a "man in the middle" device
  • openv vcontrold: seems abandoned but contains a C-based implementation of the VS1 and VS2 protocols apparently. Its wiki has plenty of details although in German
  • VitoWiFi: a C++ implementation of VS1 (KW) and VS2 (P300) Optolink protocols, for use on ESP microcontrollers but also Linux systems

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

viessmann_optolink2mqtt-0.2.1.tar.gz (311.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

viessmann_optolink2mqtt-0.2.1-py3-none-any.whl (39.3 kB view details)

Uploaded Python 3

File details

Details for the file viessmann_optolink2mqtt-0.2.1.tar.gz.

File metadata

  • Download URL: viessmann_optolink2mqtt-0.2.1.tar.gz
  • Upload date:
  • Size: 311.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for viessmann_optolink2mqtt-0.2.1.tar.gz
Algorithm Hash digest
SHA256 adeadc50001ba0177a4d3a68c1c7f13619abe0e2d5d8fd6607a261c3bbf50766
MD5 15ae4d56999fc89a7d9a5f120e55e5f2
BLAKE2b-256 c8ad7705eb9d3c83354b5e1c0f03d9119b2a279656f18fc7da9ddb264884de4d

See more details on using hashes here.

Provenance

The following attestation bundles were made for viessmann_optolink2mqtt-0.2.1.tar.gz:

Publisher: pypi-release.yml on f18m/viessmann-optolink2mqtt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file viessmann_optolink2mqtt-0.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for viessmann_optolink2mqtt-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 683e6355ba81ad92b396d8db0917b0512cfdd81f5225046c0069f583d2f80ef1
MD5 e4ebcea16ee91fd4586d7bf802fe3279
BLAKE2b-256 e94424d34fd97c08288a65b989a7cdb650aec25fef53f61dbdbad15397f4a45d

See more details on using hashes here.

Provenance

The following attestation bundles were made for viessmann_optolink2mqtt-0.2.1-py3-none-any.whl:

Publisher: pypi-release.yml on f18m/viessmann-optolink2mqtt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page