返回资讯中心
外部精选
软件工程
#开发者实时流

开源固件为宝锋 UV-5RM 对讲机加入短信等功能

来源标题:UV-5RM-Radio-Mod

基于开源项目 bf-5rh-firmware-open 的第三方固件为宝锋 UV-5RM 对讲机新增了最多 50 字符的文本消息功能,支持送达确认、重试和保存,无需手机、网络或额外硬件。该固件还提供频段扫描、中继查找、信号搜寻等应用,但刷写后无法恢复原厂固件,CHIRP 也将失效,目前仅在两台设备上测试过。

Hacker News 最新nickmcc2026/11/6 · 今天12 分钟阅读

以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。

这个仓库包含宝锋 UV5-RM 电台的新固件,新增了包括短信在内的多个应用。注意:CHIRP 将无法再使用,请用随附的应用来设置频道和分类。

这是为宝锋 UV-5RM 打造的自定义固件和附加应用,基于开源的 bf-5rh-firmware-open 构建。主要新增功能是 TEXT:两台电台之间互发短文本消息,带送达确认,无需手机、互联网或额外硬件。

刷机后无法撤销。目前没有已知适用于此硬件的出厂固件副本,因此无法恢复到原厂状态,而且 CHIRP 也无法再与该电台配合使用。刷机失败可能让电台变砖。目前只在两台电台上运行过,请自行承担风险。

功能 作用 TEXT 发送最长 50 个字符的消息,反复重试直到确认送达,保存消息,并在收到消息时播放提示音 扫描模式 按 Band 键在天气、警察/消防/急救、航空、中继、FRS、GMRS、MURS 等模式之间切换,也可输入自定义频率范围 BAND SWEEP 对整个频段进行扫描以寻找活动信号 RPT FINDER 推算中继台的输入频率和亚音 FOX HUNT 信号强度和粗略距离估算,用于寻找发射源 SEARCH/QT SCAN 查找附近信号的频率,或当前频道上的亚音;按 1 切换 外观与体验 骷髅开机标志、黑红配色菜单和自定义开机音乐

截图:参见 UV-5RM Custom Firmware 中的 preview_*.png 文件。 此固件只适配一种硬件版本。外观相同的电台可能使用不同的芯片。 需要一台 Windows PC。工具是用 Python 写的,其他系统或许也能用,但未经测试。 需要 Python 以及串口库:py -m pip install pyserial 需要一根宝锋编程线。下面的命令假设端口为 COM3,请根据你的实际端口修改。 请从 UV-5RM Custom Firmware 文件夹中运行这些命令。

  1. 备份电台。刷机模式无法读取电台,所以要先做这一步,操作时电台需开机并停留在主界面。这一步只读取。电台可能需要重新开关机后才会响应,并且目标文件夹必须已存在。

mkdir my-backup py source-changes\radio_read.py COM3 my-backup\factory_memory.img

  1. 进入刷机模式。关闭电台,按住两侧按键再开机。屏幕保持黑屏。检查它是否能响应(此操作不写入任何内容):

py source-changes\bootloader_probe.py COM3

  1. 刷机。这是不可回头的一步。整个过程不到一分钟,期间不要触碰电台或线缆。那串长数字是校验和,工具会拒绝与校验和不匹配的文件。

py source-changes\flash_bf.py UV-5RM_Custom_Firmware.BF COM3 4340f205430f0741

  1. 安装标志和应用。等待电台重启回到主界面。此步骤会读回所有内容以进行确认。

py source-changes\setup_radio.py COM3 skull_logo.rgb565 64 apps

  1. 开启发射。出于安全考虑,发射默认关闭。进入 SETTINGS,将 TXINH 设为 off。

  2. 加载频道(可选)。在 Chrome 或 Edge 中打开 UV-5RM_Channel_Uploader.html。此仓库中的频道列表适用于内华达州克拉克县,请确认是否适合你所在地区。你的电台应会保留原有的频道。

要选择扫描哪些频道,打开 UV-5RM_Scan_Builder.html,勾选想要的频道,然后将它保存的 CSV 加载到上传工具中。

可选附加项:set_boot_tune.py 可设置 Doom 风格的开机旋律,set_radio2_mario_tune.py 可设置超级马里奥风格的旋律,但后者只能在某一台特定电台上运行,请复制并修改后用于你的电台。

两台电台都需要打开 TEXT,并处于同一 simplex 频率。它使用你打开该功能时电台所在的频率。不要使用中继台。

你需要对自己发射的内容负责。

firmware-source 是所提供的固件和应用的完整源码;固件和 TEXT 已确认可以逐字节重建。它需要 Rust 以及其 rust-toolchain.toml 中指定的 target。请使用较短的 --target-dir,因为长路径在 Windows 上会导致链接失败。

cargo build --release --manifest-path firmware-source/Cargo.toml --config firmware-source/.cargo/config.toml --target-dir C:/t/fw py source-changes/elf2bin.py C:/t/fw/thumbv7em-none-eabi/release/bf5rh-fw fw.bin

source-changes 存放针对上游的补丁和 PC 工具。source-changes/simulator 可在模拟电台上运行这些应用,无需真实硬件:

cargo build --release --manifest-path source-changes/simulator/Cargo.toml --target x86_64-pc-windows-msvc --target-dir C:/t/sim C:/t/sim/x86_64-pc-windows-msvc/release/sim.exe out-folder skull_logo.rgb565

输出文件夹必须已存在。模拟器只检查逻辑,无法证明真实电台在空中的行为。

固件基础:bf-5rh-firmware-open 调制解调器设置参考自 UV-K5 社区的 messenger 固件 按 GPL-3.0 许可,与其所基于的固件相同。参见 LICENSE。 按原样提供,不附带任何担保。

正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。

打开原文
去社区讨论 →