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

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyvlcb-0.2.2.tar.gz
  • Upload date:
  • Size: 28.2 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.2.tar.gz
Algorithm Hash digest
SHA256 cd31ef142757df39505c35aab20e826432aced537c0e8d6ef19e52c54ae5bc07
MD5 3367f16279f7a45e74029cc3c0cf9965
BLAKE2b-256 748c920c926d59bf6b9c189f284ed834f2b9f5912a7b0848729e7e46fc52bd4e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvlcb-0.2.2.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.2-py3-none-any.whl.

File metadata

  • Download URL: pyvlcb-0.2.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 69140c9bce7c46819a14f92afe6772473e73a096f5d20e09a2bf9ba1652ab4be
MD5 f2f4adbfda074b0eb2d6768c876483e2
BLAKE2b-256 58f0f589f8eedd1c7e446e8bf427861196f974a4ac4c9c41880716152a3a8b7c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvlcb-0.2.2-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