BLHeliSuiteを使って色々やってみました
今回導入した250HにはRaceStarの20AESCを積んでいます。こいつのFWはBLHeliなのでBLHeliSuiteを使うとFC越しにESCの細かな設定ができます。今回もモーターの配線はそのままに、回転方向を逆にするなど活躍してくれました(^^;;
BLHeliのESCでブートローダが対応しているとパススルーで設定できます(^^♪
現在のESCの状況を一度に把握できるのはとても便利です。
一応、FWは最新版に書き換えておきました。
一方ZMRのほうは組立時に黒いシュリンクチューブに包んでしまったままのESCなのですが、何を使っていたのか思い出せません。で、色々過去の購入履歴をあさると、どうやらEmaxの12AESC(FWはSimonK)だったようです(現在は廃盤)。普通に飛ばすなら今でも十分に使えるものですが、CleanFlightやBetaFlightなどから設定できるOneShotに対応できていなかったりするなど、ちょっと旧式化してきている感じです(^^;;
ESCは使っているCPUとFWで性能が大きく変わってきますが、基本的な仕様は非常に似通っています。ハードウェアの垣根を超えればソフトウェアで細かなチューニングをすることが可能なので、ここで一発SimonKをBLHeliに書き換えることにしました。SimonKもBLHeliもオープンソースで開発されていることもあり、グーグル先生にお尋ねすれば非常に多くの情報が得られます。ただ、玉石混交なので吟味は必要です(笑)
ライターとして用意したのはArduinoNano。使わなくなった小型卓上レーザー彫刻機についていたものです。BLHeliSuiteはArduinoを始め複数のライターに対応しており、個人の好みで選べばよいかと思います。手順としては
#ArduinoをBLHeliに対応させるよう書き換える
#ArduinoとESCをつなぐ
#BLHeliでFWを書き換える
書き出したらたった三行ですが、こいつに丸一日費やしました(笑) ArduinoをBLHeliに対応させるにはBLHeliSuiteにある"Make interfaces"からハードウェアを選ぶだけなのですが、これが何故かできない。出力ウインドウが表示されず、うんともすんともいいません。仕方なく、BLHeliSuiteフォルダ内のhexファイルをguidudeで直接書き込むことでここを乗り切りました。
Arduino Nano。500円くらいですが、立派なコンピュータです(^^♪
ArduinoとESCを接続するには両方のピンアサインを知っておく必要があります。市販のESCはたいていSilabsかATMELのチップが載っており、BLHeliSuiteはこの2種のチップをサポートしています。チップと交信するためのピンアサインはESCによってちがうのでBLHeliSuiteの参考資料から探し出します。今回のESCにはSilabsのチップが載っていました。基本的にGND/C2D/C2CKの3つをつなぐだけですが、ESCの種類・Arduinoの種類・使ったhexファイルによってピンレイアウトが変わりますのでよく確認してください。
GND/C2D/C2CKはそれぞれGND/D2/D3につなげました。
上手く繋がったらESCに電源をつなぎ、BLHeliSuiteから"FlashBLHeli"を選ぶだけです。上手く通信できていたら今現在のESCの状況が表示され、続いて書き換えるFWが表示されます。EMax12Aの場合はXP12AというFWを選ぶことになっているようなので、これを選択し書き換えます。無事書き換えが終われば、はれてBLHeliのESCの完成です。ただし、ブートローダーはそのまま(Nfets/Pfetsを外すと可能らしい)なので書き換える際は同じ手順を踏まないといけないのが面倒です(^^;;
こんな治具を作って書き換えました。接触は結構シビアです(^^;;
この方法でZMRにつんでいたESCをBLHeliに書き換えたので、この話はまた次回に。