配置 Pixhawk 带的无线串口

配置无线串口可以提高发射功率、波特率,改变网段避免冲突,官方有指导

安装依赖 SDCC

1
sudo apt-get install sdcc

编译固件

1
2
3
git clone https://github.com/tridge/SiK.git
cd SiK/Firmware
make install

上传

1
tools/uploader.py --port /dev/ttyUSB* dst/radio~hm_trp.ihx

配置

默认波特率为 57600,通过 screen 连接

1
screen /dev/ttyUSB* 57600 8N1

几个常用 AT 命令如下:

  • +++ 进入 AT 模式
  • ATI5 罗列选项
  • AT&W 保存配置
  • ATZ 重启模块

3DR 官方也有提供 windows 下的配置软件,强烈推荐使用,因为有中文,每项选项都有详细的解释,有助迅速理解。

一些概念

  • 无线串口推荐连接到 Pixhawk 的 TELEM1 口。 TELEM2 及 Serial4/5 也可以用,不过不建议。

  • 当传送的数据里包括 MAVLINK_HEARTBEAT 信息时, 无线串口固件会偷偷地发送一个叫 MAVLINK_RADIO 的包。

  • MAVLINK_RADIO 包包含 RSSI,错误率以及串口 buffer 的容量!!!APM 固件针对这个包的数据,会调整发包速率,避免串口发不过来

  • 无线串口固件会尝试把几个包合成一个包进行发送,这个合成包的最大 size 为 252 字节。

  • 按照教程的说法,串口会保证在 MAX_WINDOW 的时间内发送一次,减小 MAX_WINDOW 会缩小带宽。所以应该是这样理解: MAX_WINDOW 没到,串口会收集数据包,到了以后一次全发送出去; 提高发送频率,会导致每次发送的数据包数量变少,减少的数量大于频率提高增加的数量,所以带宽就小了。