PyVLCB Python Software Library for VLCB
This is a Python library for VLCB (Versatile Layout Control Bus). It implements the core communication protocols defined by the CBUS® protocol and includes extensions for the newer VLCB specifications.
It is designed for use with the MERG CANUSB4 CBUS adapter and other compatible hardware.
Install
For most systems including a Raspberry Pi then Python is managed using virtual environment.
Setup a virtual environment:
mkdir ~/venv
python3 -m venv ~/venv/pyvlcb --system-site-packages
Activate the virtual environment:
source ~/venv/pyvlcb/bin/activate
Install the latest release:
pip install pyvlcb
Development
The latest source code is available from GitHub. PyVLCB on GitHub.
Installing as a git submodule
To install the library, as a submodule in your own git project repository, then enter your project directory and run:
git submodule add https://github.com/penguintutor/pyvlcb.git lib/pyvlcb
pip install lib/pyvlcb
Note: To use as a submodule, you must create your own git project first and install within the project folder. To update, run git pull and repeat the pip install command.
Library Reference
See the link below for the library reference documentation PyVLCB Library Reference Documentation
Demo examples
Example code is stored within the demo folder available on GitHub. Copy these into your project folder to test the library and connectivity.
- The demos are created for a Raspberry Pi or other Linux computers.
- The USB port is hard-coded as /dev/ttyACM0.
- The Loco ID is hard-coded as 3.
- For other computers or USB ports, edit the Python file and update the port statement.Example code is stored within the demo folder available from GitHub. Copy these into your project folder to test the library and connectivity.
More Details
- Project page: PenguinTutor PyVLCB library page
- Application example: PenguinTutor Pi SignalBox project page
Legal and Trademarks
- CBUS® is a registered trademark of Dr. Michael Bolton.
- This library is an independent implementation based on publicly available protocol documentation and is not officially affiliated with or endorsed by the trademark holder.
- All other trademarks are the property of their respective owners.
Release files for PyVLCB 0.2.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pyvlcb-0.2.8.tar.gz | 28.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyvlcb-0.2.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 60.5 kB
Release files / pyvlcb-0.2.8.tar.gz
| Download URL | pyvlcb-0.2.8.tar.gz |
|---|---|
| Size | 28.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
068d695f3063131687eade5ec49a31554a51a3931217139cdae71d9eaac2d9d8
|
|
BLAKE2b-256 checksum How to use checksums |
2cb77dc879db13f359b1b949f14da474b426f339a5215c250d63264d31b56a06
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pyvlcb-0.2.8-py3-none-any.whl
| Download URL | pyvlcb-0.2.8-py3-none-any.whl |
|---|---|
| Size | 31.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
312d586e205695234da1e6186a25d241e881143d0f681f00b341ab683e52a0fc
|
|
BLAKE2b-256 checksum How to use checksums |
42c30333df88a43b7bcee76dace1dc450ae3acc92ab89e99e17d9480e26c6cde
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|