This project allows you to control and monitor Quartiq Booster devices using the MQTT protocol. It enables channel control, telemetry reading, and configuration saving across multiple brokers.
boosterCtrlLib/
│
├── booster_quartiq.py # Core MQTT/Miniconf interface for booster control
│
examples/
├── demo_channel_control.py # Example: control a single booster
├── demo_telemetry.py # Example: read telemetry from given channel
├── demo_multiple_boosters.py # Example: control multiple boosters connected to one broker
├── demo_multiple_brokers.py # Example: control multiple boosters connected to different brokers
├── demo_check_and_reset_interlocks # Example: check telemetry data for tripped interlocks and reset them
│
Windows/
├── dfu-util/ # Dfu-util pack needed for firmware update using Windows OS
Linux/
├── mosquitto/ # files needed to setup mosquitto using Linux OS
requirements.txt # Python dependencies
README.md # This file
main.py # Main file with one channel control and telemetry reading
Mosquitto broker has to be setup and running in order to use this software.
It is recommended to use python version 3.8+.
Install Python packages:
pip3 install -r requirements.txt
miniconf-mqttis installed directly from Quartiq's GitHub repository.
python3 main.pyEach script under the examples/ directory demonstrates different features:
python3 examples/demo_channel_control.pypython3 examples/demo_telemetry.pypython3 examples/demo_multiple_boosters.py python3 examples/demo_multiple_brokers.py- Broker IP addresses and booster MAC addresses are hardcoded in each script.
- To add or change boosters/brokers, edit the appropriate section in
demo_*.pyfiles.