713cd6e9a15eed4d217436831e89333a4bab049f
led-tool
CLI helpers for MicroPython LED devices: settings.json download/upload via mpremote, resets, follow/tail, recursive uploads, optional firmware flash, and led-driver-oriented flags (presets, transport, Wi-Fi fields).
Connection is always via -p / --port (default /dev/ttyACM0). There is no separate “server IP” flag; the Pi or PC address is configured on the device in settings.json when using Wi-Fi mode.
Common flags
| Flag | Purpose |
|---|---|
-p, --port |
Serial device (default /dev/ttyACM0) |
-s, --show |
Print current settings from the device |
-n, --name |
Device name |
--id |
Numeric device id (ESP-NOW, 0–255) |
--pin |
LED GPIO (led_pin) |
-b, --brightness |
Brightness 0–255 |
-l, --leds |
LED count (num_leds) |
-d, --debug |
Debug 0 or 1 |
-o, --order |
LED colour order (rgb, grb, …) |
--preset / --pattern |
Create or replace a named preset in led-driver presets.json |
--default |
Startup preset name |
--transport |
espnow or wifi (transport_type on device) |
--ssid, --wifi-password, --wifi-channel |
Wi-Fi / channel fields for the driver |
-r, --reset |
Reset the device |
-f, --follow |
Follow serial output (optional timeout seconds) |
--pause |
Sleep N seconds (for chained actions) |
-u, --upload |
Recursive upload: -u SRC [DEST] |
--src, --lib |
Upload src/ or a tree to /lib |
-e |
Erase device code (keeps settings.json) |
--rm |
Remove a path on the device |
--flash |
Flash a firmware binary (uses esptool on the host) |
Default behaviour: the tool always downloads settings.json, prints the merged view, and uploads again only when you pass setting edits (--name, --leds, …), --preset, or the relevant upload/flash/erase actions in order.
Run python cli.py -h for the full epilog and argument list.
License
See LICENSE in this directory.
Languages
Python
99.2%
Shell
0.8%