Skip to main content

python-velbus: A python library to control the Velbus home automation system

:warning: WARNING
This Library was used as the backend for home-assistant, but it has been replaced with the velbus-aio library.

This library was created to support the Velbus protocol in my home automation efforts.

The latest version of the library is published as a python package on pypi

I would like to extend this module to support all Velbus modules, so feel free to submit pull requests or log issues through github for functionality you like to have included.

API documentation is available here

Port format

There are 3 possible port formats:

  • /dev/ttyACME0 = A direct connection to a serial device (for vmbusb for example)
  • ip:port = A connection to a TCP/IP port
  • tls://signum ip:27015 = A connection to a signum ip

Installation

You can install the library with pip (pip install python-velbus) or by checking out the github repository and running python setup.py install at the root of the repository.

Supported modules

The following Velbus modules are currently supported by this library:

Module name Description Comments
VMB1BL 1 channel blind module All messages are supported
VMB1BLS 1 channel blind module All messages are supported
VMB1LED 1 channel LED dimmer module All messages are supported
VMB1RS Serial interface All messages are supported
VMB1RY 1 channel relay module All messages are supported
VMB1RYS 1 channel relay module All messages are supported
VMB1RYNO 1 channel relay module All messages are supported
VMB1RYNOS 1 channel relay module All messages are supported
VMB1TS 1 channel temperatue sensor Temperature supported
VMB1USB USB configuration module All messages are supported
VMB2BL 2 channel blind module All messages are supported
VMB2BLE 2 channel blind module All messages are supported
VMB2PBN 2 channel input module All messages are supported
VMB4DC 4 channel 0-10 dimmer module All messages are supported
VMB4RY 4 channel relay module All messages are supported
VMB4RYLD 4 channel relay module All messages are supported
VMB4RYNO 4 channel relay module All messages are supported
VMB6IN 6 channel input module All messages are supported
VMB6PBN 6 channel input module All messages are supported
VMB7IN 7 channel input module All messages are supported
VMB8PBU 8 channel input module All messages are supported
VMBDME 1 channel dimmer module All messages are supported
VMBDMI 1 channel dimmer module All messages are supported
VMBDMI-R 1 channel dimmer module All messages are supported
VMBGP1 1 channel glass panel Input and Temperature supported
VMBGP1-2 1 channel glass panel Input and Temperature supported
VMBGP2 2 channel glass panel Input and Temperature supported
VMBGP2-2 2 channel glass panel Input and Temperature supported
VMBGP4 4 channel glass panel Input and Temperature supported
VMBGP4-2 4 channel glass panel Input and Temperature supported
VMBGPO 72 channel glass panel with oled Input and Temperature supported
VMBGPOD 72 channel glass panel with oled and thermostat Input and Temperature supported
VMBMETEO meteo modules Temperature, wind, rain and light sensor supported
VMBRSUSB Configuration module with USB and RS-232 interface All messages are supported
VMBEL1 1 channel glass panel Edge Lit Input and Temperature supported
VMBEL2 2 channel glass panel Edge Lit Input and Temperature supported
VMBEL2 2 channel glass panel Edge Lit Input and Temperature supported
VMBEL4 4 channel glass panel Edge Lit Input and Temperature supported
VMBELO 72 channel glass panel Edge Lit with thermostat and oled screen Input and Temperature supported

Adding support for other modules

The velbus website contains an overview of the different available modules and their protocol documentation. In order to add support for an additional module, read through the protocol documemntation and add support for missing messages (many messages are shared between modules so make sure to check if a message already exists or not)

Steps to add support for an additional module:

  • Look up the protocol documentation of the module you want to include at the velbus website: Select the module, go to Downloads and search for the info sheet with protocol information.
  • Go through the messages directory and look for messages in the protocol information sheet that are not yet supported. Create a new file in the messages folder for each unsupported message. Every new message should inherit from the Message object and reuse common functionality.
  • Implement constructor method for each new message
  • Implement the populate and data_to_binary methods for each new message
  • If the message has other than low priority or no RTR set (which are defaults), then re-implement set_defaults method
  • Add new messages to the init.py file in the messages folder
  • Test and iterate
  • Update the Supported modules section of the README.md file
  • Submit a pull request on Github

Further development

The library currently offers only the lowest level of functionality: sending and receiving messages to modules. I plan to extend this library with more higher-level functionality such as:

  • Modeling modules and their supported functions as entities
  • Only allowing to send supported messages to modules
  • Auto-discovery of modules
  • Exposing the velbus controller as an external API so it can be shared between different consumers

Metadata

Release files for python-velbus 2.1.14

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for python-velbus 2.1.14
File Size Uploaded
python-velbus-2.1.14.tar.gz 34.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for python-velbus 2.1.14
File Interpreter ABI Platform
python_velbus-2.1.14-py3-none-any.whl Python 3 none any Details

Total release size: 114.6 kB

Release files / python-velbus-2.1.14.tar.gz

Download URL python-velbus-2.1.14.tar.gz
Size 34.1 kB
Tags Source
SHA-256 checksum
How to use checksums
dde0df5cf30ed7aed023fba62c18e51d3055ebb5d0f106248381337eb453c3a3
BLAKE2b-256 checksum
How to use checksums
c528382d433677a0e24f3b9cfc022d9a27bc1dd1df2feaa2788bc352e834e0ae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.4.2 requests/2.31.0 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.2

Release files / python_velbus-2.1.14-py3-none-any.whl

Download URL python_velbus-2.1.14-py3-none-any.whl
Size 80.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e8b79981881bd869ef178a099be25143d19b552f2ecd3a07b396ac44c2ba0533
BLAKE2b-256 checksum
How to use checksums
09dcc567e1953c848b2d906e22b82804b50cbc76bbd2a33261e1704f7733e9a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.4.2 requests/2.31.0 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.2

Release history Release notifications | RSS feed

This release

2.1.14 This release

2 release files

2.1.13

2 release files

2.1.9

2 release files

2.1.8

2 release files

2.1.7

2 release files

2.1.6

2 release files

2.1.5

2 release files

2.1.4

2 release files

2.1.3

2 release files

2.1.2

2 release files

2.1.1

2 release files

2.1.0

2 release files

2.0.47

2 release files

2.0.46

2 release files

2.0.45

2 release files

2.0.44

2 release files

2.0.43

2 release files

2.0.41

2 release files

2.0.37

2 release files

2.0.36

2 release files

2.0.32

2 release files

2.0.31

2 release files

2.0.30

2 release files

2.0.28

2 release files

2.0.27

2 release files

2.0.26

2 release files

2.0.25

2 release files

2.0.23

2 release files

2.0.22

2 release files

2.0.20

2 release files

2.0.19

2 release files

2.0.18

2 release files

2.0.17

2 release files

2.0.16

2 release files

2.0.9

2 release files

2.0.8

2 release files

2.0.7

2 release files

2.0.6

1 release file

2.0.5

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

1 release file

2.0.1

1 release file

2.0.0

2 release files

1.0

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page