Betaflight4.1で実現したBidirectionalDshot機能は、ESCの条件がそろえばぜひとも使いたい機能だが、やはり4台のESCとリアルタイムで通信するため、F4のフライトコントローラーでは少し物足りない。F7コントローラーで、どれだけ、余裕ができるか興味がある。
FCと搭載ジャイロの問題
私の持っているF7ボードは F7 V1 Flight Controller STM32F722 5V/3A BEC w/ OSD Barometer
このボードは、Betaflightを乗せることが可能で、設定などに関しては何も問題は起きない。F7シリーズは、シグナルインバージョンの問題がないので、レシーバーのハードウェアハックなども不要で、扱いやすい。敢えて言うと、CLIでシグナルインバージョンの宣言が必要なことくらい。
serial 2 64 115200 57600 0 115200
set serialrx_provider = FPORT
set serialrx_halfduplex = ON
set serialrx_inverted = ON
ところが、BF3.5.7以降の4.0xをフラッシュすると、まったく使い物にならない。
破壊的オシレーション
Betaflight4.0xでは、使えなかったが4.1Xにアップデートしたことによって、この問題が解決されていることを望んでいた。がしかし、解決していなかった。バッテリーをつないで、モーターをアームすると、ローターの回転がスタートするが、舵を入れた瞬間に破壊的なオシレーションを起こす。問題は、このボードに搭載されたMPUとの相性が悪いこと。
F7搭載のフライトコントローラーの多くは、ジャイロを2つ搭載していて、Cliで使用するジャイロを選択できるので、多くの場合はMPU6000系のジャイロを選択すると問題は解決するが、このボードは、よりによって20689しか搭載していない。
ジャイロの選択例 使用したいジャイロを指定する。0か1
set gyro_to_use = 0
save
このボードではBF4.1x不可
残念ながらこのボードではBF4.1を実用することはできない。BF3.5.7に戻すか、あるいは、気圧高度計が付いているので、inavを乗せてfixed_wingで使うのがよさそうだ。
ちなみに、USBポートは、抜き差しを繰り返すと、基板からポロリと剥がれることがあるので、金属・ガラス用エポキシ接着剤で強化固定している。