- gateway: GET /devices registry (per-IP connect count, timestamps, device/fw from new 'hello' protocol event); graceful utterance errors -> error event; uvicorn ws-ping-timeout 120s - firmware: hello on WS connect; static 192.168.86.53 fallback after 15s without DHCP; scan-on-boot removed (kept for diagnostics); ping_interval 8s; fonts regenerated --no-compress (compressed glyphs render blank with LV_USE_FONT_COMPRESSED off); 8MB factory partition; montserrat_28; LVGL lock timeout semantics fixed - docs: sauron endpoint plan, power ladder, versioning policy Known issue: 'Outside' AP association succeeds but no L2 traffic flows (no DHCP, no ARP) — worked once at 22:05 then never again; ToJ side verified clean. Investigation ongoing. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
14 lines
489 B
Docker
14 lines
489 B
Docker
FROM python:3.13-slim
|
|
|
|
WORKDIR /app
|
|
|
|
COPY pyproject.toml ./
|
|
COPY src ./src
|
|
# slim by design: STT/TTS models live in the Speaches container, not this image.
|
|
# For the embedded fallback backend build with ".[speech]" instead.
|
|
RUN pip install --no-cache-dir .
|
|
|
|
EXPOSE 8600
|
|
# generous ws ping timeout: the device stays quiet during 10-25s Tatlock turns
|
|
CMD ["uvicorn", "desklock_gateway.main:app", "--host", "0.0.0.0", "--port", "8600", "--ws-ping-interval", "25", "--ws-ping-timeout", "120"]
|