Files
trail-mate/docs/team
liu weikai 832a215e4a feat(team-hostlink): add semantic team location flow and HostLink CMD_TX_APP_DATA
This commit closes the PC-to-device app-data send path and wires team location semantics end to end across protocol, service, and UI.

HostLink protocol and runtime:

- Add CMD_TX_APP_DATA (0x15) frame type and CapTxAppData capability bit.

- Implement command parsing for portnum/to/channel/flags/payload and validate payload bounds.

- Add a pending command queue and process commands from AppContext::update() to keep IO task light and avoid direct service execution in the USB thread.

- Route Team app portnums (300..304) to TeamController send paths, including Team mgmt wire decoding and plain/encrypted mgmt selection via flags.

- Preserve generic mesh sendAppData fallback for non-Team app portnums.

- Update hostlink protocol docs with CMD_TX_APP_DATA payload, flags, and Team source mapping/compat notes.

Team service/controller send path:

- Extend TeamController and TeamService send APIs with dest and want_ack parameters for mgmt/chat/position/waypoint/track.

- Add explicit send error mapping for hostlink result reporting and improve last_send_error assignment on encode/encrypt/mesh failures.

UI and data model for semantic location markers:

- Add TeamLocationMarker icon enum helpers and integrate source->icon mapping in UI rendering.

- Update team chat compose Position action to open a marker picker dialog with icon choices and cancel flow.

- Encode selected marker in TeamChatLocation.source, auto-fill label, and send as TEAM_CHAT location payload.

- Extend ChatMessage model with team_location_icon and geo fields so conversation and map can render marker semantics.

- Show semantic icon in team conversation message bubble when location source is a known marker.

- Add GPS map overlay for recent semantic team location markers with member/time labels and lifecycle cleanup.

Assets and docs:

- Add LVGL image assets for AreaCleared/BaseCamp/GoodFind/Rally/SOS markers and source PNGs.

- Update TEAM/HostLink docs with source enum mapping and unknown-value fallback guidance for PC clients.

Other platform-specific input adjustment:

- Refine T-Deck LVGL encoder data reset path to avoid stale state interactions in the input callback.
2026-02-18 00:41:51 +08:00
..
2026-02-02 03:46:17 +08:00
2026-02-08 20:21:51 +08:00