# Technician tool v0.10 - changes (draft) - New tab **Wi-Fi (USB)**: write the Wi-Fi name and password to the box's SD card over the USB cable, without opening the case (firmware usb_console, `kota wifi set`). Shows each step: command support check, stored, restart in Wi-Fi mode, connected with signal strength (polls `kota health`). Also reads the stored network (`kota wifi get`, password never shown) and removes it (`kota wifi clear`, back to Matter). - The password is sent hex-encoded, never written to the session log or the service report. - Diagnosis: restarts `usb_wifi_set` / `usb_wifi_clear` are intentional (no "unexpected restart"); box self-report shows the stored Wi-Fi network; `cmd health` replies update the health line. - firmware/: `merged-binary-v13.bin` (usb_console, build 3ae273ec) replaces `merged-binary.bin` (build 4f10989e, still in git tag v0.9). Note: v13 reports the same version 1.0.16 and compile date as the previous build; the firmware team should bump the version for the next build. - error_ids.csv updated from the firmware (E-CON-01). - Test that builds the main window (catches start-up errors). - New check **Sensor data in the database (InfluxDB)** (Guided troubleshooting; also the last step of the Quick check on the green path): queries InfluxDB online (read-only) for the box's newest points and tells apart "sensor data arrives", "status arrives but sensor data does not", "offline now" and "never seen". Polls every 30 s for up to 4 minutes. With a stopped RTC in the log it concludes that the sensor readings are lost (they are stamped 1 Jan 2000) - found on box A4:CB:8F:C9:47:3C, which reported only device_status and microphone. The result and the per-measurement times go into the report and the service note. - Settings > **InfluxDB access...**: address, organisation, bucket and a read token (or the `KOTA_INFLUX_TOKEN` environment variable). Defaults: influx.kota-app.com, org `kota`, bucket `sensorbox`. The token is never written to the session log or the service report. - macOS: Connect no longer restarts the box (pyserial dropped DTR before RTS, passing through the USB-Serial-JTAG reset state). Windows unchanged. - **Serial monitor redesigned.** One green **Test box** button: restarts the box, records the start-up and then checks InfluxDB online (data must be newer than the restart), about 4 minutes. A status strip shows what the test is doing and its result. The test checklist (start-up steps + the new row "Sensor data in InfluxDB (online check)") and the findings are the main view; the live log, guided troubleshooting and box details (LED, firmware, self-report) are tabs on the right. Rarely used actions moved to **More**. - Light colour scheme on every system: with macOS dark mode the status colours were unreadable. Larger log font on macOS. - New finding **Box sends an invalid value (-inf/nan) - InfluxDB rejects all its data**: a silent microphone makes the firmware upload `dbfs=-inf,db=-inf`; InfluxDB then refuses the whole upload (HTTP 400), so neither the status nor the sensor data arrive (box A4:CB:8F:C9:47:3C). The InfluxDB check names it as the cause. - The serial port is opened exclusively on macOS/Linux: a second tool window no longer steals half of the log lines; it reports that the port is in use. - Start-up step "Data uploaded to InfluxDB" renamed "Upload accepted by InfluxDB (box log)" - it comes from the box's own log, the online row checks the database.