最近调试的时候,有小伙伴反馈,PX4 V6X/V6C版本,QGC(QGroundControl)里mavlink1配置为 TELEM2接口。
重启PX4后,QGC配置界面里还是找不到SER_TEL2_XXX相关的配置, 也没有MAV1_相关的配置:
// 没有以下配置选项
MAV_1_CONFIG = TELEM 2
MAV_1_MODE = Onboard
MAV_1_RATE = 921600 baud
MAV_1_FORWARD = True
但是遥测 TELEM1 和 TELEM3接口的配置都是正常的。
使用下面命令在命令行里执行,发现参数无法保存,直接指定波特率和接口却是正常的。
param set-default SER_TEL2_BAUD 115200
reboot
param set SER_TEL2_BAUD 115200 // 无法保存
mavlink start -d /dev/ttyS4
// 下面命令正常运行,通信也正常
mavlink start -b 115200 -d /dev/ttyS4
使用mavlink status 发现ttyS4已经被占用了。
然后打开 rc.board_mavlink 启动配置文件,可以看到TEL2在某些版本里默认被配置为了onboard 板载主机通信,并且阻止配置为普通功能。
#!/bin/sh
#
# PX4 FMUv6X specific board MAVLink startup script.
#------------------------------------------------------------------------------
# if skynode base board is detected start Mavlink on Telem2
if ver hwbasecmp 009 010 011
then
mavlink start -d /dev/ttyS4 -b 3000000 -r 290000 -m onboard_low_bandwidth -x -z
# Ensure nothing else starts on TEL2 (ttyS4)
set PRT_TEL2_ 1
fi
所以要么修改rc.board_mavlink 文件,注释掉TELEM2的默认功能,要么换TELEM3口做mavlink通信。
注释掉此功能,重启。 所有选项都出来了。
村头于大爷也可以搞定的PX4、高性能V6X版本飞控:
购买后请留下邮箱,后续如有更新,同步向此邮箱发送一份。