chenjintao
0542aadaa4
feat(ota): defer updates when battery is low
2026-08-20 17:26:11 +08:00
chenjintao
8d3d66c45f
fix(control-plane): finalize ptt lifecycle on errors
2026-08-20 12:02:17 +08:00
chenjintao
e6ef4e7758
fix(multimodal): recover cloud draw pending state
2026-08-20 11:30:52 +08:00
chenjintao
045a803362
feat(control-plane): show listening ui for ptt button
2026-08-20 11:02:38 +08:00
chenjintao
93f346a897
fix(platform): initialize gpio isr service once
2026-08-20 10:32:12 +08:00
chenjintao
f5b4bd8110
build: add versioned firmware artifact
2026-08-19 10:32:31 +08:00
chenjintao
22a409973e
feat(control-plane): add configurable Wi-Fi reset button
2026-08-18 16:00:10 +08:00
chenjintao
96f5e535d3
feat(ui): add weather and lucky color commands
2026-08-18 14:59:07 +08:00
chenjintao
e0dbcdd273
feat(input): play sound for muyu strike
2026-08-18 14:17:02 +08:00
chenjintao
d386de2320
fix(multimodal): prepare session for cloud fortune draw
2026-08-18 13:52:07 +08:00
chenjintao
5070547b4d
feat(ota): show update expression during firmware install
2026-08-18 12:08:48 +08:00
chenjintao
8f8254b397
feat(power): add battery monitoring and status overlays
2026-08-18 11:53:14 +08:00
chenjintao
609fe978f1
fix(multimodal): protect voice startup from background uploads
2026-08-14 18:23:46 +08:00
chenjintao
451d989e78
fix(ota): stabilize periodic checks and HTTPS downloads
2026-08-14 18:23:37 +08:00
chenjintao
5a18036ec6
feat(ota): add authenticated firmware update workflow
...
- report firmware versions at startup and every six hours with a fresh device JWT
- support optional HMAC headers and retry once after authorization rejection
- handle forced and confirmed updates through managed OTA state
- stream images to the inactive partition and verify size, SHA-256, and format
- coordinate OTA HTTPS activity with voice teardown and restoration
- confirm pending images and expose configuration, status, and integration docs
2026-08-14 15:25:34 +08:00
chenjintao
0cfb10252c
fix(multimodal): harden playback and client lifecycle handling
...
- retry the server connection prompt after transient playback failures
- serialize multimodal client and session start-stop operations
- tag downstream responses to ignore stale packets and playback events
- complete bounded teardown and clean callbacks after partial startup
2026-08-14 15:24:29 +08:00
chenjintao
c56c65462e
perf(memory): reduce internal RAM pressure across network services
...
- allocate remote log queues and upload buffers from PSRAM
- move mbedTLS and NimBLE dynamic allocations to external memory
- right-size Wi-Fi state, task monitor, and audio worker stacks
- limit retained remote log files to 12
2026-08-14 10:08:54 +08:00
chenjintao
841fe32c49
feat(provisioning): add mini-program BLE Wi-Fi setup
2026-08-13 15:44:18 +08:00
chenjintao
5711c26a9a
fix(network): recover stale Wi-Fi after first HTTPS failure
2026-08-13 09:36:44 +08:00
chenjintao
f3da3bfa93
fix(multimodal): release local responding worker correctly
2026-08-13 09:36:44 +08:00
chenjintao
f610ee3c55
fix(tls): disable unsafe renegotiation path
2026-08-13 09:36:44 +08:00
chenjintao
1c32d9f0e7
feat(runtime): add diagnostic and network recovery controls
2026-08-12 16:32:40 +08:00
chenjintao
a94df9545d
fix(multimodal): recover stalled downstream sessions
2026-08-12 16:32:25 +08:00
chenjintao
4e7fadde56
fix(multimodal): keep local responding worker persistent
2026-08-12 16:07:30 +08:00
chenjintao
273550b28b
fix(multimodal): reconnect websocket with fresh auth
2026-08-12 10:30:47 +08:00
chenjintao
7a4699ea68
feat(voice): gate local wake prompt on network readiness
2026-08-12 09:47:55 +08:00
chenjintao
004400fee7
fix(lcd): tune asset playback durations
2026-08-11 16:58:27 +08:00
chenjintao
83432d34a3
feat(platform): add temporary spin placeholder asset
2026-08-11 16:40:17 +08:00
chenjintao
e5d60ca44b
fix(platform): run LCD preheat on render task
2026-08-11 16:29:27 +08:00
chenjintao
0f47e6b585
fix(platform): register wealth direction LCD assets
2026-08-11 16:12:39 +08:00
chenjintao
3ce9b38098
fix(multimodal): stabilize downstream audio playback
...
- add configurable prebuffer and adaptive rebuffer for packet jitter
- mute stalled output, auto-clear I2S DMA, and abort inactive playback after 3 seconds
- discard stale-generation packets and add optional downstream diagnostics
2026-08-11 15:25:26 +08:00
chenjintao
b60a0373ba
fix(control_plane): serialize wake prompt after barge-in
2026-08-10 18:11:42 +08:00
chenjintao
e48eb2d480
fix(control_plane): restore uplink after barge-in
2026-08-10 17:55:51 +08:00
chenjintao
617255bdab
feat(voice): add local wake response prompt
...
Enable the packaged wake response prompt by default and add the MP3-to-device-Opus conversion utility.
2026-08-10 17:40:12 +08:00
chenjintao
e5c1564130
feat(voice): add on-device Miao Zhang Gui wake word
...
Add an optional local wake response prompt configuration. The prompt asset is intentionally not included yet.
2026-08-10 16:54:42 +08:00
chenjintao
d9660164a6
feat(platform): migrate LCD assets to PNG and expand flash partitions
2026-08-10 16:04:23 +08:00
chenjintao
42187ba21d
feat(control-plane): trigger cloud draw from SW2 button
2026-08-10 13:53:34 +08:00