39 lines
1.4 KiB
Markdown
39 lines
1.4 KiB
Markdown
**Structure & Task**
|
|
|
|
- **Auto-detects** the port (`/dev/serial/by-id/...`, then `ttyACM0` / `ttyUSB0`)
|
|
- **Sends `log on`** on connect (no manual step)
|
|
- **Adds `wall_time`** (UTC ISO timestamp) as the first column — better than `ms` alone for long runs
|
|
- **`scripts/requirements.txt`** — `pip install -r scripts/requirements.txt`
|
|
- **`scripts/dryer-logger.service`** — optional systemd unit for logging at boot
|
|
|
|
**On the Pi (one-time setup)**
|
|
|
|
```bash
|
|
git clone <your-repo> ~/voron-filament-dryer # or copy the repo over
|
|
cd ~/voron-filament-dryer
|
|
pip install -r scripts/requirements.txt
|
|
sudo usermod -aG dialout $USER # then log out/in
|
|
```
|
|
|
|
**Manual run**
|
|
|
|
```bash
|
|
# Interactive dashboard (set target, presets, fan, CSV logging)
|
|
python3 scripts/capture_csv.py tui
|
|
|
|
# Headless CSV capture only
|
|
python3 scripts/capture_csv.py log
|
|
# logs/dryer_YYYYMMDD_HHMMSS.csv
|
|
```
|
|
|
|
**TUI keys:** `0` idle · `t` target · `p` presets · `f` fan on · `F` fan off · `l` CSV log · `a` autotune · `r` stepresp · `:` command · `q` quit
|
|
|
|
**Always-on logging**
|
|
|
|
```bash
|
|
# Edit User/WorkingDirectory paths in scripts/dryer-logger.service if needed
|
|
sudo cp scripts/dryer-logger.service /etc/systemd/system/
|
|
sudo systemctl enable --now dryer-logger.service
|
|
```
|
|
|
|
No firmware changes needed — the Arduino still streams `csv,...` every 2 s when logging is on. If the Pi and your PC both try to use the same USB cable, only one can hold the serial port at a time. |