メインコンテンツまでスキップ

XIAO ESP32-S3 & Wio-SX1262 キットで始める Meshtastic

Meshtastic® は、手頃な価格で低消費電力のデバイス上で動作するように構築された、オープンソースのオフグリッド・分散型メッシュネットワークです。Seeed Studio は、ホビーユーザーおよび産業ユーザー向けに、すぐに使える Meshtastic デバイスを幅広く提供しています。XIAO ESP32S3 & Wio-SX1262 キットは、Meshtastic 開発者およびメイカー向けの柔軟なソリューションです。

ファームウェアを書き込む

注記

このステップバイステップチュートリアルに従って、2024 年 10 月 24 日 より前に XIAO ESP32S3 & Wio-SX1262 キットを購入した場合は、デバイスにファームウェアを書き込んでください。ファームウェアの更新には don't use NRF-OTA を使用しないでください。デバイスが完全に動作不能になる可能性があります。

ステップ 1: まず、ブラウザを開き https://flasher.meshtastic.org/# にアクセスします。Chrome または Edge ブラウザが必要です。

ステップ 2: 次に、適切な USB ケーブルを使用してデバイスを PC に接続します。電源を切ったうえで、USB ケーブルを接続しながら BOOT ボタンを押し続ける 必要がある場合があります。

ステップ 3: 表示される手順に従って、後続の書き込み操作を行います。Device は "Seeed XIAO S3"、Firmware は 最新 のものを選択し、"Flash" をクリックします。以前のファームウェアを上書きしたい場合は、"Full Erase and Install" にチェックを入れることを忘れないでください。

ソフトウェア概要

Meshtastic は、ユーザーが選択できる複数のプラットフォーム向けソフトウェアを提供しており、Android アプリ、Apple アプリ、Web クライアントなどがあります。さらに、開発者向けには Python CLI、Linux ネイティブ版、および各種統合方法も提供されています。

詳細については、Meshtastic の公式ウェブサイトを参照してください。

  • Android App: Android アプリケーションは F-Droid リポジトリおよび Google Play ストアで入手可能です。これにより、Android スマートフォンから Bluetooth、同一ネットワーク上であれば Wi-Fi、または USB On-The-Go (OTG) を介して Meshtastic デバイスに接続できます。
  • Apple App: App Store から入手できます。デフォルトでは、iOS 向け Meshtastic アプリはネイティブのオフライン Apple マップの使用をサポートしています。
  • Web Client: Meshtastic Web は、ブラウザ上で直接動作する Meshtastic クライアントです。
  • Python CLI: Python の pip パッケージをインストールすると "meshtastic" というコマンドライン実行ファイルが追加され、ネットワーク上で送受信されるパケットを JSON 形式で表示したり、Meshtastic デバイスからのシリアルデバッグ情報を確認したりできます。
  • Linux Native: Portduino フレームワークのおかげで、デバイスソフトウェアはネイティブの Linux マシン上でも動作させることができます。
  • Meshtastic Integrations: Meshtastic エコシステムは拡張性が高く、多数の既存ソフトウェア製品やプロジェクトとの容易な統合を可能にします。

デバイス接続

Meshtastic を使用する前に、まずデバイスを接続する必要があります。接続方法は 2 つあります。1 つ目は拡張ボードを使用する方法で、対応する情報がディスプレイに表示されます。その後、表示された情報に従って、対応するプラットフォーム上で設定を行うことができます。2 つ目は XIAO と Wio-SX1262 モジュールを接続し、シリアルポートツールを使用してノード ID とパスワードを取得する方法です。

バッテリーへの接続

XIAO ESP32S3 には電源管理チップが内蔵されており、バッテリーを使用して XIAO ESP32S3 に単独で給電したり、XIAO ESP32S3 の USB ポートを介してバッテリーを充電したりすることができます。

