https://github.com/ellisdickinson46/bump-bar-processor
A bump bar processor, for hardware testing and execution of commands via plugins
https://github.com/ellisdickinson46/bump-bar-processor
bump-bar integration python serial
Last synced: about 2 months ago
JSON representation
A bump bar processor, for hardware testing and execution of commands via plugins
- Host: GitHub
- URL: https://github.com/ellisdickinson46/bump-bar-processor
- Owner: ellisdickinson46
- Created: 2024-06-30T00:41:04.000Z (11 months ago)
- Default Branch: master
- Last Pushed: 2025-04-03T20:09:40.000Z (2 months ago)
- Last Synced: 2025-04-03T20:23:52.914Z (2 months ago)
- Topics: bump-bar, integration, python, serial
- Language: Python
- Homepage:
- Size: 31.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Bump Bar Processor
A modular Python tool for listening to serial input from Bump Bars
_Tested with: Panasonic JS140MS, TG3 KBA-FP10A_## ๐ฆ Features
- โ Serial port listener with auto-reconnect
- ๐ Plugin-based command execution
- โ๏ธ JSON-based configuration
- ๐งช Hardware test mode
- ๐ Cross-platform serial port detection## ๐ Getting Started
### 1. Install dependencies
```bash
pip install -r requirements.txt
```### 2. Prepare configuration
Example `config.json`:
```json
{
"commands": {
"e1": {
"plugin": "plugins.platform_command",
"kwargs": {
"command": "echo 'Hello from Terminal'"
}
},
"e2": {
"plugin": "plugins.hello_world"
}
},
"connection": {
"baud": 1200,
"port": "/dev/tty.PL2303G-USBtoUART130"
},
"feature_flags": {
"enable_repeat_presses": true,
"enable_auto_reconnect": false
}
}
```---
## ๐ Usage
### List available serial ports
```bash
python main.py list-ports
```### Run with config file
```bash
python main.py run config.json
```### Hardware test mode (manual arguments)
```bash
python main.py hw-test -b 9600 -p COM3 -a -r
```> `-b`: Set Baud Rate (defaults to 1200)
> `-p`: Set Port Name/Path
> `-a`: Enable auto-reconnect
> `-r`: Enable repeat key presses## ๐ Plugin System
Look at [PLUGINS.md](PLUGINS.md) for a list of plugins and example usage.