EachineE011c等の既製品のファームウェアをSilverwareに書き換える(フラッシュする)ことによって、ファクトリーファームウェアにはない機能が追加されます。特に有効な機能はアクロモードの追加です。コンフィグファイルの設定を変更することで、動作やアクロ・レベルモードの切り替えなど、好みに調整できます。
silverwareを使用する利点
- サポートされたtinywhoop、クアッド用に既に調整されています
- アクロモードを練習するのに、1万円以上かかる機体を買う必要がなくなります。4~5000円ほどで作れます。
- 常に開発が進んでおり、新しい機能が追加されています
準備~Silverware化手順
ファームウェア(BoldClash-BWHOOP-P03)を準備する
https://github.com/mrvanes/BoldClash-BWHOOP-B-03ハードウェアを準備する:ST-Link V2
FCをPCに接続するためには、「st-link v2」を使用します。E011c、Beta FPV liteやBeecore lite等のSilverware標準搭載のFCにはソケットが付いているため、配線を直接はんだ付けせず「micro jst 1.25 4 pin」コネクタを使用すると接続が楽になります。
コネクタが使用できないボードの場合は、ワイヤをボードに直接半田付けします。
グランド(GND)、CLK(stlinkのSWCLK)、DAT(stlinkのSWDIO)の3本のワイヤが必要です。GnD < - > Gnd、CLK < - > SWCLK、DAT < - > SWDIOのように、STlinkとFCのパッド/プラグを接続します。
FCボードにはバッテリー(+)が含まれていますが、この説明書では使用しません。誤って接続しないように注意してください。正しい接続が不明な場合は、マルチメータを使用してください。
ソフトウェアの準備 1: st-link用のドライバ
ソフトウェアの準備 2:Keil uVision5
Silverwareのデフォルトで運用する場合はここは不要です。
Silverwareの設定をカスタムし再度ファームウェアをコンパイルするには、Keilというソフトをインストールする必要があります。
https://www.keil.com/download/product/
上記ページよりMDK-Armをダウンロードします。
クリックすると、姓名、メール、住所、所属組織などの詳細を入力する画面ですべて入力し、送信。※所属は厳密でなくてもよい
MDK-ARMのダウンロード画面に切り替わったらExeファイルをダウンロードしてインストール実行。けっこう重いです。
途中で登録画面がでてくるので、ダウンロード時につかった情報を再度入力して、起動できることが確認できたらとりあえず準備完了です。
工場出荷時のファームウェアを消去する:
1)STLinkUtilityを起動する。起動後の画面で待機してください。
2)FCのフラッシュ用のポートとST-Linkを接続します。
※まだこの時点ではSTLinkのUSBをPCと接続しない。
3)次のステップはFCの種類やロットでタイミングが違いますが、2~3秒以内に完了する必要があります。
バッテリーをFCに接続 ⇒ ST-LinkをPCに接続 ⇒ コネクトアイコンをクリック
まともに行うと5秒はかかりますが、コツをつかめば間に合います。
まず、STLinkのUSBをPCが反応しない程度に半分刺しておく。バッテリをFCに接続した瞬間にUSBを押し込み、直後にプラグマークのコネクトアイコンをクリックします。成功していれば、「Cannnot read memory~...」というメッセージが現れます。
4)[Target]メニューで[Option bytes]を選択します。
- 「レベル0」を選択してください(元のレベル1だったはずです)。誤ったレベルを選択すると、ボードを使えなくしてしまいます。
- 「レベル0」が選択されていることをダブルチェックします
- [適用]をクリックします(工場出荷時のファームウェアが消去されます - キャンセルするには[キャンセル]をクリックしてください)
5)これで、工場のファームウェアを消去し、切断をクリックし、ボードから電源を取り除き、次の部分に進みます。
新しいファームウェアをフラッシュする:
- STLinkをFCに接続し、USBを半分差し込み準備します。ここから2秒以内に行う工程です。
- FCとバッテリーを接続してから2秒以内にSTLinkUtilityのコネクトアイコンをクリック。成功するとプログラムの下部に接続の進捗状況が表示されます。
- ターゲットメニューで、「プログラムと検証」または「プログラム」を選択します。ポップアップがプログラムするファイルを要求します。ここでダウンロードまたはコンパイルされたファームウェア(.hex)を選択します。ファイルを選択した後、「開始」をクリックし、プロセスが完了するまで数秒待ちます。
新しいファームウェアはこの時点でフラッシュされ、使用することができます。
カスタム設定:pidsやその他の設定を変更する必要がある場合は、Keilを使用してファームウェアをソースからコンパイルすることができます。手順はここで説明します。pidは、ジェスチャーを使用して変更することもできます。
シルバーウェアのKeilコンパイル手順:
Keil uVisionで Keil uVisionは、インストールされていない場合は、プロジェクトファイルが開いているときに正しいパックをインストールするように求めます。「インストール」を選択し、インストールが完了するのを待ちます(ダウンロード)。これには時間がかかります。
コンパイルプロセス:
- https://github.com/silver13/BoldClash-BWHOOP-B-03からプロジェクトファイルをダウンロード、解凍します。
- Keil uVisionプログラムでプロジェクトファイル "/Silverware/silverware.uvprojx"などを開きます。これは、ファイルをダブルクリックするなどして行うことができます。Keil uVisionは、デバイスサポートをインストールしない場合は「インストール」をクリックし、完了するまで待つことがあります。ダウンロードが完了するまでに時間がかかる場合があります。
- あなたの好みに合わせて設定を変更します。主にconfig.hとpid.cを調整します。
- プロジェクトをコンパイルし、ウィンドウの下部にエラーがないことを確認します。ツールバーの「ビルド」アイコン、「プロジェクト/ビルドのターゲット」メニュー、または「F7」キーのいずれかを使用します。Keil氏はファイルの変更点も保存します。
- 「/ Silverware / Objects」フォルダ(名前は若干変更される可能性があります)を開き、ファイル「bwhoop.hex」を探します。これはファームウェアファイルで、 "st-link utility"プログラムを使ってクワドコプターにフラッシュされます。
通信プロトコル
ジェスチャーコマンド
Silverwareでは、多くの機能をスティックジェスチャーでおこなえます。現在、ジェスチャーでできる調整は次の種類があります。
ジェスチャー一覧:
左 - 左 - 下:アクロモード
右 - 右 - 下:レベルモード
上 - 下 - 下:次のP-I-Dの順番でpid項を変更
上 / 下 - 下:PID軸を変更する(ロール/ピッチ - ヨー)
上 - 下 - 左:選択した値を減らす
上 - 下 - 右:選択した値を大きくする
ジェスチャーのタイミング:
水平キャリブレーション:
下 - 下 - 下:加速度計キャリブレーション
レベルモード/アクロモードの切り替え
右 - 右 - 下:レベル・モード(またはチャンネルAUX1をオン)
左 - 左 - 下:アクロ・モード(またはチャンネルAUX1をオフ)
これらの機能はチャンネルを切り替えるので、レベルモードの切り替えだけでなく、チャンネルベースの他の機能にも使用できます。電源投入時の初期状態をアクロ・モードに変えることもできます。電源投入時にレベルモード(デフォルト・レベル)に戻すこともできます。#define AUX1_START_ON //パワーアップ値を変更する
PIDジェスチャー:
上 - 下 - 上:次のP-I-Dへのpid項のサイクル
上 / 下 - 下:PID軸を変更する(ロール/ピッチ - ヨー)
上 - 下 - 左:選択した値を減らす
上 - 下 - 右:選択した値を大きくする
下 - 下 - 下:変更された場合にはpidを保存する場合は加速キャリブレーション
ユーザー527FPVは、Macユーザー向けに、config.h、pid.cなどのファイルをカスタマイズし、簡単なクリックでコンパイルしてフラッシュさせるアプリケーションがあります。今のところ、NotFastEnufのコードのフォークがバンドルされています。このフォークは、すべてのSTM32ファイルをフラッシュできます。こちらからダウンロードするhttps://silverware.simonernst.com/
詳しい情報は、銀器のwikiにあります。
http://sirdomsen.diskstation.me/dokuwiki/doku.php?id=start
St-utility:
http://www.st.com/content/st_com/en/...w-link004.html https://app.box.com/s/flf2d36eoigv7keel253p5yssy2a8nac
プリコンパイルされたファームウェア(バイナリファイル)用bwhoop:Github
https://github.com/silver13/BoldClas...ree/master/bin
ソースコード:
https : //github.com/silver13/BoldClash-BWHOOP-B-03/
Linuxの手順:
https : //github.com/silver13/BoldClas ... ter / INSTALL.md
Wiki:
http://sirdomsen.diskstation.me/doku...u.php?id= start
ファームウェアのコンパイル手順:
https : //www.rcgroups.com/forums/show .. .e#post37391059 Frank4Wingによる
Devo 7e / 10アイコン
https://www.deviationtx.com/forum/bw...lverware-icons
E011フラッシュビデオby ONCLEFLY
https://www.rcgroups.com/forums/show...&postcount=812
Boldclash Bwhoop B03 Proレビューvid by On2_On4
https://www.rcgroups.com/forums/show...&postcount=822
E011 Flashビデオby Canino
https://www.rcgroups.com/forums/show...postcount=1035
Quad schematic by Ian444
https://www.rcgroups.com/forums/show...postcount=2025
上 - 下 - 右:選択した値を大きくする
下 - 下 - 下:変更された場合にはpidを保存する場合は加速キャリブレーション
OSXでフラッシュする
各種リンク:
詳しい情報は、銀器のwikiにあります。
http://sirdomsen.diskstation.me/dokuwiki/doku.php?id=start
St-utility:
http://www.st.com/content/st_com/en/...w-link004.html https://app.box.com/s/flf2d36eoigv7keel253p5yssy2a8nac
プリコンパイルされたファームウェア(バイナリファイル)用bwhoop:Github
https://github.com/silver13/BoldClas...ree/master/bin
ソースコード:
https : //github.com/silver13/BoldClash-BWHOOP-B-03/
Linuxの手順:
https : //github.com/silver13/BoldClas ... ter / INSTALL.md
Wiki:
http://sirdomsen.diskstation.me/doku...u.php?id= start
ファームウェアのコンパイル手順:
https : //www.rcgroups.com/forums/show .. .e#post37391059 Frank4Wingによる
Devo 7e / 10アイコン
https://www.deviationtx.com/forum/bw...lverware-icons
E011フラッシュビデオby ONCLEFLY
https://www.rcgroups.com/forums/show...&postcount=812
Boldclash Bwhoop B03 Proレビューvid by On2_On4
https://www.rcgroups.com/forums/show...&postcount=822
E011 Flashビデオby Canino
https://www.rcgroups.com/forums/show...postcount=1035
Quad schematic by Ian444
https://www.rcgroups.com/forums/show...postcount=2025