XIAO にバッテリーを接続したい場合は、protection circuit 付きの、適合した充電式 3.7V lithium バッテリーの購入を推奨します。バッテリーをはんだ付けする際は、必ず正極と負極を正しく区別してください。電源の負極端子は USB ポートに最も近い側であり、電源の正極端子は USB ポートから離れた側になります。

拡張ボードへの接続

ファームウェアを書き込み、Meshtastic アプリをダウンロードした後は、拡張ボードを使用することで、接続や Grove センサー・モジュールの追加などの応用を簡単に行うことができます。

ステップ 1: 接続したいデバイス(例:「device」)の電源が入っており、検出可能な状態になっていることを確認します。そして、スマートフォンで Meshtastic アプリを開きます。

ステップ 2: Meshtastic アプリの右下には "+" アイコンがあります。これをクリックして、アプリに近くの接続可能なデバイスのスキャンを開始させます。その後、OLED ディスプレイに表示されている対応するデバイス ID を選択します。

ステップ 3: 正しく選択できたら、OLED ディスプレイに表示されているコードを入力します。ボタンを押して表示を切り替えます。

ボタンの機能:

  • 1 回押すと画面を切り替えます。
  • 2 回押すとブロードキャストします。
  • 3 回押すと GPS モードを切り替えます。

ステップ 4: LoRa リージョンを設定すると、デバイスが再起動します。

ステップ 5: 再起動が完了すると、Meshtastic アプリおよび OLED ディスプレイ上でデバイスの状態を確認できます。

シリアルポートツール

好みのシリアルポートデバッグツールを選択します。ここでは例として mac 上の Comtool を使用します。serial 接続を選択し、対応するポート を選び、ボーレートを 115200 に設定し、RTS と DTR を有効にします。接続を開くと、通信データを確認できます。 "nodenum" を検索して、対応するノード ID を見つけます。デフォルトの パスワードは 123456 です。

ヒント

nodenum の下 4 桁は、Meshtastic アプリで検出されるデバイス番号 ID です。たとえば、"nodenum 0x9e20d02c" は Meshtastic 上では "Meshtastic_d02c" となります。

SX-1262 への接続

SX-1262 は B2B インターフェースを介して Xiao ESP32-S3 に接続できます。SX-1262 は SPI を使用して Xiao ESP32-S3 と通信します。

次の図は、XIAO ESP32S3 と Wio-SX1262 間の B2B ピンマッピングを示しています。

XIAO ESP32S3 と Wio-SX1262 間の B2B ピンマッピング
警告

互換性のある SX-1262 は、このキット内でのみ購入できます。

Wio Tracker T1000-E との通信

ステップ 1. wiki に従って Wio Tracker T1000-E を接続します。

ステップ 2. 次の設定が、XIAO ESP32S3 for Meshatastic 上の設定と同じであることを確認します。

  1. デバイスの起動とセットアップ
  • 両方のデバイスの電源が入っており、正常に動作していることを確認します。
  • デバイスの無線通信機能(Bluetooth、LoRa など)が有効になっている必要があります。誤ってオフになっていたり、制限されていないか関連設定を確認してください。
  1. 距離と信号強度
  • 2 台のデバイス間の距離が離れすぎていてはいけません。初期テストの結果、2 dBm IPEX アンテナを使用した XIAO ESP32S3 for Meshtastic の通信距離は 2.5 km を超えています。一般的に、より開けた環境では 20 km 以上になる場合もあります。
  1. ネットワーク設定
  • デバイスが同じネットワークモードまたはチャネル設定になっていることを確認します。Meshtastic APP を使用して、同じ「lora region」と「Modem preset」に簡単に設定できます。

ステップ 3. Wio Tracker T1000-E と通信する

一度接続されると、Meshtastic ネットワークを介してメッセージの送受信を開始できます。メッセージはテキストベースのものや、デバイスおよびアプリの機能に応じて追加機能をサポートするものもあります。また、ネットワークのアクティビティを監視し、現在どのデバイスが接続されアクティブになっているかを確認することもできます。

センサー接続

