Files
trail-mate/docs/project/project-overview.md
T

5.6 KiB
Raw Blame History

Trail Mate 项目概要

  • 项目版本:0.1.30-alpha
  • Git34aad0bffa2f / main / dirty
  • 更新于:2026-06-25T09:10:47.794Z
  • 知识状态:CANDIDATE;当前概要来自项目文档与仓库证据,尚未提升为 CONFIRMED 项目记忆。

项目定位

低功耗离线优先的户外手持导航与通信设备,基于 ESP32 硬件,支持 LoRa 文本聊天、离线地图、SSTV 接收等功能,兼容 Meshtastic 及 MeshCore 网络。

Trail Mate 专为无蜂窝网络覆盖的户外场景设计,提供独立于智能手机的简单自定位与直接 LoRa 文本通信能力,强调稳定、高效与互操作性。

项目聚焦于两个核心需求:固定北向上的离线 GPS 地图显示,以及无需手机即可在 Meshtastic 或 MeshCore 网络中发送自由格式消息的 LoRa 聊天。

设计哲学追求不确定性诚实呈现、确定性系统行为和长期可靠性,适合资源受限的真实户外环境,而非替代智能手机。

当前状态

Alpha 开发中high

项目处于活跃开发阶段,最新发布版本为 0.1.30-alpha2026-06-24),功能持续增加且 API 可能变动,尚未达到 1.0 稳定版。

状态证据

  • CHANGELOG.md#[0.1.30-alpha]
  • README.md#概述与设计哲学

关键能力

离线 GPS 地图

固定北向的离线地图渲染,支持 OSM、地形、卫星三种底图及等高线叠加,具备实时位置标记与面包屑轨迹。

证据

  • README.md#GPS Map

LoRa 文本聊天

基于 LoRa 的短消息通信,兼容 Meshtastic 和 MeshCore 协议,支持中文文本,无需中央基础设施。

证据

  • README.md#LoRa Chat

SSTV 图像接收

接收慢扫描电视信号并在设备上解码为图像,适合低功耗嵌入式环境。

证据

  • README.md#SSTV Receiver

团队模式与位置共享

通过 ESP-NOW 近距离配对,交换团队密钥后在 LoRa 上实现成员列表、位置共享和团队聊天。

证据

  • README.md#Team Mode

轨迹录制与路线跟随

支持轨迹录制、存储、浏览,以及 KML 路线叠加和 GPX 导出。

证据

  • README.md#Track Recording & Route Following

Walkie Talkie 语音对讲

基于 FSK 和 Codec2 的半双工语音通信,按压说话释放接听。

证据

  • README.md#Walkie Talkie

Sub-GHz 能量扫描

实时显示 Sub-GHz 频段占用情况,提供信道推荐以辅助现场规划。

证据

  • README.md#Energy Sweep

GNSS 天空图

实时绘制可见卫星方位角与仰角,显示 SNR 及定位状态。

证据

  • README.md#GNSS Sky Plot

工程入口

  • PlatformIO 构建配置platformio.ini(推测)。管理多个 ESP32 设备构建目标,如 tlora_pager_sx1262、tdeck、techo_lite 等。
  • 固件源码src/。包含 Trail Mate 主逻辑、协议适配、UI 等核心代码。
  • 项目文档与资源:docs/。存放项目图片、图表等说明材料。

设计与架构入口

  • 暂无明确入口。

当前进度

  • T-LoRa-Pager 固件(done):当前主要验证设备,支持全部核心功能。
    • 证据:README.md#设备支持表
  • T-Deck 固件(done):键盘和聊天功能已适配,是第二个主要验证平台。
    • 证据:README.md#设备支持表
  • LoRa 聊天(Meshtastic/MeshCore(done):文本消息、联系人列表、位置分享等功能已实现,兼容两个主流协议。
    • 证据:README.md#LoRa Chat
    • 证据:CHANGELOG.md#0.1.30-alpha
  • 离线地图基础功能(done):OSM、地形、卫星底图及等高线叠加可用,缩放和层切换正常。
    • 证据:README.md#GPS Map
  • nRF52 类设备初步支持in_progress):已添加 MeshCore 发现入口和基本 UI 适配,但完整功能(如聊天、地图)尚在开发。
    • 证据:CHANGELOG.md#0.1.30-alpha
    • 证据:README.md#Planned Supported Devices
  • 多语言与本地化in_progress):中文、西里尔文等扩展语言包已引入,但覆盖面和输入法支持仍需完善。
    • 证据:CHANGELOG.md#0.1.30-alpha

风险与缺口

缺乏高层面架构文档

尚未发现独立的系统架构或设计文档,可能增加新贡献者的理解成本。

证据

  • 文档目录中缺少 architecture/design 类文档

CHANGELOG 可读性问题

当前 CHANGELOG 文件存在编码损坏,部分条目无法正常解读,影响项目历史追溯。

证据

  • CHANGELOG.md 中的乱码片段

预发布阶段稳定性风险

项目尚未达到 1.0,协议和 API 可能在版本间发生破坏性变更。

证据

  • CHANGELOG.md 声明“breaking changes may occur between minor versions”

低功耗设备兼容性不确定

nRF52 等目标设备的完整功能支持仍在早期阶段,性能和集成落地存在挑战。

证据

  • README.md#Planned Supported Devices
  • CHANGELOG.md#0.1.30-alpha

待确认问题

  • 稳定版 1.0 的计划发布时间是什么?
  • nRF52 及超低功耗设备的完整功能路线图是什么?
  • 是否会提供 SD 卡离线地图切片的预装工具或指南?
  • 目前缺少性能测试与功耗基准数据,何时会补充?

下一步

  • 修复 CHANGELOG 编码问题,确保版本历史清晰可读。
  • 编写项目架构概览文档,帮助贡献者快速了解系统模块与数据流。
  • 推进 nRF52 设备上的 LoRa 聊天、位置共享等核心功能开发。
  • 优化离线地图的用户体验,考虑提供地图切片一键下载或制作工具。
  • 扩大设备兼容性测试,逐步收敛 API,向 1.0 稳定版迈进。

来源文档

  • README.md
  • CHANGELOG.md
  • AGENTS.md