Releases: EmbeddedKitOrg/EK-OmniProbe
Release list
EK-OmniProbe v1.3.5
EK-OmniProbe
🆕 本次更新
修复 Windows / Linux 端「检查更新失败」的问题,并让更新弹窗按 Markdown 渲染
发布说明。无破坏性改动,可直接覆盖升级。
修复
- 检查更新失败:platform
windows-x86_64not found —— 发布流程生成
latest.json时,更新工件名仍按 Tauri v2 早期约定匹配(.nsis.zip/
.AppImage.tar.gz),而 stable 版工件已改为*_x64-setup.exe/*.AppImage,
导致 Windows / Linux 平台键缺失、客户端检查更新报错。现已修正匹配规则,并在
缺少 Windows 平台键时让发布直接失败,不再发出残缺的更新清单 - 更新内容显示为原始 Markdown —— 更新弹窗此前把发布说明当纯文本显示,
###、**等标记原样漏出。现改用 Markdown 渲染,标题 / 列表 / 加粗正常显示
说明
- 已同步热修线上 v1.3.4 的
latest.json,存量用户无需等待即可正常检查更新
📦 下载说明
| 平台 | 文件 | 说明 |
|---|---|---|
| Windows | *_x64-setup.exe |
NSIS 安装程序 |
| Windows | *_x64_portable.exe |
便携版(免安装) |
| macOS (Universal) | *_universal.dmg |
同时支持 Apple Silicon 与 Intel |
| Linux | *_amd64.deb |
Debian/Ubuntu |
| Linux | *_amd64.AppImage |
通用Linux |
💻 系统要求
- Windows: Windows 10/11 64位,需要WebView2运行时
- macOS: macOS 11.0+ (Big Sur或更高), 通用版支持 Apple Silicon / Intel
- Linux: 需要WebKitGTK和libusb
完整更新历史: CHANGELOG.md
EK-OmniProbe v1.3.4
EK-OmniProbe
🆕 本次更新
修复 RTT / 串口日志区在虚拟滚动下拖拽多选时的高亮丢失问题。无破坏性改动,
可直接覆盖升级。
修复
- 跨行选择高亮随滚动掉色 —— 拖拽多选时若中途自动滚动,滚出可视区的行会被
虚拟列表卸载,导致原生选区高亮丢失,看起来「下面的行变成未选中」。现已修复:
跨行选择 / 全选改为按行号区间自绘高亮,不再依赖原生选区,滚动多少都不掉色,
且显示的高亮范围与实际复制内容始终一致 - Ctrl+A 全选不再只高亮可视区内的行,而是整段高亮
说明
- 单行内的字符级选择(如串口「半行复制」)仍走原生选区,行为不变
- 实际复制的内容此前即按行号区间从数据重建,本身正确,本次仅修正视觉高亮
📦 下载说明
| 平台 | 文件 | 说明 |
|---|---|---|
| Windows | *_x64-setup.exe |
NSIS 安装程序 |
| Windows | *_x64_portable.exe |
便携版(免安装) |
| macOS (Universal) | *_universal.dmg |
同时支持 Apple Silicon 与 Intel |
| Linux | *_amd64.deb |
Debian/Ubuntu |
| Linux | *_amd64.AppImage |
通用Linux |
💻 系统要求
- Windows: Windows 10/11 64位,需要WebView2运行时
- macOS: macOS 11.0+ (Big Sur或更高), 通用版支持 Apple Silicon / Intel
- Linux: 需要WebKitGTK和libusb
完整更新历史: CHANGELOG.md
EK-OmniProbe v1.3.3
EK-OmniProbe
🆕 本次更新
修复串口「收到数据却不显示」的问题,并把接收断帧做成可配置模式;另新增串口
DTR / RTS 控制开关。无破坏性改动,可直接覆盖升级。
修复
- 串口日志区无换行数据不显示 —— 没有换行结尾的数据(如请求-应答式的
HEX / 二进制帧)此前会被一直缓存、永不刷出,看起来像「只发不收」。现已修复:
parseSerialData改为按字节分帧,并加入空闲超时兜底,残留数据静默 200ms
也会强制刷成一行
新增
- 接收分帧模式(「更多」→「接收分帧」,仅日志模式):换行(自动 \n/\r\n) /
LF / CRLF / CR / 空闲超时(毫秒可调)/ 自定义分隔符(支持 HEX,如0D 0A)。
默认「换行(自动)」+ 超时兜底,老用户开箱行为不变 - 串口「高级设置」新增 DTR / RTS 控制开关(默认关):打开串口后按需拉高这两
根控制线,兼容个别依赖控制线才收发的设备
说明
- BLE 接收沿用默认分帧,行为不变
- 纯前端 + 串口后端改动,可直接覆盖升级
📦 下载说明
| 平台 | 文件 | 说明 |
|---|---|---|
| Windows | *_x64-setup.exe |
NSIS 安装程序 |
| Windows | *_x64_portable.exe |
便携版(免安装) |
| macOS (Universal) | *_universal.dmg |
同时支持 Apple Silicon 与 Intel |
| Linux | *_amd64.deb |
Debian/Ubuntu |
| Linux | *_amd64.AppImage |
通用Linux |
💻 系统要求
- Windows: Windows 10/11 64位,需要WebView2运行时
- macOS: macOS 11.0+ (Big Sur或更高), 通用版支持 Apple Silicon / Intel
- Linux: 需要WebKitGTK和libusb
完整更新历史: CHANGELOG.md
EK-OmniProbe v1.3.2
EK-OmniProbe
🆕 本次更新
修复补丁:解决 RTT / 串口日志区在虚拟滚动下的复制问题。原先拖拽多选时
一旦滚动,滚出可视区的行被卸载,导致前面的内容复制不全;Ctrl+A 还会选中
页面其它区域一起复制。
修复
- RTT / 串口日志区:拖拽多选改为按行号区间从数据重建,跨滚动不再丢内容
- Ctrl+A 限定在日志区内生效,不再选中工具栏、侧边栏等其它区域
- Ctrl+C / Ctrl+Shift+C / 右键复制菜单统一走数据切片,纯文本也不再被截断
- 行内单行选区仍保留字符级精度(可复制半句)
新增
- RTT / 串口工具栏「输出」区新增「复制全部」按钮,一键复制文本区全部内容
说明
- 终端模式(串口终端)保持原有终端语义(Ctrl+C 复制/SIGINT、Ctrl+A 行首),未改动
- 纯文案/无破坏性,可直接覆盖升级
📦 下载说明
| 平台 | 文件 | 说明 |
|---|---|---|
| Windows | *_x64-setup.exe |
NSIS 安装程序 |
| Windows | *_x64_portable.exe |
便携版(免安装) |
| macOS (Universal) | *_universal.dmg |
同时支持 Apple Silicon 与 Intel |
| Linux | *_amd64.deb |
Debian/Ubuntu |
| Linux | *_amd64.AppImage |
通用Linux |
💻 系统要求
- Windows: Windows 10/11 64位,需要WebView2运行时
- macOS: macOS 11.0+ (Big Sur或更高), 通用版支持 Apple Silicon / Intel
- Linux: 需要WebKitGTK和libusb
完整更新历史: CHANGELOG.md
EK-OmniProbe v1.3.1
EK-OmniProbe
🆕 本次更新
i18n 补丁版本:调试工作台 UI 文案统一中文,与项目其他四个工作台
风格对齐。纯文案改动,无功能性破坏,可直接覆盖升级。
调整
- 🇨🇳 调试工作台中文化 - 9 块面板标题(符号 / 源码 / 寄存器 / 全局变量 / 观察 / 内存 / 调用栈 / 断点 / 输出)、dockview 的 tab 头、Toolbar 全套按钮(连接 / 断开 / 加载 ELF… / 运行 / 暂停 / 步入 / 跨过 / 跳出 / 复位)、状态栏 halted 原因(手动 / 断点 / 单步 / 异常 / 观察点)全部翻成中文。
PANEL_REGISTRY.title改成中文后,dockview tab 头、视图下拉菜单、reinsert 重开面板的 title 都自动跟随,单一来源 - 📝 LocalsPanel 副标题简化 - 主标题已是「全局变量」,副标题里冗余的「全局变量」字样去掉,只保留「DWARF 类型 / 函数局部变量待后续」
📦 下载说明
| 平台 | 文件 | 说明 |
|---|---|---|
| Windows | *_x64-setup.exe |
NSIS 安装程序 |
| Windows | *_x64_portable.exe |
便携版(免安装) |
| macOS (Universal) | *_universal.dmg |
同时支持 Apple Silicon 与 Intel |
| Linux | *_amd64.deb |
Debian/Ubuntu |
| Linux | *_amd64.AppImage |
通用Linux |
💻 系统要求
- Windows: Windows 10/11 64位,需要WebView2运行时
- macOS: macOS 11.0+ (Big Sur或更高), 通用版支持 Apple Silicon / Intel
- Linux: 需要WebKitGTK和libusb
完整更新历史: CHANGELOG.md
EK-OmniProbe v1.3.0
EK-OmniProbe
🆕 本次更新
新增第 5 个工作台「调试」(Ctrl+5),把项目从「烧录工具 + RTT 数据查看」升级成完整的源码级 ARM Cortex-M 调试器(参考 J-Link Ozone 的体验)。无破坏性改动,可直接覆盖升级。
新增功能:调试工作台
底层(Rust + probe-rs 0.31 + addr2line 0.24 + gimli 0.31 + object 0.36)
- 独立
debug_session通道:与 flash 主连接、RTT 连接互不抢锁,沿用现有架构再加一条 - 23 条 IPC 命令:
- 连接:
debug_attach/debug_detach/debug_get_status - 执行控制:
debug_run/debug_halt/debug_step_in/debug_step_over/debug_step_out/debug_reset/debug_reset_halt - 内存与寄存器:
debug_read_memory/debug_write_memory/debug_read_registers/debug_write_register - ELF / DWARF:
debug_load_elf/debug_clear_symbols/debug_resolve_pc/debug_get_call_stack/debug_read_source - 断点:
debug_set_breakpoint/debug_set_source_breakpoint/debug_clear_breakpoint/debug_list_breakpoints/debug_clear_all_breakpoints
- 连接:
- ELF 解析(
debug_symbols.rs):object 枚举符号表(保留 Text/Data 类,过滤零地址零长度噪音);addr2line::Loader 做正向PC → (function, file, line)解析(带 demangle,C++/Rust 都支持);独立走一遍 line program 建(规范化 file 路径, line) → addr反向索引供源码级断点。Loader 自带 mmap 生命周期独立,与 object 借用不打架 - step_over:基于 DWARF 行表循环单步直到
file/line/function任一变化;上限 8000 条指令防失控;ELF 未加载或 PC 不在行表时退化为指令级 step_in - step_out:在 LR(清掉 thumb 位)下临时硬断点 + run +
wait_for_core_halted(5s)+ 清断点;超时防函数永不返回时卡死 - get_call_stack:当前 PC 一帧 + LR 推出来的第二帧(真实 N 帧 unwind 需要解
.debug_frameCIE/FDE,留作后续)
前端(React + dockview-react 6 + CodeMirror 6 + @codemirror/lang-cpp)
- 9 块面板自由 dock / 浮动 / 合并 tab:Symbols / Source / Registers / Locals / Watch / Memory / Call Stack / Breakpoints / Output;默认布局 = 左 Symbols / 中 Source / 右 Inspectors(Registers·Locals·Watch·Memory tab 组)/ 底 Call Stack·Breakpoints·Output tab 组
- 顶部「视图」下拉(Keil 风格)任意显隐面板 + 「重置布局」一键恢复默认
- DebugToolbar:Attach / Load ELF / Run / Halt / Step In / Over / Out / Reset,状态机驱动 disabled,状态栏显示 ELF 文件名 + halted/running 指示
- Symbols:函数 / 变量两 tab,react-virtual 虚拟滚动应对几万符号,搜索框模糊筛选
- Source:CodeMirror 6 只读 + 自定义断点 gutter(点击 toggle 设/清源码断点,DWARF 行表反向查表)+ PC 箭头 gutter,halt 后自动
EditorView.scrollIntoView当前行 - Registers:halt 时自动读,run/detach 清缓存,附最近更新时间戳
- Memory:标准 hex / ASCII viewer(16 字节/行,单次最多 64KB)
- Locals:列出全局变量按需展开 hex(无 DWARF 类型解析;函数局部变量 / struct / array 待后续)
- Watch:
符号名/0xADDR/name:N三种表达式,localStorage 持久化跨会话保留 - Call Stack:halt 后展示帧表(PC + LR 两帧),点击切 currentFrameId 联动 Source 自动加载对应文件并跳到行
- Breakpoints:列表 + 按地址增删 + 清空;展示对应 file:line 与命中次数
- Output:粗筛 debug 相关日志,自动滚动开关
体验细节
- 运行态前端 300ms 轮询
core_halted,命中断点自动停机 + 刷新 Registers / CallStack / Source / Locals / Watch(不依赖后端事件主动推送) - 源码断点 per-ELF localStorage 持久化(key =
debug_bp_${path}),attach + Load ELF 后逐条恢复,单条失败容忍(行表可能因重新编译偏移) - ModeSwitch 在
debugattached 时切到其他工作台会弹确认(与 RTT 运行 → 烧录的现有保护对齐,确认意图但不自动 Detach,避免误操作丢失调试会话)
调整
- 「检查更新」入口去重:移除设置中心 → 工具 → 应用工具 整段,统一收到「关于作者」弹窗一处
已知不做(明确文档化为后续阶段)
- DWARF 类型解析(结构体 / 数组 / typedef、函数局部变量
DW_AT_location求值) - 真实 N 帧栈展开(解析
.debug_frameCIE/FDE + 应用 DW_CFA opcodes 还原 caller 寄存器) - HardFault 异常解码(CFSR / HFSR / BFAR 解读)
- RTOS-aware(FreeRTOS / RT-Thread thread list)
- 源码路径重映射弹窗(DWARF 绝对路径在另一台机器找不到时让用户挑根目录)
- Live Watch(运行态轮询变量出曲线)
依赖
- 前端 +5 个 npm 包:
dockview-react ^6.0.5、@uiw/react-codemirror ^4.25.9、@codemirror/lang-cpp ^6.0.3、@codemirror/state ^6.6.0、@codemirror/view ^6.42.1 - 后端 +2 个 crate:
addr2line 0.24、gimli 0.31(probe-rs 自带 0.32,多版本共存) - bundle 净增:JS 约 +540KB raw / +175KB gz(CodeMirror 6 全套是大头),CSS +0.5KB
📦 下载说明
| 平台 | 文件 | 说明 |
|---|---|---|
| Windows | *_x64-setup.exe |
NSIS 安装程序 |
| Windows | *_x64_portable.exe |
便携版(免安装) |
| macOS (Universal) | *_universal.dmg |
同时支持 Apple Silicon 与 Intel |
| Linux | *_amd64.deb |
Debian/Ubuntu |
| Linux | *_amd64.AppImage |
通用Linux |
💻 系统要求
- Windows: Windows 10/11 64位,需要WebView2运行时
- macOS: macOS 11.0+ (Big Sur或更高), 通用版支持 Apple Silicon / Intel
- Linux: 需要WebKitGTK和libusb
完整更新历史: CHANGELOG.md
EK-OmniProbe v1.2.5
EK-OmniProbe
🆕 本次更新
体验小版本:把当前版本号和「检查更新」按钮搬进「关于作者」弹窗,无功能性破坏,可直接覆盖升级。
新增功能
- ✨ 关于弹窗显示版本号 + 手动检查更新 -
AuthorAboutDialog在作者卡片下方新增独立一行:左侧通过@tauri-apps/api/app的getVersion()异步取运行时版本号显示为vX.Y.Z(与tauri.conf.json/Cargo.toml自动对齐,不会出现硬编码漂移),右侧是「检查更新」按钮。按钮复用现有UpdateChecker组件并传autoCheck={false},避免和 TopBar 启动时的静默自动检查重复触发;点击后若发现新版本,更新对话框会叠在「关于」之上展示版本对比与更新内容,已是最新则在输出日志输出"当前已是最新版本"
📦 下载说明
| 平台 | 文件 | 说明 |
|---|---|---|
| Windows | *_x64-setup.exe |
NSIS 安装程序 |
| Windows | *_x64_portable.exe |
便携版(免安装) |
| macOS (Universal) | *_universal.dmg |
同时支持 Apple Silicon 与 Intel |
| Linux | *_amd64.deb |
Debian/Ubuntu |
| Linux | *_amd64.AppImage |
通用Linux |
💻 系统要求
- Windows: Windows 10/11 64位,需要WebView2运行时
- macOS: macOS 11.0+ (Big Sur或更高), 通用版支持 Apple Silicon / Intel
- Linux: 需要WebKitGTK和libusb
完整更新历史: CHANGELOG.md
EK-OmniProbe v1.2.4
EK-OmniProbe
🆕 本次更新
工程化小版本:CI 加速 + 代码风格统一,无功能改动,可直接覆盖升级。
CI / 工程化
- ⚡ Windows runner 加 Defender 排除 - GitHub-hosted Windows runner 默认开启实时扫描,对 cargo
target/与~/.cargo里几万个.rlib/.rmeta逐文件扫描是 Rust 项目慢的最大头之一。在release.yml的 Windows job 起手位置Add-MpPreference排除项目工作区、Rust toolchain 目录、pnpm 全局存储以及rustc/cargo/link/node/pnpm进程。runner 是用一次销毁的临时 VM,无持久副作用。预期 Windows 编译阶段提速 30-50% - 🛠️ 引入 Prettier 并统一全仓代码风格 - 新增
.prettierrc.json(双引号、分号、tabWidth=2、printWidth=120、LF 行尾)、.prettierignore、format/format:check脚本;一次性prettier --write处理 73 个.ts/.tsx/.css文件,从此风格漂移可在 CI 拦下
📦 下载说明
| 平台 | 文件 | 说明 |
|---|---|---|
| Windows | *_x64-setup.exe |
NSIS 安装程序 |
| Windows | *_x64_portable.exe |
便携版(免安装) |
| macOS (Universal) | *_universal.dmg |
同时支持 Apple Silicon 与 Intel |
| Linux | *_amd64.deb |
Debian/Ubuntu |
| Linux | *_amd64.AppImage |
通用Linux |
💻 系统要求
- Windows: Windows 10/11 64位,需要WebView2运行时
- macOS: macOS 11.0+ (Big Sur或更高), 通用版支持 Apple Silicon / Intel
- Linux: 需要WebKitGTK和libusb
完整更新历史: CHANGELOG.md
EK-OmniProbe v1.2.3
EK-OmniProbe
🆕 本次更新
安全 + 体验小版本:闭合一次全局安全审计发现的 6 项漏洞(Zip Slip、PDSC 名称劫持、任意目录删除、任意文件写、CSP 缺失、capability 过宽),并给串口日志视图加了三档复制(纯文本 / 含时间戳 / 含 RX-TX 完整行)。无破坏性改动,可直接覆盖升级。
安全修复
- 🔒 Zip Slip 防御 -
import_pack解压 .pack 时不再相信 zip 条目名,..、绝对路径、Windows 盘符与符号链接条目全部拒绝/跳过;恶意 .pack 不能再借此把任意文件落到 Startup、System32 等位置 - 🔒 PDSC
<package name>校验 - .pack 内 PDSC 文件里的name字段会作为解压目录名,现在通过validate_pack_name校验(拒绝路径分隔符、控制字符、:*?"<>|等保留字符),防止恶意 pack 把整个解压根目录劫持出 packs 目录 - 🔒 任意目录删除收口 -
delete_pack/rescan_pack/get_pack_scan_report/get_devices_without_algorithm这 4 个 IPC 命令收到的pack_name现在都走名称校验,不再可能用..\..\Documents之类的串触发remove_dir_all任意路径 - 🔒 导出文件路径白名单 -
write_text_file/write_binary_file现在校验绝对路径 + 扩展名白名单(文本: txt/csv/log/json/yaml/yml/md;二进制: png/jpg/jpeg/bin/hex),即使前端被注入也无法落 .cmd/.bat/.dll 等可执行文件 - 🔒 CSP 启用 -
tauri.conf.json的security.csp从null改为严格策略:只允许'self'脚本源、禁用unsafe-eval、禁 inline script、object-src 'none'、frame-ancestors 'none',大幅抬高 XSS 门槛 - 🔒 能力声明瘦身 -
capabilities/default.json移除前端从未使用的 6 条fs:*权限(allow-write-text-file、allow-write-file、allow-mkdir、allow-read-file、allow-read-text-file、allow-exists、allow-read-dir),即使将来某条路径出现 XSS,也无法直接调用@tauri-apps/plugin-fs全盘读写 - 🧹 删除死代码命令 -
save_project_config/load_project_config在前端从未被调用,但暴露了任意路径写。后端 IPC 注册、Rust 实现、TS wrapper 与ProjectConfig类型整套移除
新增功能
- ✨ 串口日志三档复制 - 默认
Ctrl+C仍按select-none只复制纯正文(不含时间戳和【RX】/【TX】前缀),新增Ctrl+Shift+C一键复制完整行([时间戳] 【RX/TX】 正文),右键弹出菜单可在三种模式间临时切换;多行选择会按整行展开拼接,单行半选则严格只复制选中字符。复制结果会在「输出日志」里提示行数
文档
- 📖
docs/SERIAL_TERMINAL_GUIDE.md- 新增「2.1 复制日志行」一节,含三种复制方式的对照表与边界规则说明
📦 下载说明
| 平台 | 文件 | 说明 |
|---|---|---|
| Windows | *_x64-setup.exe |
NSIS 安装程序 |
| Windows | *_x64_portable.exe |
便携版(免安装) |
| macOS (Universal) | *_universal.dmg |
同时支持 Apple Silicon 与 Intel |
| Linux | *_amd64.deb |
Debian/Ubuntu |
| Linux | *_amd64.AppImage |
通用Linux |
💻 系统要求
- Windows: Windows 10/11 64位,需要WebView2运行时
- macOS: macOS 11.0+ (Big Sur或更高), 通用版支持 Apple Silicon / Intel
- Linux: 需要WebKitGTK和libusb
完整更新历史: CHANGELOG.md
EK-OmniProbe v1.2.2
EK-OmniProbe
🆕 本次更新
清理向版本:去掉项目早期"RTTVIEW / ZUOLANDAPLINK"残留品牌名,整理一批开发自言自语风格的 UI 文案,新增应用内 RTT 接入指南和一个干净的 Keil 示例工程。无功能性破坏,可直接覆盖升级。
新增功能
- ✨ 应用内 RTT 接入指南弹窗 - RTT 工具栏「连接」组新增「接入指南」按钮,5 步带可复制代码片段:4 个 SEGGER 文件加入工程 /
#include/printf风格调用 / 4 种数据格式(单数值、XY、CSV、JSON) / ANSI 颜色码;底部列了%f不支持、Include Path、扫不到控制块、中文乱码 4 个常见坑;附带一键跳转到仓库内RTTBSP/与examples/gd32-rtt/ - ✨ 示例工程
examples/gd32-rtt/- 完整可编译的 Keil MDK 工程(STM32F407 / GD32F407),主循环以SEGGER_RTT_printf输出李萨如曲线 XY 数据,配合 RTT 图表「智能启用」直接出波形;附examples/.gitignore防止误入库编译产物
文案修整
- 🔧 去掉 "RTTVIEW" 旧定位 - 项目已是烧录/RTT/串口/蓝牙四合一,但窗口标题、Cargo.toml description、index.html title、App 启动日志、release.yml release body 仍残留 "RTTVIEW",统一改为 "嵌入式调试工作台" 或直接去掉
- 🔧 设置中心「工具」页清理开发口吻 - "当前设置中心先收口主题、背景与更新,后续会继续并入..." → "外观、背景与更新检查在这里集中管理;通用偏好和图表默认值在「偏好」页";"保留几个高频提示。" → "几个常用功能的速查。"
- 🔧 设置中心其他副标题 - 背景显示 / 主题方案 / 日志面板高度 / 背景模式两张卡片说明全部重写,去掉 "首屏直接设置背景"、"按需展开"、"叠加本地图片" 这种简洁但费解的描述
- 🔧 偏好页"波形默认域" - "波形示波器默认优先展示时域还是频域。" / "串口进入波形工作流时默认优先展示的观察域。" → "RTT 进入波形 / FFT 时,默认显示时域还是频域。" / 串口同句式
- 🔧 AuthorAboutDialog 作者介绍 - "嵌入式工具链与桌面工作流方向的持续维护者,负责 EK-OmniProbe 的产品演进与核心实现。" → "专注嵌入式工具链与桌面端开发,主导 EK-OmniProbe 的功能设计与核心实现。";"由作者左岚发起与长期维护,下面提供作者主页和项目仓库入口。" → "由左岚发起并长期维护,下方是作者主页与项目仓库的链接。"
- 🔧 ThemeSchemeDialog - "参考 Entrance 风格整理了一组柔和的 Material 风格主题。" → "一组柔和的 Material 风格配色,挑一款喜欢的吧。"("Entrance 风格"是只有作者知道的内部引用)
- 🔧 ModeSwitch tooltip & 切换确认 - "RTT 模式 - 实时数据传输和调试" → "RTT 模式 - 实时调试输出与数据图表"(避免误解为串口);"RTT 正在运行中。…确定要继续吗?" → "RTT 正在运行。…确定继续吗?"
- 🔧 RttPanel / SerialPanel / BluetoothPanel 分屏副标题统一 - 单视图模式下"波形、FFT 与趋势图。",分屏模式下却变成"图表主视图。";三处统一为前者
- 🔧 SerialPanel 终端模式副标题 - "单会话终端。" / "终端会话。" → "终端视图(单会话)。"
- 🔧 RttToolbar / SerialToolbar 「更多」popover - "XXX 统一收在这里。" → "XXX 都在这里。";"低频查看项" → "显示选项"(用户不思考"高频/低频")
- 🔧 BluetoothPanel SPP 引导卡 - "EK-OmniProbe 直接复用「串口模式」的全部能力(…)。" → "EK-OmniProbe 直接在「串口模式」里使用,终端、收发分屏、波形、HEX、发送历史都正常可用。"
兼容性
- 🔧 Linux Pack 数据目录命名 -
~/.local/share/zuolan-daplink/packs→~/.local/share/EK-OmniProbe/packs,与 tauri identifierorg.embeddedkit.omniprobe对齐;老用户的旧目录如果有 Pack 数据会继续沿用旧路径,不会丢包 - 🔧 Tauri 签名密钥默认路径 -
~/.tauri/zuolandaplink.key→~/.tauri/ek-omniprobe.key;build.ps1优先找新路径,找不到自动回退到旧路径,本地已有签名配置无需迁移
清理
- 🗑️ 删除未使用的 Playwright e2e -
tests/e2e/只有一个 28 行测配色弹窗位置的 spec,CI 没跑,桌面应用核心功能(探针/烧录/RTT/蓝牙)也无法纯前端测;同步移除playwright.config.ts、@playwright/testdevDep、3 个test:e2e*script - 🗑️ 删除
TEST_KEIL/私人测试目录 - 该目录原本就在.gitignore里没入库,存的是作者本地 Keil 工程 + .pack 文件 + 视频例程压缩包;其中 GD32 RTT 工程清理掉编译产物后已迁到examples/gd32-rtt/,剩下的 stc32 / pack / 视频教程整体清理,.gitignore同步去掉对应条目 - 🔧
.github/latest.json.template- 旧zuoliangyu/ZUOLANDAPLINK仓库 URL + 旧产物名 → 新EmbeddedKitOrg/EK-OmniProbe占位模板(之前的模板若被发布脚本误用,updater 会直接 404) - 🔧 CLAUDE.md 标题 -
# ZUOLANDAPLINK 项目开发规范→# EK-OmniProbe 项目开发规范
📦 下载说明
| 平台 | 文件 | 说明 |
|---|---|---|
| Windows | *_x64-setup.exe |
NSIS 安装程序 |
| Windows | *_x64_portable.exe |
便携版(免安装) |
| macOS (Universal) | *_universal.dmg |
同时支持 Apple Silicon 与 Intel |
| Linux | *_amd64.deb |
Debian/Ubuntu |
| Linux | *_amd64.AppImage |
通用Linux |
💻 系统要求
- Windows: Windows 10/11 64位,需要WebView2运行时
- macOS: macOS 11.0+ (Big Sur或更高), 通用版支持 Apple Silicon / Intel
- Linux: 需要WebKitGTK和libusb
完整更新历史: CHANGELOG.md