M2ゲートウェイにオープンソースファームウェアをフラッシュする
SenseCAP M2ゲートウェイは、成熟したハードウェアソリューションMT7628とSemtech SX1302ベースバンドLong Rangeチップを搭載した、LoRaゲートウェイのコスト効率的なソリューションです。特定のモデルは、工場設定の周波数帯域(EU868/US915/AS923/AU915)、オプションモジュール(4G/GPS)、およびサポートされるLoRaネットワーク(LoRaWAN®/Heliumネットワーク)によって区別されます。
このwikiでは、M2ゲートウェイ用のオープンソースファームウェアをフラッシュする方法をガイドします。オープンソースファームウェアに基づいて、追加機能の追加や動作帯域の変更(アンテナは帯域に適応させる必要があります)など、M2ゲートウェイを深くカスタマイズできます。
オープンソースファームウェアをフラッシュした後、工場出荷時ファームウェアに戻すことはできません。
Seeed studioは、ユーザーがオープンソースファームウェアまたはサードパーティファームウェアを使用することによって引き起こされるデバイスの損傷について責任を負いません。
サポート製品リスト
- M2 Multi-Platform LoRaWAN Indoor Gateway(SX1302)
- M2 Multi-Platform LoRaWAN Indoor Gateway(SX1302-4G)
- M2 Data-Only LoRaWAN Indoor Gateway(SX1302)
ファームウェアの準備
プリビルドファームウェアのダウンロード
オープンソースファームウェアを手軽に体験したい場合は、コンパイル済みのファームウェアを提供しています。 Seeed-Solution/LoRa_Gateway_OpenWRT/Releaseからダウンロードできます。
.binファイルの接尾辞をチェックして、ファームウェアがお使いのM2ゲートウェイと互換性があることを確認してください。
例:openwrt-...-EU868-4G.binファームウェアは、EU868帯域で動作し4Gモジュールを搭載したM2ゲートウェイ用にコンパイルされています。
ファームウェアのビルド
お使いのゲートウェイがプリビルドファームウェアと互換性がない場合、またはさらに開発を進めたい場合は、以下の手順で独自のファームウェアをビルドできます。
独自のファームウェアをビルドするには、GNU/Linux、BSDまたはMacOSXシステム(大文字小文字を区別するファイルシステムが必要)が必要です。Cygwinは大文字小文字を区別するファイルシステムがないためサポートされていません。
ステップ1: Seeed-Solution/LoRa_Gateway_OpenWRTからソースコードをクローンします。
git clone https://github.com/Seeed-Solution/LoRa_Gateway_OpenWRT.git
ステップ 2: 前提条件となるパッケージをインストールします。 Build system setupを参照してください
以下の手順は非rootユーザーで実行してください。
ステップ 3: ソースコードフォルダに移動し、./scripts/feeds update -a
を実行してfeeds.conf / feeds.conf.defaultで定義されたすべての最新パッケージ定義を取得します
ステップ 4: ./scripts/feeds install -a
を実行して、取得したすべてのパッケージのシンボリックリンクをpackage/feeds/にインストールします
ステップ 5: cp diffconfig-sensecap-general .config
を実行してSenseCAP diffファイルを使用し、make defconfig
を実行して完全な設定を展開します
ステップ 6: make menuconfig
を実行してSenseCAP ハードウェア情報を選択します
-
SenseCAP Hardware->Have 4G(4Gハードウェアが含まれているかどうか)
-
SenseCAP Hardware->Have GPS(GPSハードウェアが含まれているかどうか)
-
SenseCAP Hardware->REGION(デフォルトのREGIONを選択)
ステップ 7: make
を実行してファームウェアをビルドします
これにより、すべてのソースがダウンロードされ、クロスコンパイルツールチェーンがビルドされ、その後ターゲットシステム用にGNU/Linuxカーネルと選択されたすべてのアプリケーションがクロスコンパイルされます
コンパイル後、<prj>/bin/targets/ramips/mt76x8/
ディレクトリにopenwrt-21.02.0-ramips-mt76x8-sensecap_wm7628n-squashfs-sysupgrade.bin
という名前のファームウェアが見つかります
ファームウェアのフラッシュ
ゲートウェイにファームウェアをフラッシュする方法は3つあります
Luci経由でファームウェアをフラッシュ
Luciにログインし、System > Backup/Flash Firmwareに移動します
下にスクロールしてLocal upgradeに移動し、**Flash image...**をクリックします
フォルダを参照してファームウェアをアップロードします
アップロードが完了したら、アップロードされたファームウェア情報が正しいことを確認し、Continueをクリックします。
その後、ゲートウェイはファームウェアのインストールを開始し、LEDはインストールが完了するまでオレンジ色のゆっくりとした点滅状態になります。
TFTP経由でファームウェアをフラッシュ
開始する前に、コンピューターにTFTPサーバーツールをインストールし、適切なディレクトリにファームウェアを配置する必要があります。
ステップ 1: Type-Cケーブルを使用してデバイスをコンピューターに接続し、ネットワークケーブルを使用してデバイスとコンピューターを同じLANに配置します。
ステップ 2: USB-SERIAL CH340
という名前のシリアルポートを使用してボーレート57600でデバイスに接続します。
ステップ 3: デバイスを再起動します。デバイスがubootに入ったら、コマンド2を選択してシステム更新に入ります。
ステップ 4: デバイスipを入力します。デバイスipネットワークセグメントは自分のネットワークのネットワークセグメントである必要があります。サーバーipを入力します。これはコンピューターのIPです。フラッシュするファームウェアの名前を入力します(ファイル拡張子を含める必要があります)。
ステップ 5: ファームウェア更新の完了を待ちます。ゲートウェイはファームウェアのインストールを開始し、LEDはインストールが完了するまでオレンジ色のゆっくりとした点滅状態になります。
シリアル経由でファームウェアをフラッシュ
以下の手順を開始する前に、TeraTermの最新バージョンをダウンロードすることをお勧めします。このwikiの以下の操作はすべてTeraTermに基づいています。
ステップ 1: Type-Cケーブルを使用してデバイスをコンピューターに接続します。
ステップ 2: USB-SERIAL CH340
という名前のシリアルポートを使用してボーレート57600でデバイスに接続します。
ステップ 3: デバイスを再起動します。デバイスがubootに入ったら、コマンド0を選択してシステム更新に入ります。
ステップ 4: ボーレートを230400に切り替え、ENTERを押します。デバイスはReady for binary (kermit) download to 0x80100000 at 230400 bps...
と表示します
ステップ 5: kermitプロトコルを使用してファームウェアをアップロードします。Teratermはkermit転送ツールを提供しています。以下の画像を参考にファームウェアをアップロードできます。
ステップ 6: ファームウェアのアップロードが完了するまで待ちます。その後、デバイスはSwitch baudrate to 57600 bps and press ESC...
と表示します。デバイスの指示に従ってください。その後、デバイスは自動的にファームウェアをインストールして再起動します。
コンソールへのログイン
ファームウェアがインストールされると、デバイスは自動的にAPホットスポットを開き、名前は SenseCAP_XXXX になります
携帯電話またはコンピューターを使用してホットスポットに接続します。パスワードは不要です
ブラウザで 192.168.168.1 を入力してLuCIインターフェースに入ります
ユーザー名 root と パスワードなし でコンソールにログインします
リソース
- [Website] How to install alternative firmware to the SenseCAP M2 Data Only LoRaWAN Indoor Gateway - By Koen Vervloesem
- [Website] GitHub-Seeed-Solution/Lora_Gateway_OpenWRT
- [Website] OpenWrt offical website
- [PDF] M2 Gateway Hardware Description
技術サポート
オープンソースファームウェアでお困りですか?以下のDiscordリンクからコミュニティメンバーとお気軽にディスカッションしてください。