GBAエミュレーター「mGBA」をベースに、PCやAndroidスマートフォンからNintendo Switch/Nintendo Switch 2へポケモン交換を行えるようにした非公式フォーク「mGBA_LDN」が公開されました。
mGBA_LDNは、mGBA上で動かしているGBA版『ポケットモンスター』シリーズと、Nintendo Switch版『ポケットモンスター ファイアレッド・リーフグリーン』のローカル通信を接続するための機能を追加したものです。AndroidではESP32をUSB-Cでスマートフォンにつなぐことで、エミュレーター上のポケモンを実機Switch 2側と実際に交換できる仕組みになっています。
Nintendo Switch版『ポケットモンスター ファイアレッド・リーフグリーン』は2026年2月27日に配信されたタイトルで、Nintendo Switch 2でもプレイ可能です。オリジナルのGBA版でゲームボーイアドバンス専用ワイヤレスアダプタなどを利用していた通信機能は、Switch版では本体のローカル通信を利用する方式に変更されています。
●mGBA_LDN GitHub
https://github.com/Gr3nSkyDragon/mgba_LDN
mGBAにSwitchとの通信機能を追加した「mGBA_LDN」
mGBA_LDNを公開したのはGr3nSkyDragon氏で、オープンソースのGBAエミュレーター「mGBA」から派生したプロジェクトです。開発者が2026年9月25日に公開した投稿によると、デスクトップ版とAndroid版の双方でSwitchとの交換に成功しており、APKとソースコードがGitHubで公開されています。
ただし、これはmGBA公式による機能追加ではありません。リポジトリでもmGBAやその主要開発者とは関係がなく、公式に承認されたものでもないことが明記されています。また、開発者はmGBA_LDN固有部分の実装にLLMによって生成されたコードを利用したことも説明しています。
仕組みとしては、GBA側で使われていた通信方式とNintendo Switchのローカル無線通信「LDN」との間を橋渡しします。そのため単にmGBAをインストールすればSwitchと通信できるわけではなく、PCやAndroid端末からSwitchのローカル通信へ接続するための環境を別途用意する必要があります。
AndroidスマホではESP32をUSB-Cで接続
Android版で必要になるのが「ESP32」です。作者はESP32-S3を使用しており、ESP32側には「GB-Link Switch LDN」のファームウェアを導入します。
そのうえでESP32とAndroidスマートフォンをUSB-C to USB-Cケーブルで接続。mGBA_LDNのAndroid版からWireless Adapterの設定を開き、ESP32を選択することで、スマートフォン上で動くGBA版『ポケットモンスター』とSwitch側との通信を行います。
『ポケットモンスター ファイアレッド・リーフグリーン』および『ポケットモンスター エメラルド』では「Wireless Adapter」からESP32を選択します。一方、『ポケットモンスター ルビー・サファイア』については通信方式が異なるため、「Cable Adapter」を選択する仕組みになっています。
開発者はXiaomi CC9とHonor Magic3 Proを利用してAndroid版から実際に交換できたことを報告しています。ただし、すべてのAndroid端末での動作が保証されているわけではありません。
WindowsではUSB Wi-Fiアダプターも利用可能
Windows版ではESP32だけではなく、対応するUSB Wi-Fiアダプターを利用する方法も用意されています。
『ファイアレッド・リーフグリーン』『エメラルド』では「Broadcast」または「ESP32」を選択可能。Broadcastを利用する場合は対応USB Wi-Fiアダプターに加えて「ldnd.exe」のセットアップが必要になります。作者はテスト環境で一般的なAC1300クラスのUSB Wi-Fiアダプターを使用したとしています。
ただし『ルビー・サファイア』については、現時点でBroadcast側の実装は利用できません。PCからSwitchへ接続する場合でもESP32を利用し、「RFU Cable Wrapper」のESP32モードを使用する必要があります。
このあたりはAndroid版より構成の自由度が高い一方で、USB Wi-Fiアダプターの対応状況や別ソフトのセットアップなども関わってくるため、必ずしも導入が簡単というわけではありません。
Switch側から交換をホストする必要あり
現在のmGBA_LDNには通信上の制限もあります。
もっとも重要なのが、交換を開始するホストはNintendo Switch側でなければならないという点です。mGBA_LDN側は現在のところSwitchが作成した通信へ参加する側としてのみ動作し、mGBA側から交換をホストすることはできません。
Switch側ではポケモンセンター2階の通信施設から交換を開始し、Switchをリーダーにします。その後、mGBA_LDN側から通信へ参加するという流れになります。
また、通信中はmGBAの高速化機能を使用しないよう作者が強く警告しています。通信のセットアップ中や交換中に速度を変更すると処理が崩れ、通信エラーが発生する可能性があるためです。
交換は確認済み。対戦などは現時点で未検証
関連するESP32用ファームウェアには交換以外の通信機能も実装されていますが、mGBA_LDNの作者が実際に確認しているのは主にポケモン交換です。
対戦や「きのみクラッシュ」など、そのほかの通信機能については動作する可能性はあるものの、作者自身はテストしていません。そのため、現時点では「mGBAからSwitchとの交換に対応した」と考えるのが正確です。
なお、ベースとなるGB-Link Switch LDN自体は、実機GBAとNintendo Switch版『ファイアレッド・リーフグリーン』を接続し、交換や対戦を行うためのプロジェクトです。こちらではESP32がSwitchのローカル無線ネットワークへ参加し、もう一方のGB-Linkアダプターとの間でGBAの通信を中継する仕組みが採用されています。
自分のSwitchから取得した「prod.keys」も必要
mGBA_LDNを利用するためには、自分のNintendo Switchから取得した「prod.keys」も必要です。
Windows版ではmGBAの設定からprod.keysの保存場所を指定します。ESP32を利用する場合は、GB-Link Switch LDNのファームウェアとともにESP32側へ必要なキー情報を設定します。関連プロジェクトによると、Switchのローカル無線通信が暗号化されているため、この情報が必要になるとのことです。
当然ながらmGBA_LDNにGBA版『ポケットモンスター』のROMデータが付属しているわけでもありません。使用するROMやセーブデータ、prod.keysについては利用者自身の環境から用意する必要があります。
Android版には「Open ROM」と「Import Save」も用意されており、ROMとセーブデータをmGBA_LDN側へ取り込むことが可能です。既存のセーブデータを読み込み、その続きからSwitch側との交換に利用するといった使い方もできます。
実機GBA用アダプターとは別のアプローチ
当サイトではこれまで、実機のゲームボーイアドバンスとNintendo Switch/Switch 2を接続し、GBA版『ポケットモンスター』から交換を行うハードウェア系プロジェクトについても紹介してきました。
今回のmGBA_LDNは目的こそ似ていますが、GBA実機を使用するものではありません。PCやAndroidスマートフォン上で動作するmGBAをGBA本体の代わりに利用し、そこからSwitchのローカル通信へ接続するという別のアプローチです。
特にAndroid版では「スマートフォンで遊んでいるGBA版ポケモンから、ESP32を介して実機Switch 2へポケモンを交換する」という、これまでとは少し変わった環境を構築できるのが面白いところです。
導入にはESP32の設定やprod.keysなどが必要になるため、誰でもすぐ利用できるものではありません。それでも、エミュレーター上に残っている第3世代のセーブデータと現在のNintendo Switch環境を、通常のゲーム内交換という形で直接つなげられる選択肢が登場したことは興味深いところです。
mGBA_LDNはGitHubでソースコードとAndroid用APKが公開されています。なお、本プロジェクトはmGBA公式によるものではなく、Nintendoや株式会社ポケモンが提供する公式機能でもありません。















ダンジョンズ&ドラゴンズ ビジュアル大全 半世紀を超えるその歴史とアート









ゲームコンソール2.0