Flipper Zero GPS module wiring for wardriving GPIO fix

Flipper Zero GPSウォードライビング設定:GPIO 15/16 vs 13/14のUART修正

Flipperの GPS アプリが「Fixなし」と表示され、空を見上げ続けていませんか。9割のケースでは空やアンテナ、モジュールの問題ではなく、GPSがどの2本のピンで通信しているかが原因です。

結論からFlipper Zeroでは、ESP32 Wi-FiモジュールがUSARTピン、GPIO 13/14を使用しています。GPS受信機はこのUARTを共有できないため、2つ目のUART——LPUART、GPIO 15/16——を使う必要があります。GPSアプリに「Fixなし」と表示される場合、NMEAチャンネルがほぼ常にまだ13/14を指しており、そこにはすでにESP32がいます。Momentum → Protocols → GPIO Pinsで修正し、NMEA GPS UARTを"Extra 15,16"に設定すればFixが表示されます。Scout Liteのようなボードはこの問題自体が起きないようGPSをハードワイヤリングしています。

なぜこの競合が起きるのか

Flipper ZeroはGPIOヘッダー上に2つのシリアル(UART)インターフェースを備えており、それぞれ異なるピンに割り当てられています。

UART ピン 一般的な用途
USART GPIO 13 (TX) / 14 (RX) ESP32 Wi-Fiモジュール(Marauder)
LPUART GPIO 15 (TX) / 16 (RX) GPS / NMEA受信機

1本のUARTは同時に1台のデバイスとしか通信できません。Wi-FiボードGPSの両方を接続し、両方ともUSART 13/14を指したままにすると衝突が起き、ファームウェアが待ち受けていない側のデバイス(たいていGPS)は何も応答しなくなります。Flipperが2つ目のUART、15/16のLPUARTを用意しているのは、まさに両方を同時に動かせるようにするためです。あとはファームウェアにどちらがどちらかを教えるだけです。

これはファームウェアの設定の問題であり、ハードウェアの故障ではありません。 屋内でGPSが30秒後に「Fixなし」と表示されるのは正常です。屋外で空が開けているのに数分経っても「Fixなし」のままなら、それはほぼ間違いなくUARTのマッピングの問題であり、モジュールの故障ではありません。

修正手順(Momentum)

Momentum(およびXtreme)ファームウェアはピンマッピングをUI上で設定できます。純正ファームウェアはデフォルトでNMEA UARTを13/14に割り当てているため、標準のGPSアプリはそこでESP32と衝突します。

  1. Flipper上でMomentum(MNTMと表示されているメイン設定アプリ)を開きます。
  2. Protocols → GPIO Pinsに進みます。
  3. NMEA GPS UARTを見つけ、右を押して"Extra 15,16"に切り替えます。
  4. ESP32 / UARTチャンネルが13,14のままであることを確認し、2つが重ならないようにします。
  5. 戻って保存し、GPSアプリを開きます。屋外でFixを待ちます——コールドスタートは1〜2分ほどかかります。

特にウォードライビングに関して重要な点があります。ウォードライブのログはESP32 Marauderアプリ自身がGPSを読み取って書き込むため、FlipperのネイティブGPSアプリがマッピングされていなくてもMarauderによるウォードライビングは位置情報を記録できます。15/16のマッピングが必要なのは、あくまでFlipper自体のGPSアプリが同時にFixを表示するためです。詳しくは当店の完全ウォードライビングガイドで一連の流れを解説しています。

マッピング変更後もFixしない場合

症状 考えられる原因 試すこと
屋内でFixしない 空が見えていない 屋外に出る。GPSは衛星への見通しが必要
屋外でも数分間Fixしない UARTがまだ13/14のまま NMEA = "Extra 15,16"になっているか再確認
データが乱れる/データが来ない ボーレートの不一致 モジュールのボーレート(多くは9600)がファームウェアと一致しているか確認
動作するがすぐ切れる ヘッダーの接触不良 モジュールをGPIOヘッダーにしっかり挿し直す

設定不要というルート

この競合はそもそも、GPSとESP32が別部品で自分で配線する場合にのみ発生する、配線と設定だけの問題です。Scout Liteのような統合ボードでは、GPSはESP32-C5にハードワイヤリングされており、そのNMEAはFlipperのGPIO 15/16にもファンアウトされています。そのため電源を入れた瞬間からMarauderが位置情報を記録し、ネイティブGPSアプリもすでにピンが用意された状態です。自分で組みたい場合は、単体のGPSモジュールでも問題なく動作します。その場合は上記のピンマッピングを自分で管理することになります。

ピン設定の手間を省く

Scout LiteはL86-M33 GPSをESP32-C5にハードワイヤリングし、Marauderをプリフラッシュ済みです——電源を入れてWardriveを開始すれば、位置情報を記録できます。13/14と15/16で悩む必要はありません。

Scout Liteを見る 単体GPSモジュール

FAQ

FlipperのGPSが使うピンは13/14ですか、それとも15/16ですか?
GPS/NMEAのUARTはGPIO 15/16(LPUART)に置く必要があります。GPIO 13/14(USART)にはESP32 Wi-Fiモジュールが入っているため、2つで共有できません。Momentum → Protocols → GPIO PinsでNMEAを"Extra 15,16"に設定してください。
ウォードライビングに15/16のマッピングは必要ですか?
必須ではありません。ESP32 Marauderアプリは自身でGPSを読み取るため、マッピングに関係なくウォードライビング用の位置情報を記録できます。15/16のマッピングは、Flipper自体のネイティブGPSアプリが同時にFixを表示できるようにするためのものです。
純正のFlipperファームウェアはこれに対応していますか?
純正ファームウェアはデフォルトでNMEA UARTを13/14に割り当てており、ESP32と衝突します。Momentum(またはXtreme)ならGPIO Pinsメニューで NMEA を15/16に移動できるため、GPSとWi-Fiを同時に使う場合に推奨されるファームウェアです。
マッピングを変更してもモジュールがまだデータを表示しません。
ボーレートを確認してください(多くのGPSモジュールはデフォルトで6本9600です)。またモジュールをヘッダーに挿し直してください。実際に屋外で空が見える場所にいるかも確認してください——屋内ではGPSは安定してFixしません。
この問題自体を完全に避けることはできますか?
できます。統合ボードならGPSがESP32にハードワイヤリングされ、Flipperのピンも事前にマッピングされているため、設定するものが何もありません。Scout Liteのようなボードはまさにそうした設計です。

出典: Momentum Firmware — Protocols / GPIO wiki(momentum-fw.dev/wiki/Protocols/GPIO および github.com/Next-Flip/Momentum-Firmware/wiki/GPIO、2026年);justcallmekoko/ESP32Marauder Wardrive wiki(github.com、2026年)。ピンの役割はMomentumの公式ドキュメントに基づく。Scout Liteの配線はPINGEQUAの商品情報に基づく。

ブログに戻る