diff --git a/README.md b/README.md index 322daa1..bb7c519 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,39 @@ # led-tool -- `-s, --show`: Display current settings from device -- `--no-download`: Don't download settings first (use empty settings) -**Default behavior:** Downloads settings and prints them. If any edit flags are provided, settings are modified and uploaded automatically (unless `--no-upload` is specified). -## Device Connection +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). -The tools use an integrated mpremote transport to communicate with MicroPython devices. Make sure your device is connected and accessible via the specified serial port.## LicenseSee LICENSE file for details. +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.