Trail Mate

Trail Mate · Releases

from GitHub · updated 2026-06-26

20 releases

  1. v0.1.31-alpha # Pre-release 1 day ago · 2026-06-26 19:05 UTC

    [0.1.31-alpha] - 2026-06-27

    Fixed / 修复

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.30-alpha...v0.1.31-alpha

  2. v0.1.30-alpha # Pre-release 3 days ago · 2026-06-24 14:24 UTC

    [0.1.30-alpha] - 2026-06-24

    Added / 新增

    • Added support for the T-Echo Lite keyboard kit, including the nRF52 build target, e-paper mono UI adaptation, physical keypad input with EN/123/CN modes, T9-style Chinese candidate input, device I/O settings, 10px Fusion Pixel font support, and TrailMate logo sleep page / 新增 T-Echo Lite 键盘套件支持,包括 nRF52 构建目标、电子纸 mono UI 适配、实体键盘 EN/123/CN 输入、九宫格中文候选输入、设备 I/O 设置、10px Fusion Pixel 字库支持,以及 TrailMate logo 息屏页面
    • Added nRF52 MeshCore discover entry points and protocol-aware chat send eligibility, so MC/MT channels and contacts can be browsed across protocol modes while sends stay limited to the active protocol / 新增 nRF52 MeshCore Discover 入口与协议感知的聊天发送资格控制,使 MC/MT 频道和联系人可跨协议查看,但发送仍限制在当前活动协议内
    • Added issue #33 support for firmware-provided Emoji input/display candidates and issue #61 support for firmware-provided Symbol candidates, replacing the earlier extension-pack-only route with built-in candidate sets for constrained devices / 针对 issue #33 新增固件内置 Emoji 输入/显示候选支持,并针对 issue #61 新增固件内置 Symbol 候选支持,用内置候选集替代此前仅依赖扩展包的路线,适配受限设备
    • Added issue #57 Pager-only main-menu keyboard backlight control, including a bottom Help hint and Help-modal shortcut documentation for adjusting keyboard backlight from the Pager main menu / 针对 issue #57 新增仅限 Pager 的主菜单键盘背光控制,包括底部 Help 提示,以及在 Pager 主菜单 Help 弹窗中说明调节键盘背光的快捷键
    • Added the European Cyrillic Extended language bundle with Russian locale coverage, Cyrillic external font coverage, and a Russian Cyrillic keyboard IME; the package remains installable through Extensions with locale, font, and IME metadata in the Pages pack catalog / 新增欧洲西里尔扩展语言包,包含俄语 locale 覆盖、西里尔外部字体覆盖和俄语西里尔键盘输入法;该包仍通过 Extensions 安装,并在 Pages 包目录中保留语言、字体和输入法 metadata
    • Added Walkie monitor mode controls and top-bar modulation/listen indicators, including LoRa/FSK modulation badges and a persistent monitor state surfaced outside the Walkie page / 新增对讲机守听模式控制与顶部栏调制/守听状态指示,包括 LoRa/FSK 调制标记,并在对讲机页面之外展示持续守听状态

    Changed / 变更

    • Moved the protocol runtime closer to the 0.1.30 architecture target by routing MeshCore/Meshtastic UI actions, discover, text send, node actions, position sharing, traceroute/reply handling, and protocol effects through shared runtime/facade boundaries / 按 0.1.30 架构目标继续收敛协议 runtime,将 MeshCore/Meshtastic 的 UI 动作、discover、文本发送、节点动作、位置共享、traceroute/reply 处理和协议 effect 统一路由到共享 runtime/facade 边界
    • Reworked ESP shared SPI and storage ownership around a single SdFat/SdFs runtime, retaining the legacy /chat/index.bin plus /chat/*.log chat layout while removing the new /chat_messages.bin bypass and Arduino SD.h/FS.h storage backend paths / 围绕单一 SdFat/SdFs runtime 重做 ESP shared SPI 与存储所有权,保留旧的 /chat/index.bin + /chat/*.log 聊天布局,同时移除新的 /chat_messages.bin 旁路和 Arduino SD.h/FS.h 存储后端路径
    • Retired the unused T-LoRa Pager NFC runtime, build dependencies, board facts, power path, and shared-SPI CS participation, because NFC has no active product feature and was verified to interfere with reliable high-speed SD startup on the shared SPI bus / 移除未使用的 T-LoRa Pager NFC runtime、构建依赖、板级事实、电源路径和 shared SPI CS 参与;NFC 当前没有 active 产品功能,并经实机验证会干扰 shared SPI 上高速 SD 启动稳定性
    • Refined localization, IME, and language-pack handling for the 0.1.30 UI surface, including external CJK font-pack loading, manual language-load busy overlays, settings/team copy, and keyboard layout descriptor decoupling / 调整 0.1.30 UI 表面的本地化、输入法和语言包处理,包括外部 CJK 字体包加载、语言加载 busy overlay、设置/Team 文案,以及键盘布局描述符解耦
    • Updated Team, Contacts, and Nearby presentation to prefer short names and last-seen age semantics instead of online/offline labels where the protocol does not provide a reliable online state / 更新 Team、Contacts 与 Nearby 展示逻辑,在协议没有可靠在线状态时优先展示短名和 last-seen 时间语义,不再使用误导性的 online/offline 标签
    • Reworked Pager Walkie layout and input focus behavior so monitor controls no longer trap the rotary encoder as a volume-only control / 调整 Pager 对讲机布局和输入焦点行为,使守听控制不再让滚轮被音量控件单独吞掉
    • Updated GitHub Pages release co …
  3. v0.1.29-alpha # Pre-release 17 days ago · 2026-06-11 03:58 UTC

    [0.1.29-alpha] - 2026-06-11

    Added / 新增

    • Added shared ESP32 SD diagnostics for issue #54: Debug Logs now mirror startup/runtime notes to /trailmate/debug/debug.log, and ESP flash coredumps are exported to /trailmate/coredumps/core-*.elf on the next boot after a crash / 针对 issue #54 新增 ESP32 共享 SD 诊断:Debug Logs 会把启动/运行日志镜像到 /trailmate/debug/debug.log,ESP flash coredump 会在崩溃后的下一次启动导出到 /trailmate/coredumps/core-*.elf
    • Added a Cardputer Zero Linux Wayland APPLaunch Debian package route for version 0.1.29-alpha, including private app libdir layout, desktop X-Zero-Display=wayland metadata, Wayland runtime dependencies, icon install rules, CI package build, Docker linux/arm64 package validation, the linux-cardputer-zero-deb preset, and an explicit fbdev/evdev debug fallback binary / 新增 Cardputer Zero Linux Wayland APPLaunch Debian 打包路径,版本为 0.1.29-alpha,包括私有 app libdir 布局、桌面 X-Zero-Display=wayland 元数据、Wayland runtime 依赖、图标安装规则、CI 打包构建、Docker linux/arm64 包验证、linux-cardputer-zero-deb preset,以及显式 fbdev/evdev 调试后备可执行文件

    Changed / 变更

    • Added M5Stack to the project acknowledgements for the Cardputer Zero hardware support that helped validate the Linux portable-device adaptation path / 在项目致谢中补充 M5Stack,感谢其为 Cardputer Zero 环境适配提供硬件支持,帮助验证 Linux 便携设备适配路径
    • Verified issue #53 against the current Team persistence path: Team membership remains persisted across reboot/crash recovery unless the user explicitly leaves or clears the team / 针对 issue #53 验证当前 Team 持久化路径:除非用户明确离开或清除队伍,重启/崩溃恢复不会清空队伍成员状态

    What's Changed

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.28-alpha...v0.1.29-alpha

  4. v0.1.28-alpha # Pre-release 26 days ago · 2026-06-02 02:11 UTC

    [0.1.28-alpha] - 2026-06-02

    Changed / 变更

    • Updated GitHub Pages and release audit material for the #43-#51 repair pass, keeping release assets generated by the Pages/Release workflows instead of hand-editing download metadata / 更新 GitHub Pages 和发布审计,记录 #43-#51 修复轮次;下载资产仍由 Release/Pages workflow 生成,不手工改 metadata
    • Clarified the Web Flasher interface for the two T-LoRa Pager hardware variants so SX1262 and LR1121 users choose separate release targets and radio-specific install cards / 明确网页刷机界面中的 T-LoRa Pager SX1262 与 LR1121 双版本入口,避免用户把不同 radio 硬件刷成同一个目标

    Fixed / 修复

    • Fixed the MeshCore recovery path for issue #43 by splitting the broad failure into protocol-owned fixes for discovery, public group send, passive advert parsing, send diagnostics, and delivery status propagation; complete multi-channel MeshCore companion management remains outside this bug-fix slice / 针对 issue #43 修复 MeshCore discovery, Public group send, advert, diagnostics, delivery status; multi-channel companion 另行处理
    • Fixed Meshtastic Custom channel configuration for issue #44 so phone-side primary channel rename, short AQ== PSK handling, and manual LoRa settings update Meshtastic state instead of MeshCore aliases / 针对 issue #44 修复 Meshtastic Custom 主频道, AQ== PSK, manual LoRa settings
    • Fixed first-entry Chat and Contacts navigation for issue #46, including reachable Team filters, protocol-labelled MC/MT contact rows, bounded pager list labels, stable timestamps, and MeshCore incoming bubbles that no longer render as Me / 针对 issue #46 修复 Chat/Contacts 首次进入导航, MC/MT 标签, Pager 列表布局, MeshCore 收信显示
    • Fixed the Pager tracker/map SD crash path for issue #47 by serializing tracker SD transactions with the shared SPI lock and recorder mutex, and by correcting the SD-ready timeout conversion / 针对 issue #47 修复 Tracker SD 事务的 shared SPI lock/mutex 保护和 SD-ready timeout
    • Fixed Pager map view persistence for issue #48 so zoom, center, pan, and follow mode survive leaving and re-entering the Map screen / 针对 issue #48 保留 Pager 地图 zoom, 中心, pan, follow mode
    • Fixed MeshCore Discover actions for issue #49 by sending the compatible zero-hop local DISCOVER_REQ, surfacing detailed send failures, restarting and synchronizing shared RX state after direct TX, keeping a scan RX guard window, and deferring adverts that could collide with discover responses / 针对 issue #49 修复 zero-hop DISCOVER_REQ, 详细失败, direct TX 后重启并同步 shared RX state, scan guard, advert 延后
    • Fixed MeshCore public group send for issue #50 by falling back to the MeshCore public PSK when no group channel key is configured, while still reporting malformed configured keys explicitly / 针对 issue #50 未配置 group key 时回退 MeshCore public PSK, 并明确错误 key
    • Fixed MeshCore Nearby naming for issue #51 by parsing signed advert appdata for name, node type, and location, and by giving discover responses stable MC placeholders until real advert or node-info names arrive / 针对 issue #51 解析 signed advert appdata 的 name/type/location, 并提供 MC placeholder

    What's Changed

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.27-alpha...v0.1.28-alpha

  5. v0.1.27-alpha # Pre-release 28 days ago · 2026-05-30 17:34 UTC

    [0.1.27-alpha] - 2026-05-30

    Added / 新增

    • Added the T-LoRa Pager LR1121 build and release path for issue #40, including the CI build target, web flasher target, RF switch setup, and TCXO bring-up / 针对 issue #40 新增 T-LoRa Pager LR1121 构建与发布路径,包括 CI 构建目标、网页刷机目标、RF switch 配置与 TCXO 启动

    Changed / 变更

    • Updated GitHub Pages device/install metadata so the LR1121 Pager appears as its own release target, while CI continues to validate tlora_pager_lr1121 alongside the existing targets / 更新 GitHub Pages 设备与安装信息,使 LR1121 Pager 作为独立发布目标展示,同时 CI 继续与既有目标一起验证 tlora_pager_lr1121

    Fixed / 修复

    • Fixed Team mode on T-LoRa Pager for issue #35 by finishing the Team runtime refactor and restoring the Team chat receive/send path / 针对 issue #35 完成 Team runtime 重构并恢复 Team 聊天收发路径,修复 T-LoRa Pager 上的 Team 模式
    • Fixed daylight-saving time handling for issue #38 so displayed local time follows DST rules correctly / 针对 issue #38 修复夏令时处理,使本地时间显示正确遵循 DST 规则
    • Fixed spotty T-Deck battery reporting for issue #39 by smoothing the battery estimate path / 针对 issue #39 修复 T-Deck 电量状态不稳定的问题,收敛电量估算路径
    • Fixed 64 GB SD card support for issue #42 by adding SDXC/exFAT-capable storage and routing map, Team, GPS, Settings, contact, node, route, tracker, and SSTV persistence through the shared SD runtime / 针对 issue #42 支持 64 GB SD 卡,新增 SDXC/exFAT 存储能力,并让地图、Team、GPS、Settings、联系人、节点、路线、轨迹与 SSTV 持久化统一走共享 SD runtime

    What's Changed

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.26-alpha...v0.1.27-alpha

  6. v0.1.26-alpha # Pre-release 1 month ago · 2026-05-19 08:28 UTC

    [0.1.26-alpha] - 2026-05-19

    Added / 新增

    • Treated the cross-platform UI/runtime ownership work from this branch as one architecture-refactor feature, consolidating presentation models, UX packs, composition roots, runtime ownership boundaries, legacy-source burn-down guardrails, target metadata, and uConsole/GAT562 build ownership behind the post-refactor product architecture / 将本分支中的跨平台 UI/runtime ownership 工作作为一个架构重构 feature 归档,统一收敛 presentation model、UX pack、composition root、runtime ownership 边界、legacy source 清理护栏、target metadata,以及 uConsole/GAT562 构建所有权
    • Added SD-card-only settings backup and restore under Settings > Advanced for issue #32, covering app/radio/chat/channel/GPS/map/privacy/APRS/UI settings without falling back to internal NVS when no SD card is present / 针对 issue #32 在 Settings > Advanced 中新增仅使用 SD 卡的设置备份与还原,覆盖 app、无线、聊天、频道、GPS、地图、隐私、APRS 与 UI 设置;未插入 SD 卡时不会回退到内部 NVS

    Changed / 变更

    • Chat notification settings for issue #34 are now split into message alert enablement and contact alert scope, so users can separately control whether messages make sound and whether contact discovery alerts are disabled, contacts-only, or all alerts / 针对 issue #34 将 Chat 提醒设置细分为消息提醒开关与联系人提醒范围,使用户可以分别控制消息是否提示,以及联系人发现提示为不提示、仅联系人或全部提示
    • Locale bundles are updated to package version 1.1.1 for the 0.1.26-alpha UI surface, adding localized strings for the new chat alert controls and SD settings backup/restore prompts, status text, and confirmation modal / 语言包随 0.1.26-alpha UI 表面更新到 1.1.1,补齐新的聊天提醒控制,以及 SD 设置备份/还原提示、状态文本和确认弹窗的本地化

    Fixed / 修复

    • Fixed Meshtastic channel sync behavior and added the MeshCore CN preset at 495.200 MHz, including channel response handling that avoids leaving the phone app stuck at 100% while preserving the device-side secondary-channel state / 修复 Meshtastic 频道同步行为并新增 495.200 MHz 的 MeshCore CN 预设,包括频道响应处理,避免手机 app 在 100% 进度处卡住,同时保持设备端 secondary channel 状态一致

    What's Changed

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.24-alpha...v0.1.26-alpha

  7. v0.1.25-alpha # Pre-release 2 months ago · 2026-05-11 17:45 UTC

    [0.1.25-alpha] - 2026-05-11

    Added / 新增

    • Added GPS receiver bring-up controls under Settings, including receiver baud, probe window, receiver profile, RXM/GNSS/NMEA init policy, and a non-blocking diagnostics view that reports transport, traffic, fix, satellite, and polling state / 新增 Settings 中的 GPS 接收机启动控制,包含接收机波特率、探测窗口、接收机 profile、RXM/GNSS/NMEA 初始化策略,以及非阻塞诊断视图,用于报告传输、流量、定位、卫星与轮询状态
    • Added shared GPS diagnostics and receiver-init runtime surfaces across ESP Arduino, ESP-IDF, Linux, and UI bindings so Settings and board runtimes can observe the same GPS health model / 新增跨 ESP Arduino、ESP-IDF、Linux 与 UI 绑定的共享 GPS 诊断和接收机初始化 runtime 表面,使 Settings 与板级运行时能够观察同一套 GPS 健康模型
    • Added Linux uConsole chat workspace smoke coverage and richer node detail views, including nearby-node conversations, radio metadata, position details, and a compact node-centered map preview / 新增 Linux uConsole 聊天工作区 smoke 覆盖与更丰富的节点详情视图,包括附近节点会话、无线元数据、位置详情和以节点为中心的紧凑地图预览
    • Added a repository text-encoding integrity specification to make valid UTF-8 preservation an explicit engineering requirement for source, docs, packaging metadata, and generated text assets / 新增仓库文本编码完整性规格,将保持有效 UTF-8 明确列为源码、文档、打包元数据与生成文本资源的工程要求
    • Added GPS Settings and ordinary T-Deck GPS UART/LoRa TX noise guides under docs/devices/, covering recommended receiver profiles, diagnostics interpretation, self-check procedures, TX-power correlation evidence, and hardware mitigation steps / 新增 docs/devices/ 下的 GPS 设置指南与普通 T-Deck GPS UART/LoRa TX 噪声说明,覆盖推荐接收机 profile、诊断解读、自检流程、TX power 相关证据与硬件缓解步骤

    Changed / 变更

    • T-Deck GPS startup now follows a runtime-owned GPS path: board boot no longer performs early GPS initialization, Auto baud preserves the 0.1.23-compatible 38400 baseline, and manual baud selections still run UART probes for diagnostics / T-Deck GPS 启动现在改为运行时拥有的 GPS 路径:板级 boot 不再提前初始化 GPS,Auto 波特率保持兼容 0.1.23 的 38400 基线,手动波特率仍会执行 UART 探测用于诊断
    • T-Deck default GPS Auto profile now restores the 0.1.23-style active RXM/GNSS/NMEA configuration path, while explicit passive or legacy receiver profiles can still skip those configuration writes / T-Deck 默认 GPS Auto profile 现恢复 0.1.23 风格的主动 RXM/GNSS/NMEA 配置路径,同时显式 passive 或 legacy 接收机 profile 仍可跳过这些配置写入
    • GPS task logging now reports rolling UART traffic, post-config stream recovery, and health summaries without printing raw mutex pointer addresses that confuse PlatformIO's ESP32 exception decoder / GPS task 日志现在报告滚动 UART 流量、配置后数据流恢复与健康摘要,并避免打印会误导 PlatformIO ESP32 exception decoder 的原始 mutex 指针地址
    • uConsole map overlays now expose richer node telemetry, MQTT visibility behavior, selectable node bubbles, last-seen ages, radio stats, altitude, and node-centered snapshots that can be reused by chat node detail panels / uConsole 地图覆盖层现在展示更丰富的节点遥测、MQTT 可见性行为、可选择节点气泡、最后出现时间、无线统计、高度,以及可被聊天节点详情面板复用的节点中心快照

    Fixed / 修复

    • Fixed the T-Deck GPS regression where current builds could report the GPS UART ready but never resume a steady NMEA stream under the default receiver-init policy / 修复 T-Deck GPS 回归:当前构建在默认接收机初始化策略下可能显示 GPS UART ready,但无法恢复稳定 NMEA 数据流
    • Fixed GPS NMEA configuration coverage by enabling GSA alongside GGA/RMC/GSV for the internal receiver stream so skyplot and satellite diagnostics have the sentences they need / 修复 GPS NMEA 配置覆盖,内部接收机数据流现在会与 GGA/RMC/GSV 一起启用 GSA,使星图与卫星诊断获得所需语句
    • Fixed GPS diagnostics blind spots by sampling initial NMEA sentences, capturing raw non-NMEA bytes before a valid stream appears, tracking recent character counts, and surfacing stalled-traffic states in UI diagnostics / 修复 GPS 诊断盲区,通过采样初始 NMEA 语句、在有效数据流出现前捕获原始非 NMEA 字节、跟踪近期字符数,并在 UI 诊断中暴露流量停滞状态
    • Fixed T-Deck GPS noise handling by separating UART read counts from parser progress and filtering non-NMEA bursts before they can be mistaken for valid receiver traffic / 修复 T-Deck GPS 噪声处理,通过区分 UART 读取计数与 parser 进度,并在非 NMEA 突发噪声被误判为有效接收机流量前进行过滤
    • Fixed Linux/uConsole node and map workspace gaps where nearby LoRa nodes, MQTT-hidden counts, packet log context, a …
  8. v0.1.24-alpha # Pre-release 2 months ago · 2026-05-09 06:43 UTC

    [0.1.24-alpha] - 2026-05-09

    Added / 新增

    • Added a formal locale-pack release specification covering package versioning, min_firmware_version, archive layout, catalog generation, review/release gating, rollback behavior, and pre-release validation / 新增语言包发布规格,覆盖包版本、min_firmware_version、分发 archive、catalog 生成、review/release 闸门、回滚行为与发布前校验
    • Added installable Arabic locale-pack assets with Noto Naskh Arabic font generation support and RTL metadata, kept in review status until native-language and input review are complete / 新增可安装阿语语言包资源,包含 Noto Naskh Arabic 字体生成支持与 RTL 元数据,并在母语与输入法审查完成前保持 review 状态
    • Added locale-pack structural validation tooling for key completeness, duplicate keys, empty translations, placeholder consistency, release English fallback detection, dependency checks, and fake IME rejection / 新增语言包结构校验工具,检查 key 完整性、重复 key、空翻译、占位符一致性、release 英文兜底、依赖关系与假 IME

    Changed / 变更

    • Language packs are now versioned as 1.1.0 packages for the 0.1.24-alpha release, with translation_status metadata carried into site/data/packs.json so review packs can be cataloged without being selectable as runtime UI languages / 语言包现以 1.1.0 包随 0.1.24-alpha 发布,并把 translation_status 写入 site/data/packs.json,使 review 包可被 catalog 收录但不会成为运行时可选 UI 语言
    • Simplified Chinese remains the only release locale with the real built-in Pinyin IME; Traditional Chinese (Taiwan), Arabic, Russian, European Latin, Japanese, and Korean packs are cataloged as display-only review bundles / 简体中文仍是唯一带真实内建拼音输入法的 release locale;台湾繁中、阿语、俄语、欧洲拉丁语、日语与韩语包以 display-only review bundle 形式进入目录
    • The GitHub Pages language-pack section now surfaces review/release status and package metadata so users can see language-pack maturity and update availability more clearly / GitHub Pages 语言包区域现在展示 review/release 状态与包元数据,让用户更清楚地看到语言包成熟度与更新可见性
    • Localization and IME specifications now explicitly distinguish locale, region, script, font coverage, release quality, and real input backends, including the rule that Taiwan Traditional Chinese must not default to Pinyin / 本地化与输入法规格现明确区分 locale、地区、脚本、字体覆盖、发布质量与真实输入后端,并写明台湾繁中不得默认使用拼音

    Fixed / 修复

    • Filled missing and English-fallback entries across non-English locale strings.tsv files while keeping non-native-reviewed packages gated as review instead of pretending they are release quality / 补齐非英语语言包中缺失或英文兜底的 strings.tsv 条目,同时将未完成母语审校的包保持在 review 闸门内,避免伪装为 release 质量
    • Removed fake IME manifests and locale ime_pack dependencies for scripts without implemented runtime input engines, preventing Settings from exposing unusable input methods / 移除尚无真实运行时输入引擎的假 IME manifest 与 locale ime_pack 依赖,避免 Settings 暴露不可用输入法
    • Runtime locale discovery now skips non-release translation_status values, preserving English fallback and preventing incomplete review packs from entering the normal language picker / 运行时 locale 发现现在会跳过非 release 的 translation_status,保留英文兜底并防止未完成 review 包进入普通语言选择器

    What's Changed

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.22-alpha...v0.1.24-alpha

  9. v0.1.23-alpha # Pre-release 2 months ago · 2026-04-30 18:58 UTC

    [0.1.23-alpha] - 2026-05-01

    Added / 新增

    • Cardputer Zero and Linux simulator foundations, including shared Linux runtime wiring, shell boot paths, simulator pages, and an adaptation specification for the final device shape / 新增 Cardputer Zero 与 Linux 模拟器基础能力,包括共享 Linux runtime 接线、Shell 启动路径、模拟器页面,以及面向最终设备形态的适配规格
    • An installable Russian locale bundle with a Cyrillic external font pack, package catalog metadata, and attribution for @polarikus' contributed translations / 新增可安装俄语语言包,包含 Cyrillic 外部字体包、包目录元数据,并注明 @polarikus 对俄语翻译的贡献
    • A GPS runtime specification under docs/specs/, defining user enable intent, receiver mode, satellite mask, power policy, internal NMEA, external NMEA export, transport readiness, and observation state as separate concepts / 新增 docs/specs/ 下的 GPS runtime 规格,将用户启用意图、接收机模式、卫星系统选择、电源策略、内部 NMEA、外部 NMEA 导出、传输就绪与观测状态明确拆分

    Changed / 变更

    • GPS configuration semantics are now unified across ESP Arduino, ESP-IDF, Linux, nRF52/GAT562, phone bridge, and UI settings: gps_enabled is the enable flag, while gps_mode, gps_sat_mask, gps_strategy, and external NMEA export keep their own meanings / GPS 配置语义现已在 ESP Arduino、ESP-IDF、Linux、nRF52/GAT562、手机桥接与 UI 设置中统一:gps_enabled 是启用开关,而 gps_modegps_sat_maskgps_strategy 与外部 NMEA 导出各自保持独立含义
    • Board-level GPS startup now treats UART transport readiness separately from UBX receiver probing on T-Deck, T-Deck Pro, and T-LoRa Pager, with each board owning the correct UART teardown path / T-Deck、T-Deck Pro 与 T-LoRa Pager 的板级 GPS 启动现已将 UART 传输就绪与 UBX 接收机探测拆开,并由各板型自己负责正确的 UART 关闭路径
    • The Linux simulator/dev-container path now mounts and exposes the repository root more consistently, making shared runtime work easier to exercise from the Linux shell / Linux 模拟器与 dev-container 路径现更一致地挂载并暴露仓库根目录,使共享 runtime 工作更容易在 Linux Shell 中验证

    Fixed / 修复

    • Fixed the T-Watch S3 release build for watch Morse input by passing board-owned PDM microphone pins through build-time definitions / 修复 T-Watch S3 发布构建中 watch Morse 输入缺少板级 PDM 麦克风 pin 定义导致的编译失败
    • Fixed the GPS no-lock regression where internal receiver NMEA could be disabled by external export/privacy-style settings, leaving maps and skyplot without parsed GPS data even when GPS was enabled / 修复 GPS 无法锁定的回归:内部接收机 NMEA 可能被外部导出或旧 privacy 风格设置关闭,导致即使 GPS 已启用,地图与星图也拿不到可解析数据
    • Fixed startup cases where T-Deck GPS was reported as failed because a short UBX identity probe timed out, preventing the runtime from continuously reading NMEA while the receiver warmed up / 修复 T-Deck 启动阶段因短时间 UBX identity 探测超时而把 GPS 判定失败的问题,使 runtime 能在接收机预热期间持续读取 NMEA
    • Fixed T-Deck display startup and brightness handling, reducing early backlight/display initialization regressions on that board family / 修复 T-Deck 显示启动与亮度处理,降低该板型早期背光与屏幕初始化回归
    • Fixed Energy Sweep sampling so it uses instant RSSI and only owns the LoRa lock while scanning, avoiding stale measurements and unnecessary radio contention outside active sweeps / 修复 Energy Sweep 采样逻辑,改用 instant RSSI,并只在扫描期间持有 LoRa 锁,避免陈旧测量值和非扫描阶段的无线资源争用

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.22-alpha...v0.1.23-alpha

  10. v0.1.22-alpha # Pre-release 2 months ago · 2026-04-22 14:17 UTC

    [0.1.22-alpha] - 2026-04-22

    Added / 新增

    • A shared map viewport component plus UI/UX specs for firmware visual style, Node Info page behavior, and map-layer popup semantics, so map-backed screens now share one explicit contract instead of parallel page-local implementations / 新增共享地图视口组件,以及固件视觉风格、节点详情页行为与地图图层弹窗语义等 UI/UX 规格,使地图相关界面不再继续各自平行实现,而是共享同一套明确契约
    • Formal localization and locale-pack specifications in Chinese, covering runtime responsibilities, install layout, package/version boundaries, and the evolution rules between firmware and language packs / 新增中文版本地化总规格与语言包规格,明确运行时职责、安装布局、包与版本边界,以及固件与语言包之间的演进约束

    Changed / 变更

    • The Node Info page was rebuilt around the shared map viewport, with bottom-center layer switching, node-centered zoom semantics, draggable map browsing, right-aligned link readouts, and a content-bounded translucent backdrop for readability over live map tiles / 节点详情页现已围绕共享地图视口重构,支持底部居中的图层切换、以目标节点为锚点的缩放语义、可拖动地图浏览、右对齐链路读数,以及仅包裹读数内容的半透明可读性底板
    • Shared SPI bus ownership is now modeled explicitly as shared_spi_lock, with naming, guard usage, and supporting guidance aligned across display, map tiles, track recording, SSTV, and USB mass-storage paths / 共享 SPI 总线所有权现已显式建模为 shared_spi_lock,并在显示、地图瓦片、轨迹记录、SSTV 与 USB 大容量存储路径中统一命名、guard 用法与配套说明
    • Shared localization/runtime surfaces were refined further across settings, contacts, GPS, and package/runtime plumbing, and the Simplified Chinese language pack was updated to cover the new map-layer and UI copy / 设置、联系人、GPS 与语言包运行时等共享本地化路径进一步收敛,同时补齐简体中文语言包对新地图图层与界面文案的覆盖

    Fixed / 修复

    • Fixed Node Info regressions where tiles could fail to render, map dragging/layer switching diverged from the main map page, and right-side readouts became hard to read or inconsistent over map imagery / 修复节点详情页中瓦片可能不渲染、地图拖动与图层切换语义偏离主地图页,以及右侧读数叠在地图图像上时难以辨认或表现不一致的问题
    • Fixed shared-SPI contention during USB mass-storage activity by locking SD access and pausing radio tasks while the USB MSC backend owns the storage path, reducing display corruption and tear-like artifacts on ESP boards / 修复 USB 大容量存储期间的共享 SPI 争用问题,在 USB MSC 后端占用存储路径时为 SD 访问加锁并暂停无线任务,降低 ESP 板卡上的显示损坏与类似撕裂现象
    • Fixed supporting protocol/runtime helper paths so node detail, map-layer UI, and localization-driven surfaces behave more predictably across mixed protocol and device states / 修复若干协议与运行时 helper 的支撑路径,使节点详情、地图图层界面与本地化驱动的共享界面在混合协议和设备状态下表现更稳定且更可解释

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.21-alpha...v0.1.22-alpha

  11. v0.1.21-alpha # Pre-release 2 months ago · 2026-04-21 08:51 UTC

    [0.1.21-alpha] - 2026-04-21

    Changed / 变更

    • Extensions app surfaces now participate fully in the shared localization pipeline, covering the menu label/description, top bar title, package list/detail headings, and install/uninstall status copy across the supported language packs / Extensions 相关界面现已完整接入共享本地化链路,覆盖菜单名称与描述、顶部标题、语言包列表/详情标题,以及安装/卸载状态文案,并同步补齐各已支持语言包的词条
    • Pager home footer layout now uses a split alignment model, keeping node ID anchored on the left while RAM and PSRAM usage stay grouped on the right, with the app description lifted above the footer to preserve readability / Pager 主界面底栏现改为分离对齐布局,节点 ID 固定左对齐,RAM 与 PSRAM 使用情况固定右对齐,同时将应用描述抬升到底栏上方,避免被遮挡

    Fixed / 修复

    • Fixed localized menu refresh paths that were still using raw text updates, which left the Extensions icon label and focused description untranslated after language changes / 修复菜单本地化刷新路径中仍使用 raw text 更新的问题,解决切换语言后 Extensions 图标标签与焦点描述未正确翻译的问题
    • Fixed untranslated and inconsistent copy throughout the Extensions runtime, including compatibility badges, package action states, Wi-Fi status text, and package install/uninstall progress notifications / 修复 Extensions 运行时中多处未本地化或不一致的文案,包括兼容性标记、包操作状态、Wi-Fi 状态文字,以及安装/卸载过程通知
    • Fixed pager footer overlap where the bottom bar could cover icon descriptions, especially on the focused-card layout / 修复 pager 焦点卡片布局下底栏遮挡应用描述的问题

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.20-alpha...v0.1.21-alpha

  12. v0.1.20-alpha # Pre-release 2 months ago · 2026-04-21 06:48 UTC

    [0.1.20-alpha] - 2026-04-21

    Added / 新增

    • On-device firmware update controls under Settings > Advanced, including update check/install actions, progress overlays, and release metadata sourced from GitHub Pages / 新增 Settings > Advanced 中的设备侧固件更新能力,包含检查更新、安装更新、进度遮罩,以及来自 GitHub Pages 的发布元数据
    • Pages/release packaging now publishes OTA-ready binaries, Web Flasher images, and language-pack assets together so the project site can drive both browser flashing and in-device updates / 新增 Pages/Release 打包链路,同时发布 OTA 二进制、Web Flasher 镜像与语言包资源,使项目站点既能浏览器刷机也能驱动设备内更新
    • Flash-backed language-pack storage on ESP, allowing installed locale/font packages to load from internal flash without depending on SD card presence / 新增 ESP 上基于内部 Flash 的语言包存储,使已安装 locale/font 包可直接从内部 Flash 加载,不再依赖 SD 卡存在

    Changed / 变更

    • Startup flow now surfaces UI earlier, shows boot progress/log feedback, and keeps long-running locale/package operations behind a shared busy overlay that blocks input and suppresses sleep while work is active / 启动流程现会更早显示 UI,并提供 boot 进度/日志反馈;耗时的语言包与资源操作也会通过统一 busy overlay 承载,在进行中阻止输入并抑制息屏
    • Firmware version reporting now prefers the injected Trail Mate version from the build pipeline instead of exposing the raw ESP-IDF app version, and CI validates OTA slot size before publishing artifacts / 固件版本展示现优先使用构建流水线注入的 Trail Mate 版本号,而不是直接暴露 ESP-IDF app version;CI 也会在发布前校验 OTA 分区大小
    • Chinese locale/font handling was reworked around tiered packs, IME availability controls, and flash-first discovery so startup and runtime font loads are faster and more predictable / 中文 locale/font 处理围绕分层字体包、输入法启用控制与 flash-first 发现机制进行了重构,使启动与运行时字体加载更快且更可控

    Fixed / 修复

    • Fixed low-memory Wi-Fi bring-up for settings/package/update flows by adding heap diagnostics, BLE pause-and-retry fallback, and lighter initialization settings when needed / 修复设置页、语言包下载与固件更新流程中 Wi-Fi 在低内存条件下难以启动的问题,通过增加 heap 诊断、BLE 暂停后重试,以及更轻量的初始化参数提升成功率
    • Fixed incorrect esp-idf:v4.4.7 ... version strings in the UI, and kept update/version surfaces aligned with the actual firmware release being built / 修复界面中错误显示 esp-idf:v4.4.7 ... 作为版本号的问题,使更新与版本展示统一对齐到真实固件版本
    • Fixed several UX regressions around locale install/load and multilingual input, including missing loading feedback, sleep during blocking tasks, and Chinese IME/candidate layout issues / 修复语言包安装/加载与多语言输入过程中的多项体验回退,包括缺少 loading 反馈、阻塞任务期间误触发息屏,以及中文输入法/候选栏布局问题

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.19-alpha...v0.1.20-alpha

  13. v0.1.19-alpha # Pre-release 2 months ago · 2026-04-20 19:47 UTC

    [0.1.19-alpha] - 2026-04-21

    Added / 新增

    • Installable multilingual language bundles delivered through the new Extensions flow, with initial external locale/font packages for European Latin Extended, Simplified Chinese, Traditional Chinese, Japanese, and Korean / 新增通过 Extensions 流程分发的可安装多语言包,首批提供 European Latin Extended、简体中文、繁体中文、日语与韩语等外部 locale/font 套件
    • A Pages-side pack catalog and build pipeline that publishes SD-installable locale bundles from packs/ into site/data/packs.json and packaged zip assets / 新增 Pages 侧语言包目录与构建流水线,可将 packs/ 下的资源发布为 site/data/packs.json 与可安装 zip 包
    • Shared Wi-Fi runtime support for the ESP targets, plus Extensions app entry points and top-bar/status exposure needed for on-device package downloads / 新增 ESP 目标共用的 Wi-Fi 运行时能力,以及为设备侧下载语言包准备的 Extensions 入口和顶部状态显示

    Changed / 变更

    • Localization is now pack-driven instead of being limited to a small built-in language set, with runtime locale/font/IME registration, SD discovery, and memory-profile-aware gating for constrained devices / 本地化体系现已从少量内建语言收敛为 pack 驱动模式,支持运行时 locale/font/IME 注册、SD 扫描,以及面向受限设备的内存画像门控
    • GitHub Pages now presents Trail Mate as a multilingual firmware project and surfaces the installable language-pack catalog alongside the existing firmware download path / GitHub Pages 现将 Trail Mate 明确展示为支持多语言的固件项目,并在原有固件下载路径之外呈现可安装语言包目录
    • Meshtastic direct-message handling and send-status flow were unified around upstream PKI-style behavior, while outdated settings-side PKI toggle/plumbing was removed and Chat/Contacts compose handling now stays on one path / Meshtastic 私聊与发送状态流程现已围绕上游 PKI 语义统一收敛,移除过时的设置页 PKI toggle/plumbing,并让 Chat/Contacts 共用同一条 compose 发送路径

    Fixed / 修复

    • Fixed false No response send results after valid Meshtastic acknowledgements or response packets had already arrived, so UI send state now follows the actual protocol outcome more closely / 修复在 Meshtastic 已收到有效 ACK 或响应包后界面仍错误显示 No response 的问题,使发送状态与真实协议结果更一致
    • Fixed blind spots in Meshtastic diagnostics by logging decode, key verification, routing, and drop reasons more explicitly, making packet handling failures and dedup behavior easier to trace / 修复 Meshtastic 诊断日志盲区,现会更明确地记录 decode、key verification、routing 与 drop 原因,使包处理失败和 dedup 行为更易追踪
    • Fixed Extensions/package-download reliability under tight internal-RAM conditions by steering large TLS allocations toward PSRAM and tightening Wi-Fi/runtime state reporting in the UI / 修复内存紧张条件下 Extensions/语言包下载的稳定性问题,通过将较大的 TLS 分配导向 PSRAM 并收紧 UI 中的 Wi-Fi/运行时状态显示,提高下载可靠性

    What's Changed

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.18-alpha...v0.1.19-alpha

  14. v0.1.18-alpha # Pre-release 2 months ago · 2026-04-20 08:07 UTC

    [0.1.18-alpha] - 2026-04-20

    Added / 新增

    • A shared bottom air-status footer for Chat and Contacts, showing the active protocol, frequency, bandwidth, spreading factor, and coding rate without overloading the page header / 新增 Chat 与 Contacts 共用的底部空口状态栏,在不挤占页头的前提下显示当前协议、频率、带宽、扩频因子与编码率
    • A System > Factory Reset action that clears persisted app/settings namespaces and local team state before rebooting the device / 新增 System > Factory Reset 恢复出厂设置动作,可在重启前清空持久化的应用/设置命名空间与本地团队状态
    • Shared ESP settings-store diagnostics and storage-key alias handling, so persisted reads and writes are now traceable through one platform-level path on both Arduino and ESP-IDF / 新增共享 ESP settings-store 诊断日志与存储键别名处理,使 Arduino 与 ESP-IDF 两条线上的持久化读写都能通过同一平台层路径追踪

    Changed / 变更

    • ESP configuration persistence is now unified more cleanly around the shared settings-store and AppConfig flow, replacing scattered direct Preferences access for UI/system values such as language, BLE, timezone, and screen timeout / ESP 配置持久化现已更彻底地收口到共享 settings-store 与 AppConfig 流程,替代语言、BLE、时区、熄屏超时等 UI/System 值上分散的直接 Preferences 访问
    • Menu and page terminology were tightened to shorter labels such as PC Link and USB Disk, while Contacts now keeps its top bar focused on the page title and moves air-interface details to the new footer / 菜单与页面命名进一步收敛为更短的 PC Link、USB Disk 等标签,同时 Contacts 页将页头收敛为页面标题,并把空口细节移到底部新状态栏
    • Shared UI boot paths now reload the persisted display language before shell/menu construction, keeping startup presentation aligned with the saved language choice / 共享 UI 启动路径现会在构建 shell/menu 之前重新载入已保存的显示语言,使启动后的界面呈现与保存的语言选择保持一致

    Fixed / 修复

    • Fixed display-language persistence on ESP so the saved language now survives reboot and is applied correctly during startup instead of falling back to English / 修复 ESP 上显示语言重启后失效的问题,保存的语言现可在启动阶段正确恢复,而不会再回退到英文
    • Fixed multiple Chinese-rendering issues across Settings, Chat, Sky Plot, and the top bar by replacing ambiguous full-width punctuation where needed, applying localized fonts more carefully, and forcing ASCII rendering for battery/status chrome text / 修复 Settings、Chat、Sky Plot 与顶部状态栏中的多处中文显示问题:在需要处改用 ASCII 标点、更谨慎地应用本地化字体,并对电池/状态栏文字强制使用 ASCII 渲染
    • Fixed stale configuration fallbacks and dead state around legacy settings migration, region-reset cleanup, and needs_restart, reducing mismatch risk between runtime state, reset actions, and persisted storage / 修复旧配置迁移、region reset 清理与 needs_restart 周围遗留的兜底/死状态代码,降低运行时状态、恢复动作与持久化存储之间的不一致风险

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.17-alpha...v0.1.18-alpha

  15. v0.1.17-alpha # Pre-release 2 months ago · 2026-04-19 13:22 UTC

    [0.1.17-alpha] - 2026-04-19

    Added / 新增

    • Runtime English and Chinese localization across the shared UI shell, covering menus, dashboard surfaces, chat and contacts flows, settings labels, and reusable localization helpers for future screens / 新增共享 UI Shell 的中英文本地化能力,覆盖菜单、Dashboard、Chat/Contacts 流程、设置标签,以及便于后续页面扩展的可复用本地化基础设施
    • A GitHub Pages project site under site/, with firmware-aligned branding, feature walkthrough sections backed by real screenshots, and repository-linked architecture/device entry points / 新增位于 site/ 的 GitHub Pages 项目主页,采用与固件一致的品牌风格,并通过真实截图组织功能介绍,同时提供指向架构文档与设备说明的入口
    • Browser-based Web Flasher support for the ESP32-S3 targets, including merged release images, release-driven manifests, and Pages-side asset preparation scripts so supported boards can install directly from the project site / 新增面向 ESP32-S3 目标的浏览器 Web Flasher 支持,包含合并后的发布镜像、随 Release 驱动的 manifest,以及 Pages 侧资源准备脚本,使受支持板卡可直接在项目主页完成安装

    Changed / 变更

    • The ESP LXMF runtime was refactored further toward Reticulum alignment, separating runtime state more clearly, tightening protocol wiring, and documenting the device-mode/runtime direction in dedicated architecture notes / ESP 侧 LXMF 运行时继续朝 Reticulum 对齐方向重构,进一步理清运行时状态拆分、收紧协议接线,并在专门的架构文档中记录 device-mode/runtime 的演进方向
    • Pages and release automation now prepare web-ready firmware assets alongside the existing PlatformIO outputs, so release artifacts can drive both download-based flashing and the future project-site install path / Pages 与发布自动化现已在现有 PlatformIO 产物之外准备面向 Web 的固件资源,使 Release 产物同时服务于传统下载刷机和项目主页安装路径
    • The project homepage visual system now follows the firmware's warm amber palette instead of a generic web palette, keeping the web experience closer to the embedded product identity / 项目主页的视觉系统现已改为沿用固件的暖色 Amber 配色,而不是通用网页色板,使网页体验更贴近设备本体的产品识别

    Fixed / 修复

    • Meshtastic send and acknowledgement recovery on T-Deck were hardened, reducing stuck outbound-message states and improving recovery after failed or delayed ack paths / 修复并加固 T-Deck 上 Meshtastic 发送与确认恢复流程,减少消息外发卡住的状态,并提升 ACK 失败或延迟后的恢复能力
    • Multiple shared UI screens were adjusted to behave correctly under localization-aware labels and updated layout rules, reducing text overflow and presentation mismatches across devices / 修复多处共享 UI 页面在接入本地化标签与更新布局规则后的显示问题,减少跨设备的文本溢出与呈现不一致
    • GitHub Pages asset preparation now preserves generated-site structure more safely while refreshing manifests and showcase assets, avoiding accidental cleanup of placeholder files needed by the repo layout / 修复 GitHub Pages 资源准备过程中的目录清理行为,在刷新 manifest 与展示素材时更安全地保留生成站点结构,避免误删仓库布局所需的占位文件

    What's Changed

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.16-alpha...v0.1.17-alpha

  16. v0.1.16-alpha # Pre-release 2 months ago · 2026-04-17 06:20 UTC

    [0.1.16-alpha] - 2026-04-17

    Added / 新增

    • Native LXMF protocol mode on ESP over Reticulum/RNode-compatible wire layers, including device-side identity, announce/discovery handling, opportunistic text and app-data delivery, and local contact/chat integration / 新增基于 Reticulum/RNode 兼容链路的 ESP 原生 LXMF 协议模式,补齐设备侧身份、announce/discovery、机会式文本与 app-data 收发,以及本地 Contacts/Chat 集成
    • RNode Bridge USB CDC KISS modem mode for external Reticulum hosts, keeping host-controlled modem bridging separate from native on-device LXMF messaging / 新增面向外部 Reticulum 主机的 RNode Bridge USB CDC KISS 调制解调器模式,将宿主机控制的桥接模式与设备原生 LXMF 消息模式明确区分
    • Dedicated RNode radio profile defaults/persistence and a new Reticulum/LXMF device-mode architecture document for the ESP shared shell path / 新增独立的 RNode 无线参数默认值与持久化配置,并补充面向 ESP 共享 Shell 路线的 Reticulum/LXMF 设备模式架构文档

    Changed / 变更

    • Settings, Contacts, Chat, and the PC link page now understand LXMF and RNode Bridge, expose protocol-aware labels/capability gating, and stop assuming every protocol behaves like Meshtastic or MeshCore / Settings、Contacts、Chat 与 PC Link 页面现已识别 LXMFRNode Bridge,提供协议感知的标签与能力门控,不再默认所有协议都按 Meshtastic 或 MeshCore 的行为模型工作
    • Team and HostLink app-data flows now propagate want_response separately from delivery-ack semantics, so business-level response intent is preserved across device-side Team sends and host-triggered app-data routing / Team 与 HostLink 的 app-data 链路现已将 want_response 与投递 ACK 语义分离传递,使设备侧 Team 发送与 Host 触发的 app-data 路由都能保留业务层响应意图
    • Team and protocol runtime wiring now use dedicated RNode/LXMF mesh settings where appropriate, including bridge-aware hostlink runtime switching and RNode-backed protocol factory selection / Team 与协议运行时接线现已在适用场景下使用独立的 RNode/LXMF Mesh 配置,并补齐桥接感知的 hostlink runtime 切换与基于 RNode 的协议工厂选择

    Fixed / 修复

    • Team app-data broadcast behavior now falls back to per-member unicast when a backend lacks native broadcast app-data support, improving cross-protocol team delivery on constrained transports / 修复 Team app-data 广播在后端不支持原生广播时的发送路径,改为按成员逐个单播回退,提升受限传输下的跨协议 Team 投递兼容性
    • Team position events now also publish node-position updates, keeping map/contact location state aligned with Team traffic instead of leaving position changes trapped inside Team-only events / 修复 Team 位置事件只停留在 Team 内部的问题,现会同步发布节点位置更新,使地图与联系人位置状态能够跟随 Team 流量变化
    • Reticulum token encryption/decryption now uses dynamic storage instead of fixed-size buffers, reducing MTU-related overflow risk in the shared wire helpers / 修复 Reticulum token 加解密依赖固定长度缓冲区的问题,改用动态存储以降低共享 wire helper 中与 MTU 相关的溢出风险

    What's Changed

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.15-alpha...v0.1.16-alpha

  17. v0.1.15-alpha # Pre-release 2 months ago · 2026-04-16 07:24 UTC
  18. v0.1.14-alpha # Pre-release 3 months ago · 2026-04-13 09:47 UTC

    What's Changed

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.13-alpha...v0.1.14-alpha

  19. v0.1.13-alpha # Pre-release 4 months ago · 2026-03-06 13:23 UTC
  20. v0.1.12-alpha # Pre-release 4 months ago · 2026-02-22 01:47 UTC

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.11-alpha...v0.1.12-alpha

    [0.1.12-alpha] - 2026-02-22

    Added / 新增

    • MeshCore identity module with Ed25519 + ECDH key material handling and persistent peer-key storage path / 新增 MeshCore 身份模块,支持 Ed25519 + ECDH 密钥材料处理与对端公钥持久化存储
    • Independent team::proto payloads for Team Position and Team Waypoint, decoupled from Meshtastic envelope path / 新增独立 team::proto 的 Team Position 与 Team Waypoint 报文,解耦 Meshtastic 信封路径
    • Contacts "Discover" mode with inline actions (Scan Local, Send ID Local, Send ID Broadcast, Cancel) and MeshCore-only guard / 联系人页新增 Discover 模式,内置 Scan LocalSend ID LocalSend ID BroadcastCancel 动作,并带 MeshCore 协议保护

    Changed / 变更

    • MeshCore adapter behavior aligned further with native protocol semantics, including app-data unicast dest, discover/advert/control handling, PATH/trace/multipart plumbing, and route-quality updates / MeshCore 适配器进一步对齐原生协议语义,补齐 app-data 单播 dest、discover/advert/control 处理,以及 PATH/trace/multipart 与路由质量链路
    • Chat/Contacts protocol presentation is now protocol-aware to reduce cross-protocol reply confusion while keeping mixed history visible for review / Chat 与 Contacts 展示改为协议感知,保留混合历史可查看,同时降低跨协议误回复
    • README (EN/CN) updated to explicitly state Meshtastic + MeshCore dual-protocol compatibility / README 中英文版已明确声明 Meshtastic + MeshCore 双协议兼容

    Fixed / 修复

    • Discovery filter-mode focus/highlight consistency in Contacts list navigation / 修复 Contacts 中 Discover 过滤模式在列表导航时的焦点与高亮一致性
    • MeshCore peer-key load/persistence wiring and related decrypt-failure diagnostics for interop debugging / 修复 MeshCore 对端密钥加载/持久化链路并补强解密失败诊断日志,便于互通排障

    Full Changelog: https://github.com/vicliu624/trail-mate/compare/v0.1.11-alpha...v0.1.12-alpha