API 接口文档

MRRC API 接口文档

基于 Vibe-SDD 方法论的API设计


1. WebSocket API

1.1 控制命令接口

频率设置

属性
方法 WebSocket
端点 /WSMRRC
方向 双向

请求:

{"action": "setFreq", "data": "7074000"}
字段 类型 描述
action string "setFreq"
data string 频率 (Hz)

响应:

{"action": "getFreq", "data": "7074000"}

模式设置

请求:

{"action": "setMode", "data": "USB"}
字段 类型 描述
action string "setMode"
data string 模式: USB/LSB/CW/AM/FM/CWR

响应:

{"action": "getMode", "data": "USB"}

PTT控制

请求:

{"action": "ptt", "data": true}
字段 类型 描述
action string "ptt"
data boolean true=发射, false=接收

响应:

{"action": "ptt", "data": true, "status": "ok"}

TUNE控制

请求:

{"action": "tune", "data": true}
字段 类型 描述
action string "tune"
data boolean true=开始调谐, false=停止

获取频率

请求:

{"action": "getFreq"}

响应:

{"action": "getFreq", "data": "7074000"}

获取S表

请求:

{"action": "getSMeter"}

响应:

{"action": "getSMeter", "data": "-73", "rx": true}

1.2 ATR-1000接口

功率/SWR同步

请求:

{"action": "atr_sync"}

响应:

{
  "action": "atr_status",
  "data": {
    "power": 50,
    "swr": 1.2,
    "sw": "LC",
    "ind": 10,
    "cap": 27
  }
}

手动设置继电器

请求:

{"action": "atr_set_relay", "data": {"sw": 1, "ind": 30, "cap": 27}}
字段 类型 描述
sw int 网络类型: 0=LC, 1=CL
ind int 电感值 (除10)
cap int 电容值

获取学习记录

请求:

{"action": "atr_get_records"}

响应:

{
  "action": "atr_records",
  "data": [
    {"freq": 7070000, "sw": 1, "ind": 30, "cap": 27, "swr_avg": 1.08}
  ]
}

1.3 WDSP控制接口

设置NR2

请求:

{"action": "wdsp_nr2", "data": true}

设置NB

请求:

{"action": "wdsp_nb", "data": true}

设置ANF

请求:

{"action": "wdsp_anf", "data": true}

设置AGC

请求:

{"action": "wdsp_agc", "data": 3}
模式
0 OFF
1 LONG
2 SLOW
3 MED
4 FAST

1.4 音频接口

TX音频帧

属性
方法 WebSocket Binary
格式 Int16 LE
采样率 16kHz
帧大小 320 samples

RX音频帧

属性
方法 WebSocket Binary
格式 Int16 LE
采样率 16kHz
帧大小 320 samples

2. HTTP API

2.1 静态资源

方法 端点 描述
GET / 主界面
GET /mobile_modern.html 移动端界面
GET /controls.js 控制脚本
GET /mobile_modern.js 移动端脚本
GET /mobile_modern.css 移动端样式

2.2 服务端状态

方法 端点 描述
GET /status 服务器状态

响应:

{
  "status": "running",
  "version": "V4.9.1",
  "clients": 2,
  "ptt": false,
  "freq": 7074000,
  "mode": "USB"
}

3. 错误码

3.1 通用错误

含义 处理方式
400 请求错误 返回详细错误信息
401 未认证 引导登录
403 无权限 权限不足提示
404 不存在 返回友好提示
500 服务器错误 记录日志

3.2 WebSocket错误

含义 处理方式
W1000 未知错误 断开连接
W1001 客户端断开 清理资源
W1002 协议错误 断开连接

4. ATR-1000协议

4.1 帧格式

┌──────┬──────┬──────┬─────────────┐
│ FLAG │ CMD  │ LEN  │ DATA...     │
│ 0xFF │ 1字节│ 1字节│ LEN 字节    │
└──────┴──────┴──────┴─────────────┘

4.2 命令类型

命令 方向 说明
SYNC 0x01 请求 触发设备返回数据
METER_STATUS 0x02 响应 功率/SWR 状态
RELAY_STATUS 0x05 双向 继电器状态
START_TUNE 0x06 请求 启动自动调谐

4.3 METER_STATUS解析

偏移:  [3]   [4]   [5]   [6]
数据:  PFH  PFM  PFL  SWRH  SWRL

PF = Power Forward (前向功率)
SWR = Standing Wave Ratio (驻波比)

计算公式: - Power = (PFH << 8) | PFL - SWR = ((SWRH << 8) | SWRL) / 100


文档信息 - 版本: 1.0 - 创建日期: 2026-03-15 - 最后更新: 2026-03-15 - 作者: MRRC Team