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.1.tar.gz (28.1 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.1-py3-none-any.whl (31.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyvlcb-0.2.1.tar.gz
  • Upload date:
  • Size: 28.1 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.1.tar.gz
Algorithm Hash digest
SHA256 fd687a684a4bfadcb19558c0d209bf828ff103bb77d28129e3543a408c277e67
MD5 a9172ec744e1333e312ca5f1eab91501
BLAKE2b-256 8b6d97c70b824a85e4ff6011dfaf284cde7c81fa76543bad8a0867258e7e406a

See more details on using hashes here.

Provenance

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

Publisher: publish.yml on penguintutor/pyvlcb

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

File details

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

File metadata

  • Download URL: pyvlcb-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 31.1 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 751927606d7ce268a8f62a75223fa796686a726e2767ccb06cb8d4d8f55d35cc
MD5 850c584c0e8a87c1e1278ecc9281190d
BLAKE2b-256 ae18eecd31d3d3e94fe9f2d2a2ac7387c67282586c79a3fe5ec6897594d77883

See more details on using hashes here.

Provenance

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

Publisher: publish.yml on penguintutor/pyvlcb

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