Meshtastic アプリケーションでは、Wio-SX1262 と XIAO esp32s3 キットは幅広いセンサーをサポートできます。XIAO 拡張ボードと組み合わせて使用すると、多数の Grove センサーをサポートできます。詳細はこちらを確認してください。さらに、GNSS アドオンモジュールと組み合わせることで、Meshtastic 内で GPS 機能を備えた最小のモジュールを構成できます。

温度および湿度センサー

DHT20 温度 & 湿度センサー

ステップ 1: XIAO Expansion Board の Grove DHT20 センサーを接続します

ステップ 2: Meshtastic APP で Detection Sensor を有効にします

GNSS センサー

XIAO 用 L76K GNSS モジュール

初期設定

注記

詳細については、Meshtastic を参照してください。

無線設定

Meshtastic ファームウェアにはいくつかの設定セクションがあり、メッシュ上で小さな管理メッセージとして送信できるように分割されています。

名前説明
BluetoothBluetooth 設定オプションは、Enabled、Pairing Mode、Fixed PIN です。
ChannelsChannels 設定オプションは、Index、Role、Settings です。
DeviceDevice 設定オプションは、Device Role、Serial Output、Debug Log、Factory Reset です。
DisplayDisplay 設定オプションは、Screen On Duration、Auto Carousel Interval、Always Point North、GPS Format です。
LoRaLoRa 設定オプションは、Region、Modem Preset、Max Hops、Transmit Power、Bandwidth、Spread Factor、Coding Rate、Frequency Offset、Transmit Disabled、Ignore Incoming Array です。
NetworkNetwork 設定オプションは、WiFi Enabled、WiFi SSID、WiFi PSK、WiFi Mode、NTP Server です。
PositionPosition 設定オプションは、GPS Enabled、GPS Update Interval、GPS Attempt Time、Fixed Position、Smart Broadcast、Broadcast Interval、Position Packet Flags です。
PowerPower 設定オプションは、Charge Current、Power Saving、Shutdown after losing power、ADC Multiplier Override Wait Bluetooth Interval、Light Sleep Interval、Minimum Wake Interval です。
UserUser 設定オプションは、Long Name、Short Name、Is Licensed です。

モジュール設定

モジュールはファームウェアに含まれており、ユーザーはメッシュやデバイスの機能を拡張できます。

名前説明
Ambient LightingNCP5623 I2C RGB LED の明るさを調整します。
Audio特定のデバイスで Codec2 音声通信のサポートを有効にします。
Canned Messageロータリーエンコーダーのような入力デバイスを使用して、デバイスから直接送信するあらかじめ定義されたメッセージを複数設定します。
Detection Sensor監視する GPIO ピンを設定し、指定された High/Low 状態を検出してテキストアラートを送信します。
External Notificationデバイスに接続した回路(LED、ブザーなど)を使って、受信メッセージで通知できるようにします。
MQTTパケットを MQTT サーバーに転送します。これにより、ローカルメッシュ上のユーザーがインターネット経由で別のメッシュ上のユーザーと通信できます。
Neighbor Info0 ホップの近隣ノードに関する情報をメッシュに送信します。
Paxcounterノードの近くを通過する BLE および WiFi デバイスの数をカウントします。
Range Testデバイス間で通信できる距離をテストするために、GPS 位置情報付きメッセージを一定間隔で送信します。少なくとも 1 台を送信側、1 台を受信側として設定する必要があります。受信側はすべての受信メッセージを CSV に記録します。
Remote Hardwareメッシュ経由で GPIO の状態をリモートで設定および読み取りできます。
Serial Moduleシリアルポート経由で文字列を送信することで、メッシュ全体にメッセージを送信します。
Store & Forward切断されたクライアントがメッシュに再参加した後に配信するため、メッセージをデバイスに保存します。
Telemetryセンサーをデバイスに接続し、メッシュに対して定期的に測定値を送信します。
Traceroute特定の宛先にメッセージをホップさせる際に使用されるノードを追跡します。

リソース

コースリソース

技術サポート & 製品ディスカッション

Loading Comments...