# Controller load log - 2026-09-14

Loaded from the Mini over the PixLite Mk3 WebSocket API (ws://<ip>/v1.6, admin, no password) using `pxl.js` in this folder.
Usage: `node pxl.js <ip> read|identify [sec]|import <conf>|save|raw '<json>'`. The import strips `dev.user` so no password is set.
Mini needs an alias in the show range to reach the units: `sudo ifconfig en1 alias 192.168.41.6 255.255.255.0` (not persistent across reboot).

| Ctrl | Unit (old name) | MAC | Old IP | New IP | Import | Verified | Saved to flash |
|---|---|---|---|---|---|---|---|
| A | JukeBox RB | E0:B6:F5:E0:D5:96 | 192.168.0.151 | 192.168.41.41 | OK | uni 41/44/47/50, px 369/369/369/568, RGB, sACN, span OFF | YES |
| B | CHK26 DSL PXL8 - The Chicks | E0:B6:F5:E0:D3:DE | 10.0.0.23 -> 192.168.0.23 | 192.168.41.42 | OK (after factory reset, 2nd pass) | uni 54/58/60/62, px 575/307/307/307, RGB, sACN, span OFF | YES |
| C | Chicks 2026 Drum Riser | E0:B6:F5:E0:C2:BC | 10.0.0.26 -> 192.168.0.26 | 192.168.41.43 | OK | uni 64/65/66, px 98/98/98, RGB, sACN, span OFF | YES |
| D | Turntable Jukebox SR | E0:B6:F5:E0:D8:B7 | 192.168.0.150 | 192.168.41.44 | OK | uni 67/68/69, px 100/100/100, RGB, sACN, span OFF | YES |

Test Station (E0:B6:F5:E0:D8:BF) untouched. Pre-import backups of all four in `_Backups-pre-import-20260914/`.

## CTRL B problem
First attempt on B was a two-phase import with the `net` block removed. After that, every config-path request
(configRead, configChange save, export, import response) times out, while /ver, statusRead, constantRead and identify still answer.
Survived a restart and a second full import (which did apply: nickname and 192.168.41.42 took). The unit's own web UI hangs at the
login screen for the same reason. RESOLVED: Kenny approved a factory reset (configChange action reset answered fine, unit came back DHCP at 192.168.0.9 with a healthy config path); full import + save + read-verify then succeeded.
Recovery options: (1) factory reset via `node pxl.js 192.168.41.42 raw '{"req":"configChange","params":{"action":"reset"}}'` then full
import + save; (2) hardware reset button on the unit; (3) Advatek Assistant 3 (installed on the Mini, /Applications) may still manage it.
Then re-verify with `node pxl.js 192.168.41.42 read`. Lesson: never import a .conf with the `net` block stripped on 3.7.1.

# Firmware update + Rev 2 package - 2026-09-15

All four rack boxes updated from the Mini via the WebSocket firmware upload (`node pxl.js <ip> fwupdate _Firmware/PixLite-Mk3-3.15.0.fw`,
157 blocks of 4 KB, unit installs and reboots itself in ~5 s). Configs survived the update untouched.

| Ctrl | IP | Before | After | Config after fw | v1.9 re-import |
|---|---|---|---|---|---|
| A | 192.168.41.41 | 3.7.1 | 3.15.0 | intact, saved | OK, saved |
| B | 192.168.41.42 | 3.7.1 | 3.15.0 | intact, saved | OK, saved |
| C | 192.168.41.43 | 3.9.0 | 3.15.0 | intact, saved | OK, saved |
| D | 192.168.41.44 | 3.7.1 | 3.15.0 | intact, saved | OK, saved |

Management API moved v1.7 -> v1.9 with 3.14.0+. This Rev 2 folder (20260915) holds v1.9 .conf files exported from the live boxes
(password block stripped), CTRL E rebuilt on the same v1.9 template (network identity only). Schema differences vs v1.7: pixPort arrays
are 8 slots (expanded-mode slots 5-8 zeroed), color arrays are 5 channels, new `pix.colIntScale` (all 255 = no scaling).
Package zip published to bea.kg3.io/chance/kit/KG3-26-BEA-Controller-Update-Package-20260915.zip (all crew pages repointed, deployed).
Rev 1 (20260902, v1.7) is superseded; only use it on a box still on firmware < 3.14.0.

CTRL E spare (Sep 15, later): found at 192.168.41.29 (Kenny), MAC E0:B6:F5:E0:D4:23, was fw 3.7.1 with a 4 x 50 px bench config
(backed up to _Backups-pre-import-20260914/192.168.41.29_SPARE_pre-import.json). Updated to 3.15.0, imported 05_CTRL_E_SPARE (v1.9),
saved, verified at 192.168.41.45: nickname "KG3-26-BEA CTRL E SPARE - Beabadoobee 2026", 0 px on all outputs, sACN. Test Station (D8:BF) untouched, still 3.7.1.

| Ctrl | Unit | MAC | IP | Firmware |
|---|---|---|---|---|
| E (spare) | bench unit, no prior name | E0:B6:F5:E0:D4:23 | 192.168.41.45 | 3.15.0 |
