Python Library for the Velbus protocol
Project description
This library contains an easy-to-use binding for the Velbus protocol. Currently, all messages of the VMB4RYLD and VMB6IN modules are supported since these are the only two modules I have.
- Layout of the velbus library is as follows:
The connections dir contains two type of connections that can be the source of velbus messages. These are currently the velbus USB controller and a Netstring connection (more on that later)
The messages dir contains all supported message types
Dependencies for this library are the simpjeson package (http://simplejson.readthedocs.org/en/latest/) and twisted (http://www.twistedmatrix.com). Install these first.
Install this package is as simple as executing ‘python setup.py install’ on the command-line.
I have included three example scripts that use this library (see examples dir)
SCRIPT 1: forwarder.py
The forwarder script captures all Velbus packets from the physical bus through the USB controller and forwards them using a Netstring protocol (see http://cr.yp.to/proto/netstrings.txt for more information on this protocol).
You can use the velbus.connections.netstring module to capture the packets on another computer and continue processing. I use this to forward packets to Google App Engine where the processing of my home automation system occurs.
What you need to be aware of: * The forwarder listens on port 8007 (see file forwarder.py in the src/velbus directory to change this) * To change the device name of your usb controller, see file src/velbus/connections/usb/usb.py and change DEVICE_NAME
SCRIPT 2: switchconfig.py
I have regular pre-home automation switches but want to emulate the behavior of push button switches because my lights are also controlled by other means than switches (for example: the web interface).
To achieve this without buying new switches, I developed the src/velbusconfig python package.
This package reads a file on startup (currently /etc/velbus_switch_config, see src/velbusconfig/switch_config_reader.py to change this) and uses this to link regular switches to relays.
SCRIPT 3: combination.py
Different ‘services’ like the forwarder and switchconfig script can easily be combined because the library uses a publish-subscribe mechanism internally. See combination.py on how the two previous scripts are combined.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for python_velbus-2.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6da26ad1b07c6675169e427cf3e5a5d97e781af5d905d6745b682a13b5c5e5f9 |
|
MD5 | ce26388cb0a02b7fcf950986defbe173 |
|
BLAKE2b-256 | e1dfe61e8e41729b99a33ff8635cb8a4df4e83918f7c4f5f8ef04e6c7d98159c |