兼容性
支持的硬件
Vonode 节点能在哪些主机上运行、能使用哪些蜂窝模组。每一项都写明依据:已在真实硬件上测试,或代码已支持但尚未测试。
已实测Vonode 团队已在真实硬件上验证。每个型号分别标出测试过的功能。
兼容同一模组系列或已列入节点的型号表,或只试过单项功能;尚未在硬件上完整测试。
计划中暂不支持,计划在后续版本提供。
不支持已知无法使用,或不在节点的设计范围内。
主机
节点运行在一台长期开机的 Linux 电脑上。按处理器架构列出要求:
- 操作系统
- Debian 12、Ubuntu 22.04 及以上,或 Fedora,需使用 systemd(安装包的要求)
- 安装方式
- systemd 安装包(本版本推荐);Docker Compose 即将推出
- 系统软件包
- 完整的 iproute2(ip -V 输出 iproute2)、内核驱动 option 和 qmi_wwan;Wi-Fi 通话需要 /dev/net/tun
- 模组访问
- root 权限;已停用并禁止启动 ModemManager
- 网络
- 手机能通过端口转发或 VPN 访问到 TCP 2222 端口(默认)
- 硬件示例
- Intel N100 迷你主机、二手瘦客户机或 NUC;节点本身只需 2 GB 内存和 4 GB 磁盘
- 验证平台
- Ubuntu 22.04,amd64
- 操作系统
- 待确认
- 安装方式
- 使用多架构镜像的 Docker Compose(计划在 1.3.1 提供)
- 系统软件包
- 待确认
- 模组访问
- 待确认
- 网络
- 待确认
- 硬件示例
- 树莓派 4 和 5、RK3588 开发板(待确认)
- 验证平台
- 尚未测试
蜂窝模组
节点通过 USB,用模组的串口(AT)和 QMI 接口驱动基于高通平台的模组。一个节点最多连接五个模组。
已实测
部分实测
代码支持,未测试
不支持
测试过的功能(DJI Cellular 模块):经蜂窝网络和 Wi-Fi 通话收发短信;Wi-Fi 通话注册、双向有声的呼入和呼出、通话保持与恢复;eSIM 配置文件切换;移动数据连接。蜂窝网络通话目前在所有模组上都尚未确认。
| 模组 | 状态 | 验证平台 |
短信 | 蜂窝通话 | Wi-Fi 通话 |
eSIM | 移动数据 | 说明 |
| DJI Cellular 模块内置 Quectel EG25-G · 需先切换一次 USB 识别 |
已实测 | amd64 · Ubuntu 22.04 | 已实测已实测 | 不支持不支持 | 已实测已实测 | 部分实测部分实测 | 已实测已实测 |
已测试两台。短信:经蜂窝网络接收,经 Wi-Fi 通话收发。蜂窝通话:不支持;通话可经 Wi-Fi 通话进行。eSIM:在可插拔 eUICC 卡上切换配置文件;下载配置文件尚未测试。详见下方“使用 DJI Cellular 模块”。 |
|---|
| Quectel EG25-GUSB 2c7c:0125 |
兼容 | 未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 |
与已测试的 DJI 模块内部是同一款模组,但尚未单独测试。 |
|---|
| Quectel EC25EC25-E、-AF、-AU、-J 等地区版本 |
兼容 | 未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 |
与 EG25-G 属于同一 USB ID 系列。请购买适合你所在国家或地区频段的版本。 |
|---|
| Quectel EC20USB 2c7c:0125 系列 |
兼容 | amd64 · Ubuntu 22.04 | 代码支持,未测试代码支持,未测试 | 部分实测部分实测 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 |
曾用一个模组试过蜂窝通话:USB 音频可以开启,但尚未确认双向有声的通话。其他功能未测试。 |
|---|
| Quectel EC21 和 EG21LTE Cat 1 |
兼容 | 未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 |
已列入节点的型号表。 |
|---|
| Quectel EM05、EM06 和 EG06M.2 和 Mini PCIe LTE |
兼容 | 未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 |
已列入节点的型号表。需要带 USB 和 SIM 卡槽的转接板。 |
|---|
| Quectel RM500Q5G · M.2 |
兼容 | 未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 | 代码支持,未测试代码支持,未测试 |
5G 下的表现尚未测定。需要带 SIM 卡槽的 M.2 转 USB 3 转接板。 |
使用 DJI Cellular 模块
DJI Cellular 模块内置 Quectel EG25-G。出厂时它报告的是 DJI 的 USB ID(2ca3:4006),Linux 标准驱动无法识别。把它的 USB 识别切换成 Quectel 一次后,节点就会把它当作 EG25-G 使用。我们硬件测试用的模组,就是这样切换过的 DJI Cellular 模块。
示意图:这次切换只改变模组报告的 USB ID。
发送任何命令之前,请先阅读
- 这些命令只修改模组的 USB 识别,不修改 IMEI、固件,也不修改任何射频参数。
- 修改后,在恢复原识别之前,模块可能无法在 DJI 设备上使用;也可能影响保修。风险由你自行承担。
- 切勿修改模组的 IMEI。在许多国家,这是违法行为。
让 AT 口出现
把模块插到 Linux 主机上。DJI 模式下标准串口驱动不会自动绑定,所以先加载驱动,并在本次会话中加入 DJI 的 ID。之后模块会出现几个 ttyUSB 端口。
$ sudo modprobe option
$ echo 2ca3 4006 | sudo tee /sys/bus/usb-serial/drivers/option1/new_id
$ ls /dev/ttyUSB*
打开 AT 口
AT 口通常是 /dev/ttyUSB2,但编号以你的系统为准:输入 AT 后回复 OK 的那个端口就是 AT 口。可以使用 picocom、minicom 或 screen 等任意串口终端(picocom 用 Ctrl-A 再按 Ctrl-X 退出)。
$ sudo picocom -b 115200 /dev/ttyUSB2
切换为 Quectel 识别
在串口终端中输入这两条命令。第二条会重启模块;新的识别在断电后仍然保留。
AT+QCFG="usbcfg",0x2C7C,0x0125,1,1,1,1,1,0,0
检查结果
重启完成后,lsusb 应显示 2c7c:0125(Quectel)。此时节点的安装脚本就能检测到这个模块。
$ lsusb | grep -i -E '2c7c|2ca3'
恢复 DJI 原识别
如果要把模块重新用在 DJI 设备上,用同样的方法打开 AT 口并发送这两条命令。之后 lsusb 会重新显示 2ca3:4006。
AT+QCFG="usbcfg",0x2CA3,0x4006,1,1,1,1,1,0,0
命令改编自 wlzh/dji-4g-vohive-mac, 许可协议为 CC BY 4.0. 改动:改写为交互式串口终端的操作步骤,并增加了驱动绑定、查找 AT 口和 lsusb 检查。
DJI 是 SZ DJI Technology Co., Ltd. 的商标;Quectel 是 Quectel Wireless Solutions Co., Ltd. 的商标;Vonode 与 DJI 及 Quectel 无关联,也未获得其认可。
SIM 卡与运营商
- 请先在手机上关闭 SIM 卡的 PIN 码。实体 SIM 卡插上即可使用。
- 模组没有内置 eSIM。要使用 eSIM 配置文件,请在模组的 SIM 卡槽里插一张可插拔 eUICC 卡(俗称“eSIM 卡”)。
- Wi-Fi 通话需要运营商在你的套餐中开通,和手机上一样。模组必须至少用这张 SIM 卡在蜂窝网络上注册过一次。
- Vonode 无法保证某个运营商或套餐一定可用。能否使用取决于运营商的网络和套餐。
不支持
- 只提供网卡功能的 USB 上网卡(HiLink、仅 RNDIS 或仅 ECM 固件)。节点需要模组的串口和 QMI 接口。
- 不基于高通芯片平台的模组,包括上表未列出的 Quectel 系列。
- 其他厂商的模组尚未测试。部分功能使用 Quectel 专用的 AT 命令。
- OpenWrt 路由器、macOS 或 Windows 上的 Docker Desktop,以及没有 USB 直通的虚拟机。
- 本版本暂不支持 ARM 主机:计划在 1.3.1 提供,见上方 arm64 一列。