Skip to main content

A library for CBUS / VLCB communication

Project description

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

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.

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

pyvlcb-0.2.8.tar.gz (28.6 kB view details)

Uploaded Source

Built Distribution

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

pyvlcb-0.2.8-py3-none-any.whl (31.9 kB view details)

Uploaded Python 3

File details

Details for the file pyvlcb-0.2.8.tar.gz.

File metadata

  • Download URL: pyvlcb-0.2.8.tar.gz
  • Upload date:
  • Size: 28.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pyvlcb-0.2.8.tar.gz
Algorithm Hash digest
SHA256 068d695f3063131687eade5ec49a31554a51a3931217139cdae71d9eaac2d9d8
MD5 8b1e4ccd9e19813488ead226aa4c1b77
BLAKE2b-256 2cb77dc879db13f359b1b949f14da474b426f339a5215c250d63264d31b56a06

See more details on using hashes here.

File details

Details for the file pyvlcb-0.2.8-py3-none-any.whl.

File metadata

  • Download URL: pyvlcb-0.2.8-py3-none-any.whl
  • Upload date:
  • Size: 31.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pyvlcb-0.2.8-py3-none-any.whl
Algorithm Hash digest
SHA256 312d586e205695234da1e6186a25d241e881143d0f681f00b341ab683e52a0fc
MD5 6070eab401f1521a63f8e8e9640806e4
BLAKE2b-256 42c30333df88a43b7bcee76dace1dc450ae3acc92ab89e99e17d9480e26c6cde

See more details on using hashes here.

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