ExpressLRS受信機のファームウェアをアップデートする方法
ExpressLRSは開発中のプロトコルであるため、頻繁にバージョンアップが続いています。 ここでは、ExpressLRS受信機のファームウェアをアップデートする方法を紹介します。
Show this page in English
もくじ
2種類の受信機接続形態
FCとELRS受信機との接続形態には2種類あります。 一つは、FCと受信機がSPIで接続されている、AIO(All In One)タイプのFCに内蔵されている受信機、 そしてもう一つは、受信機がFCのUARTポートにケーブル(シリアル)接続されている、外付けタイプの受信機です。 これらの接続形態に合わせて、ファームウェアのアップデート方法も異なっています。注意: 2022年以降、AIOタイプのFCであっても、内部的には受信機がUART(シリアル)接続されている製品が発売されています。 この場合は外付けタイプの受信機の手順を使ってアップデートしてください。
また、今後SPI接続の受信機はサポートされなくなる見込みです。このようなFCは使用できなくなるのでご注意ください。
バージョン2.xから3.xへのアップデート:Not Enough Spaceエラーへの対応
受信機のモデルによっては、バージョン2.xから3.xへアップデートすると「Not Enough Space」エラーが表示される場合があります。 これを解決するには、一旦バージョン2.5.1以降にバージョンアップしたうえで、バージョン3.xファームウェアをインストールします。なお、この手順が必要なのは、Wi-Fi経由でアップデートする場合のみです。 USB(UART)経由の場合は必要ありません。
ExpressLRSオフィシャルサイトの Quick Start ガイド画面で、メニューから[Receivers]-[Updating Receivers]-[(受信機モデル名)]画面を開くと、詳しいファームウェア更新手順が確認できます。
受信機モデル名の画面に、右図に示したような注意書きがある場合は、一旦2.5.1以降にバージョンアップが必要です。
Quick Start | Getting Started (ExpressLRS)
FCに内蔵されているELRS受信機をアップデートする場合
ここで解説するのは、FCと受信機がSPIで接続されている、AIO(All In One)タイプのFCに内蔵されている受信機をアップデートする場合の手順です。この場合、ELRS受信機のファームウェアは、FCのファームウェアに含まれています。 Betaflight Configurator を使って、FCのファームウェアをバージョンアップすることによって更新します。 この手順については、 初心者のためのBetaflight Configuratorのインストールと使い方 をご覧ください。
BetaflightとELRSのバージョンの組み合わせは下表のとおりです。
Betaflight Version | Built-in SPI ELRS Rx FW Version |
---|---|
4.4.x | 3.x |
4.3.x | 2.x |
SPI Receivers (expresslrs.org)
ExpressLRS over SPI - sx1280 and sx1276 support (betaflight github)
初心者のためのBetaflight Configuratorのインストールと使い方
ビルドオプションの設定方法
FCに内蔵されている受信機で「Binding Phrase(バインディング・フレーズ)」などの ビルドオプション を設定するには、Betaflight Configurator CLI画面のコマンドラインから入力します。 なお、これらのコマンド入力後は"save"コマンドを入力することを忘れないようにしてください。
set expresslrs_uid = 246,137,113,221,86,15
Binding Phraseをセットします。
詳しくは
ExpressLRS 送信機と受信機をバインドする方法
をご覧ください。
set expresslrs_rate_index = [インデックス]
Packet Rateをセットします。
インデックスには 0(500Hz) / 1(250Hz) / 2(150Hz) / 3(50Hz) のいずれかを指定します。
詳しくは
ExpressLRS送信機の設定方法
をご覧ください。
set expresslrs_domain = ISM2400
Regulatory domainsをセットします。
引数には AU433, AU915, EU433, EU868, FCC915, IN866, ISM2400 が指定できます。
2.4GHz帯をEU圏以外で使用する場合は"ISM2400"を選択します。
ExpressLRS ファームウェアのビルドオプション
外付けELRS受信機をアップデートする場合
ここで解説するのは、受信機がFCのUARTポートにケーブル(シリアル)接続されている、外付けタイプの受信機をアップデートする場合の手順です。アップデート方法の基本
アップデートは、パソコンにインストールした ExpressLRS Configurator を使って行います。
外付け受信機の更新方法には、USBケーブルを使う方法(BetaflightPassthrough)、Wifiを使う方法、STLinkユニットまたはUSB-TTLシリアルコンバーター(FTDI)を使う方法があります。 ただし製品によって使用できる方法は限られています。受信機メーカーのWebサイトなどをご確認ください。
USBケーブルを使う場合には、まず受信機をFCのUARTポートに結線します。 つづいて Betaflight Configurator で、受信機が接続されているUARTポートとそのプロトコルを確認/設定します。 そしてUSBケーブルでFCとパソコンを接続し、 ExpressLRS Configurator を使って更新します。 この手順を「BetaflightPassthrough」と呼びます。
Wifiを使う場合は、受信機がWifiアクセスポイントとして動作します。 プロポを起動せずに受信機(ドローン)の電源のみを投入して約60秒(時間はファームウェアの設定による)待つと、受信機がWifiモードになります。 パソコンをWifi経由で受信機に接続して、ブラウザからファームウェアをアップロードします。 なお、ELRS受信機にはSTM32チップを使うものとESP8285チップを使うものの2種類がありますが、 STM32チップを使った受信機にはWiFi機能はありません。
STLinkまたはUSB-TTLシリアルコンバーター(FTDI)を使う場合には、まずSTLinkユニットまたはUSB-TTLシリアルコンバーター(FTDI)と受信機をワイヤーで接続します。 そしてこれをパソコンのUSBコネクタに接続し、ExpressLRS Configuratorを使って更新します。 STLinkユニットを使う場合は"Flashing Method"に"STLink"を、USB-TTLシリアルコンバーターを使う場合は"UART"を選択します。
STLink V2 を買う (Amazon.co.jp)
USB-TTLシリアルコンバーター を買う (Amazon.co.jp)
ファームウェアが書き込まれていないとき
ファームウェアが全く書き込まれていないELRS受信機をセットアップするには、最初にBootloaderを書き込む必要があります。 この方法についてはELRSオフィシャルサイトの Receiver Wiring のページで読めます。
Receiver Wiring (expresslrs.org)
USB経由の場合:FCの設定を確認する
BetaflightPassthroughを使う場合は、Betaflight ConfiguratorでFCとELRS受信機の接続に関する設定を確認しておきます。
Configuring FC (expresslrs.org)
そしてELRS受信機を接続したUART(図の例ではポート1)の、「シリアル受信」欄がONになっていることを確認します。
USB経由の場合:受信機ファームウェアのビルドと更新
BetaflightPassthroughを使う場合、ファームウェアのビルドと更新には ExpressLRS Configurator を使います。なお、事前に Betaflight Configurator など、COMポートを使用するソフトは終了しておきます。
また、ドローンをパソコンに接続してしばらく放置すると、VTXが熱を持って暴走する可能性があります。 ドローンの近くに小型の扇風機等を置いて、冷やしながら作業してください。
ExpressLRS Configuratorのインストール方法
"リリース"欄で、インストールするファームウェアのバージョンを選びます。 初期値は最新バージョンが選択されています。
"デバイスのカテゴリ", "デバイス"欄で、対象となるデバイスを選択します。 受信機の場合は、デバイス名に"RX"と含まれていると思います。
"フラッシュ方法"欄で、ファームウェアの書き込み方法を指定します。 USB経由の場合は「BetaflightPassthrough」を選択します。
選択すべきデバイス名が分からないときは、受信機をWiFiモードにしてパソコンからアクセスしてみてください。 するとターゲットデバイス名と現在のELRSバージョンを見ることができます。 詳しくは WiFi経由の場合:パソコンを受信機に接続する をご覧ください。 ただしWiFiモードを持たない受信機もあります。
規制ドメイン
2.4GHz帯をEU圏で使用する場合は"EU_CE_2400"、EU圏以外で使用する場合は"ISM_2400"を選択します。
バインディングフレーズの設定
"任意のバインディングフレーズ"と書かれているところには、送信機と受信機のバインドに使う“合言葉”「Binding Phrase(バインディング・フレーズ)」を指定します。 送信機と受信機双方に同じフレーズをセットしておくと、ただ電源を入れるだけで自動的にバインドされます。 なお、"BINDING_PHRASE"のチェックを外すと、「Binding Phrase」を使わずに、マニュアルでバインドすることができます。
ネットワーク
"AUTO_WIFI_ON_INTERVAL"欄で、電源投入からWi-Fiモードに切り替わるまでの時間が指定できます。 単位は秒、初期値は60秒になっています。
このほかのオプションの詳細については、ExpressLRS オフィシャルサイトの下記ページで読めます。
Firmware Options (expresslrs.org)
User Defines Explained (expresslrs.org)
ExpressLRS ファームウェアのビルドオプション
ExpressLRS 送信機と受信機をバインドする方法
製品によっては、BetaflightPassthroughを使って、購入後初めてファームウェアを更新する時には、bootloaderモードに切り替える必要がある場合があります。 メーカーのWebサイトを確認してください。
受信機ボード上にBoot端子がある場合は、 これをブリッジしてショートさせた状態で、FCをUSBコネクタ(またはバッテリー)に接続して起動します。 するとbootloaderモードに切り替わります。受信機のLEDが常時点灯となり、ファームウェア更新が可能になります。
受信機ボード上にBind/Firmware Upgradeボタンがある場合は、 ボタンを押しながらFCをUSBコネクタ(またはバッテリー)に接続して起動します。 ボタンを押しつづけるとbootloaderモードに切り替わります。受信機のLEDが常時点灯となり、ファームウェア更新が可能になります。
このような操作が必要なのは、工場出荷時のプリインストールファームウェアを書き換える場合の、最初の1回のみです。
製品別の詳しい手順については、ELRSオフィシャルサイトの Quick Start のページを開き、メニューから[Receivers]-[Updating Receivers]-[(製品名)]を選んでください。
なお、 WiFi経由で更新する場合 は、このような操作は不要です。
以上でファームウェアのアップデートは完了です。
WiFi経由の場合:受信機ファームウェアのビルド
BetaflightPassthrough(USB経由)の場合の手順 と同様に、パソコンで ExpressLRS Configurator を使って、受信機ファームウェアのビルドを行います。"リリース"欄で、インストールするファームウェアのバージョンを選びます。
"デバイスのカテゴリ", "デバイス"欄で、対象となるデバイスを選択します。 受信機の場合は、デバイス名に"RX"と含まれていると思います。
"フラッシュ方法"欄で、ファームウェアの書き込み方法を指定します。 WiFi経由の場合は「WiFi」を選択します。
また、オプションは BetaflightPassthrough(USB経由)の場合の手順 と同じように指定します。
Firmware Options (expresslrs.org)
User Defines Explained (expresslrs.org)
ExpressLRS ファームウェアのビルドオプション
選択すべきデバイス名が分からないときは、受信機をWiFiモードにしてパソコンからアクセスしてみてください。 するとターゲットデバイス名と現在のELRSバージョンを見ることができます。 詳しくは WiFi経由の場合:パソコンを受信機に接続する をご覧ください。 ただしWiFiモードを持たない受信機もあります。
なお、過去にオプション「HOME_WIFI_SSID」と「HOME_WIFI_PASSWORD」を設定したファームウェアを書き込んでいた場合は、 受信機をWiFiモードにすると、家庭内LANに接続されます。 この場合は「BUILD &FLASH」ボタンをクリックすれば、ファームウェアの書き込みまで一気に行うことも可能です。
後で受信機への書き込みを行うため、このエクスプローラー画面は閉じずにそのまま残しておきます。 なお、ファームウェアの格納フォルダは"C:\ユーザー\[ユーザー名]\AppData\Local\Temp"の下に生成されます。
WiFi経由の場合:受信機をWiFiモードに切り替える
プロポを起動せずに、FC(受信機)のみをバッテリーに接続して起動します。 約60秒(時間はファームウェアの設定による)待つと、受信機がWifiモードになります。 受信機のLEDが高速に点滅します。なお、ドローンの電源を入れてしばらく放置すると、VTXが熱を持って暴走する可能性があります。 ドローンの近くに小型の扇風機等を置いて、冷やしながら作業してください。
また、受信機に取り付けられているLEDの点灯パターンとその意味は、ELRSオフィシャルサイトの LED Status (expresslrs.org) のページで読めます。
LED Status (expresslrs.org)
WiFi経由の場合:パソコンを受信機に接続する
なお、ELRS受信機のWiFi電波は非常に弱いので、パソコンを受信機のすぐそばに置いてください。
受信機の画面は4つあり、画面中央に並ぶ[OPTIONS], [WIFI], [MODEL], [UPDATE]をクリックすると、画面を切り替えることができます。
[OPTIONS]画面では、 Binding Phrase(UID byte), WiFiモードに切り替えるまでの時間(秒), UARTのボーレートなどを変更したり、その設定ファイルをダウンロードすることができます。
[WIFI]画面では、 受信機のWiFi機能を、アクセスポイントモードとして使用するか、家庭内LANに接続するかを切り替えることができます。 家庭内LANへの接続設定を記憶したまま、一時的にアクセスポイントモードにすることもできます。
[MODEL]画面では、 パラメーター"Model Match"のON/OFFや、テレメトリーのON/OFFが設定できます。
"currently running firmware"の文字をクリックすると、現在受信機に書き込まれているファームウェアをパソコンにダウンロードすることができます。
画面の先頭部分にターゲットデバイス名と現在の受信機ファームウェアのバージョンが表示されています。 画面をスクロールすると、ファームウェアのアップデートや、各種オプションの設定ができます。
WiFi経由の場合:受信機のファームウェアを更新する
以上でファームウェアのアップデートは完了です。
アップデートに失敗した!文鎮化からの脱出
ファームウェアのアップデートに失敗して、受信機が動作しなくなった場合も、ハードウェアは故障していません。 ファームウェアを焼き直すことができれば、文鎮化から脱出できます。ESP8285チップを搭載した受信機であれば、それをbootloaderモードに切り替えることにより、ExpressLRS Configuratorを使ってファームウェアを焼き直すことができます。
受信機ボード上にBoot端子がある場合は、 これをブリッジしてショートさせた状態で受信機を起動します。 するとbootloaderモードに切り替わります。受信機のLEDが常時点灯となり、ファームウェア更新が可能になります。
受信機ボード上にBind/Firmware Upgradeボタンがある場合は、 ボタンを押しながら受信機を起動します。 ボタンを押しつづけるとbootloaderモードに切り替わります。受信機のLEDが常時点灯となり、ファームウェア更新が可能になります。
上のどちらでもない場合でも、ESP8285チップを搭載した受信機であれば、ボード上のどこかにGPIO0ピンが出ています。 これを接地(GNDに接続)したうえで受信機を起動します。 するとbootloaderモードに切り替わります。受信機のLEDが常時点灯となり、ファームウェア更新が可能になります。
あとはBetaflightPassthroughの手順、またはUSB-TTLシリアルコンバーター(FTDI)を使う手順でファームウェアを書き込みます。 詳しくは下記をご覧ください。
Unbricking (expresslrs.org)
Troubleshooting (expresslrs.org)