ひーちーのつぶやき

Macいじり,3DCG,デジカメ,ドローンを楽しんでます。

Hobby マルチコプター

CC3D Revolution miniで外部電子コンパスを使うためにLibrePilot最新版をコンパイル。その2

CC3D Revolution miniで外部電子コンパスを使うためにLibrePilot最新版をコンパイル。その2さて、CC3D Revolution miniの内蔵電子コンパスがノイズに弱く使いこなせないので
BN-880に搭載している電子コンパスを使っちゃおう!!という理由だけど
LibrePilotの開発中の最新版をBuildすることにした。

まずは、僕のメイン環境であるMacでコンパイル・Buildしようと情報収集した。
LibrePilotのデベロッパマニュアルのMacでのBuildとパッケージの項を読めば手順は
わかるので手順通りにやってみた。

MacでLibrePilotをBuildしてパッケージ化してみる

まずは、xcodeがインストールされていない場合はインストール。

そして、ターミナルから
xcode-select --install
と打ち込んでエンターを押すと、インストールするか!?って聞かれるのでインストール。

次にHomebrewをこのページの内容を読みながらインストール

brew install curl
brew install p7zip
brew install gnu-tar

を順番に打ち込んでツールをインストール。

SDLをインストールして

cd /Library/Frameworks/SDL.framework/Headers
ln -s SDL .

と打ち込むなどなどと前準備は順調に進捗した。

問題は、

make all_sdk_install

を打ち込むと時々「このバージョンのMacOSには対応していません!!」とワーニング。
きにせず最後まで終わらせて、

make all_osg

を打ち込んでも、最後にエラー1がでてしまう。
omg_earthのバージョン2.7がないよって怒ってるみたい。

そのまま進んでパッケージ化してみた。

make -j8 package

ってうちこみ順調にパッケージ化され完了。

しかし・・・・インストールして起動するとプラグイン読み込み中から進まない。
やっぱ、何かおかしかったみたいなのでMac版のBuildは一旦諦め。

しかたないWindows版をBuildするしかないな

Windows版の方法は、デベロッパマニュアルのWindowsでのBuildパッケージ項
読んで手順通りに勧める。

Trend Micro OKAERI - トレンドマイクロ

まずMsys2という開発環境をインストールする。
64bit版でも32bit版どちらをインストールしても64/32bit版のBuildパッケージ化が
できるので好きな方をいれろって事なので64bit版を入れた。

なぜかというと、僕のWindows10はParallels Desktop 11 for Macの上で動作させていて
64bit版だからというだけの理由。

なんか、Mac版より手順は簡単で
pacemanコマンドで必要なツールをインストールしてgitで最新ソースのコピーを自分の
パソコン内に配置する。

そして、

mingw32-make all_sdk_install

mingw32-make package

で完了。

Parallels DesktopScreenSnapz014

64bit版をBuildするときは64bit版Shellで上記コマンドを使い32bit版では32bit版Shellで
同じ事を行うと32bit版が完成する。

Windows版は特に問題無く完成した!!

実際にLibrePilotの最新開発途中版で外部電子コンパスを設定

完成したインストーラはこんな感じのアイコンと名前。

Parallels DesktopScreenSnapz018 Parallels DesktopScreenSnapz017

 

 

15.09+r373-g48f5cba版っていうのかな?
インストールして起動すると一部表示がおかしい部分などがあるけど正常動作している。

ファームバージョンも更新されるのでアップデート。

Parallels DesktopScreenSnapz015

コンフィグタブのハードでFlex PortのI2C設定を確認しシステムタブでAUX MAGの
設定を変更する。

Parallels DesktopScreenSnapz016

もともと、Flexが選択できなかったけど本バージョンで選択できるようになっていた。
赤↑アイコンをクリックして保存して再度ブート。

あ、その前にCC3D Revolution miniBN-880に通電するためにバッテリーを接続して
USBコネクタを接続する。
すると、電子コンパスのデータは内部ではなく外部のものになる。

これで、問題解消!!

って思ったのだが、さらに意味がわからない問題が発生した。

-Hobby, マルチコプター
-, , , , ,