手持ちのOLEDをPixHawkに接続した。
ケーブルはI2Cなので、GPSモジュールの磁気センサーのI2Cと共用する必要があります。
I2C拡張ボードをPixHawkに接続して、 I2C拡張ボードのコネクタにM8N GPSモジュールの磁気センサーのコネクタを接続し、 そこにOLEDも接続します。
PixHawkの設定も変更します。 NTF_DISPLAY_TYPE コマンドで指定します。
デフォルトではDisableになっているので、OLEDのtypeに合わせた設定に変更します。
Mission Plannerの 設定/調整 のメニューから、 フルパラメータリストを選びます。
絞込み検索に Display と入力すると、
コマンドの列にNTF_DISPLAY_TYPEが表示されます。 デフォルトでは値が0になっているのでDisableの状態です。 これを接続したOLEDのtypeに合わせて変更します。
私の手持ちのOLEDは何も記載がありません。
ネットで形状をググると、SSD1306か SH1106のどちらかです。
試しにSSD1306だと考えて1と入れてみました。 設定ができませんでした、というようなメッセージが表示されます。
2と入れてみましたが、同じです。
試しにUSBケーブルを外してリブートをしてみましたが、何も表示されません。
ちょっとがっかりしましたが、気を取り直して、
もう一度1と入れ直して、 電源ケーブルを抜き差しして、リブートしたら、表示されるようになりました。
私の手持ちのOLEDは SSH1306だったようです。 マジックで書いておこう。
(結論)OLEDはI2Cに接続して、Mission Plannerで設定の NTF_DISPLAY_TYPEを1にすればよかったようです。 できてしまえば簡単でした。
0 件のコメント:
コメントを投稿