跳到正文
发现
MODEM73:业余无线电软件调制解调器
命令行工具其他

MODEM73:业余无线电软件调制解调器

开源软件调制解调器,只需声卡和音频线,就能让任意 2400 Hz 带宽的 HF/VHF/UHF 电台传输数据。

admin
发布于 2026-11-04
浏览
1
访问
0
下载
0
版本
v2.5.0
平台
Linux、macOS
该作品还没有经过官方审核。访问演示、下载或复制命令前,请自行确认来源可信。

详细介绍

项目简介

MODEM73 是一个开源软件调制解调器(soundmodem),只要电台具备 2400 Hz 带宽,再配上一块声卡和一根音频线,就能在 HF、VHF、UHF 频段上传输数据。它支持 SSB、AM、FM 三种调制方式,与任何 KISS 应用即插即用,并开箱支持 rigctl、CM108 声卡设备和串口 PTT。

主要功能

  • 三组调制解调模式,接收端会同时解码全部模式,对方换模式发也不需要跟着切换:
    • OFDM:基于开源 COFDMTV modem,调制从 BPSK 到 QAM4096,码率 1/4–5/6,每帧负载 256–6144 字节;在同样的 2400 Hz 内速率约 790 bps 到 13 kbps 以上。
    • ROBUST:面向 40 米、80 米 NVIS 等衰落 HF 路径,提供五种模式,速率从 1150 bps 到 149 bps,可选 2400 Hz 或 600 Hz 窄带版本。
    • MFSK:非相干模式,适合弱信号传播与备份链路。
  • KISS over TCP,可接入 APRS 客户端、HamIRC、packet BBS 软件、Reticulum 以及自己写的程序
  • JSON 控制端口 API,可读取状态与修改配置
  • 终端里的轻量 UI,另有 headless 模式适合嵌入式使用
  • 六种 PTT 方式:NONE、Hamlib、Rigctl、VOX、Serial、CM108
  • 内置 CSMA 忙检测与发送时序预设
  • 自带 update.sh 更新脚本

安装与使用

想在浏览器里先试效果,可以打开在线 demo,点「Start microphone」开始解码:

https://rfnexus.github.io/modem73-wasm-demo/

从源码构建(Linux):

sudo apt install git build-essential libncurses-dev g++
git clone https://github.com/RFnexus/modem73
cd modem73 && make && sudo make install

也可以直接运行 ./install.sh。macOS 需先 brew install ncurses,再执行 make。

可选依赖:sudo apt install libhamlib-dev 启用 Hamlib PTT,sudo apt install libhidapi-dev 启用 CM108 USB PTT。

运行:

./modem73            # UI 模式
./modem73 --headless # 无界面模式
./modem73 --help

默认监听 8001 端口,控制端口默认 8073。

选择模式:

./modem73 --head-m QAM16 -r 3/4 --normal
./modem73 --robust-mode RDM-600S
./modem73 --mfsk-mode MFSK-16

PTT 示例:

./modem73 --ptt vox --vox-freq 1200 --vox-lead 500 --vox-tail 150
./modem73 --ptt com --com-port /dev/ttyUSB0 --com-line rts
./modem73 --ptt cm108 --cm108-gpio 3

更新到最新版本:./update.sh

注意事项

  • 所有模式都要求 2400 Hz 带宽。VHF/UHF FM 用任意 OFDM 模式;良好的 HF SSB 路径建议用 8PSK 1/2 或更低;衰落或较弱的 HF 路径用 ROBUST;极弱信号或备份链路用 MFSK。
  • 在 Pi Zero 2 这类内存受限设备上从源码构建需要先增大 swap;该机型同时只能跑一个解码器,CPU 吃紧时可在 CONFIG 里关掉不用的解码器。
  • 使用 AIOC 音频线时,PTT 设为 COM,PTT 线设为 BOTH,Invert 设为 INVERT RTS,端口通常是 /dev/ttyACMx,重启或重新插拔后可能变化。
  • Windows 移植在 modem73-win 仓库,Android 版在 modem73-android 仓库。
  • 想和 Reticulum 一起用,可配合 modem73interface 项目,放进 ~/.reticulum/interfaces/ 并在配置里添加对应接口。

本作品整理自 GitHub 开源项目 RFnexus/modem73,原作者 @RFnexus,许可证 Unlicense。中文介绍由 AI 根据项目 README 整理,以原仓库为准。

更新记录

  1. v2.5.0当前版本

    新增可选音频后端(auto、alsa、pulse、jack),修复 CSMA 问题并缩短等待时间;各站需统一升级到 2.5.0 才能使用这些新特性。

评论