docs: WiFi role swap + hotspot settings feature (FEAT-11)
- PLAN.md: Hardware section + Architecture #2/#5 updated for wlan1=AP(5GHz), wlan0=uplink - FEATURES.md: FEAT-11 SHIPPED (hotspot SSID/password UI + 5GHz role swap) - readme.md: hardware table + hotspot feature line updated - deploy/readme.md: profile names/bands updated (home-wifi on wlan0, Hotspot-local 5GHz on wlan1)
This commit is contained in:
+36
-12
@@ -18,18 +18,19 @@ dedicated PLAN.md phase (or fold it into the relevant existing work) and mark it
|
||||
|
||||
## Summary
|
||||
|
||||
| ID | Status | Created | Title | Phase |
|
||||
|----|--------|---------|-------|-------|
|
||||
| FEAT-01 | `IDEA` | 2026-08-10 | Parallel/concurrent chunked dashcam uploads | Phase 27 |
|
||||
| FEAT-02 | `IDEA` | 2026-08-10 | QR / claim-code device pairing flow | Phase 27 |
|
||||
| FEAT-03 | `SHIPPED` | 2026-08-10 | Manual start odometer fallback | Phase 27 |
|
||||
| FEAT-04 | `IDEA` | 2026-08-11 | Replace SIM868 2G with 4G LTE modem | Phase 27 |
|
||||
| FEAT-05 | `SHIPPED` | 2026-08-11 | DTC history synced to remote server | Phase 27 |
|
||||
| FEAT-06 | `SHIPPED` | 2026-08-11 | Trip ID column in history table | Phase 26 |
|
||||
| FEAT-07 | `SHIPPED` | 2026-08-11 | Phone-hotspot auto-connect docs | Phase 22 |
|
||||
| FEAT-08 | `SHIPPED` | 2026-08-11 | Predictable IP on phone hotspot | Phase 22 |
|
||||
| FEAT-09 | `WONTFIX` | 2026-08-11 | mDNS (yaris.local) on phone hotspot | — |
|
||||
| FEAT-10 | `IDEA` | 2026-08-12 | Home Assistant integration | unassigned |
|
||||
| ID | Status | Title | Phase |
|
||||
|----|--------|-------|-------|
|
||||
| FEAT-01 | `IDEA` | Parallel/concurrent chunked dashcam uploads | Phase 27 |
|
||||
| FEAT-02 | `IDEA` | QR / claim-code device pairing flow | Phase 27 |
|
||||
| FEAT-03 | `SHIPPED` | Manual start odometer fallback | Phase 27 |
|
||||
| FEAT-04 | `IDEA` | Replace SIM868 2G with 4G LTE modem | Phase 27 |
|
||||
| FEAT-05 | `SHIPPED` | DTC history synced to remote server | Phase 27 |
|
||||
| FEAT-06 | `SHIPPED` | Trip ID column in history table | Phase 26 |
|
||||
| FEAT-07 | `SHIPPED` | Phone-hotspot auto-connect docs | Phase 22 |
|
||||
| FEAT-08 | `SHIPPED` | Predictable IP on phone hotspot | Phase 22 |
|
||||
| FEAT-09 | `WONTFIX` | mDNS (yaris.local) on phone hotspot | — |
|
||||
| FEAT-10 | `IDEA` | Home Assistant integration | unassigned |
|
||||
| FEAT-11 | `SHIPPED` | Hotspot SSID/password settings + 5GHz WiFi role swap | Phase 27 |
|
||||
|
||||
---
|
||||
|
||||
@@ -184,3 +185,26 @@ dedicated PLAN.md phase (or fold it into the relevant existing work) and mark it
|
||||
app.py startup unless the user explicitly configures it.
|
||||
|
||||
|
||||
### FEAT-11 — Hotspot SSID/password settings + 5GHz WiFi role swap
|
||||
- **Status**: `SHIPPED` 2026-08-12
|
||||
- **Area**: `app.py`, `templates/settings.html`, `static/js/settings.js`,
|
||||
`deploy/yaris-hotspot.sudoers`, `deploy/yaris_uplink.py`, `deploy/install_netwatch.sh`,
|
||||
`modules/app_network.py`
|
||||
- **Phase**: Phase 27
|
||||
- **What**: Two related changes:
|
||||
1. **Hotspot settings UI** — the Pi Settings page "In-car access" card now has SSID +
|
||||
password fields (password write-only). `GET /api/hotspot` reads the current SSID via
|
||||
nmcli; `POST /api/hotspot` updates SSID/password and restarts the AP immediately.
|
||||
Backed by `deploy/yaris-hotspot.sudoers` (privileged nmcli on the `Hotspot-local`
|
||||
profile).
|
||||
2. **WiFi role swap** — the fast TP-Link T3U (wlan1) now hosts the in-car AP on **5GHz**
|
||||
("vroom vroom yaris de course" at 10.42.0.1) for fast phone access (Android dev, video
|
||||
browsing); the weak onboard BCM43438 (wlan0) carries the internet uplink (home WiFi
|
||||
"BuzzBis" + phone hotspot, static IP 192.168.50.220). This was done because the AP on
|
||||
the onboard radio was too slow for interactive Android work. Tradeoff: away-from-home
|
||||
uploads now run over the weak radio (accepted — background task). A single radio cannot
|
||||
be AP + client at once, so the phone-hotspot uplink must stay on wlan0.
|
||||
- **Files**: `yaris_uplink.py` (PRIMARY=wlan0, AP_INTERFACE=wlan1, AP_CONNECTION=Hotspot-local),
|
||||
`app_network.py` (uplink on wlan0, AP on wlan1), `install_netwatch.sh` (rebinds profiles).
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user