見出し画像

令和最新版 Poke-Controller 導入 手順 & NX Macro Controller インストール with Arduino Leonardo


初めに

本手順はWindowsにPoke-Controller、Poke-Controller-Modified、Poke-Controller-Modified-Extension、NX Macro Controller 2.13 すべてで使用できるファームウェアNXMCForLeonardoを導入する手順です


Yu様にて2026/03/16現在、上記すべてに対応するファームウェアを開発公開していただけた為手順を書き換えました
ぼんじり氏のCH552-Serialが購入できない場合や、過去に使用していたLeonardoマイコンの余りがある場合などにご利用ください
なお、各Poke-Controllerで使用できていたMCUコマンドの機能は実装されていません



必要機器構成

amazonで執筆時に購入出来る、推奨する構成例は下記のとおりです
(できるだけ安い構成)
※この内容でなくても動作は可能な場合がありますが自己責任で実施お願いします

Arduino Leonardo互換機

USBSerial変換器
※3つもいらないかもしれませんがそれでも一つあたり250円と安いので故障用の予備として

ジャンパーワイヤーオスオス(♂♂) 上記シリアル変換器に♀♀がついてきますので延長する形で♂♀、♀♀、♂♂が使用可能です
※長さや接続品質が不安な方は3種類♂♀、♀♀、♂♂20㎝のセットを探して購入してください(800円程度)

キャプチャーボード
※ms2130チップでUSB3.0の性能がでます

Switch画像認識自動化に必要な機材合計約5000円になります



Poke-Controller-Modified/Poke-Controller-Modified-Extensionの導入

Poke-Controller-Modified/Poke-Controller-Modified-Extensionの導入batファイルの実行

下記サイトから、筆者が作成した導入batファイルPokeConInstbat_v02.zipをダウンロードして解凍します。
※テキスト形式で開けますのでメモ帳などで2つのファイルの中身を確認して問題なさそうでしたら自己責任で実行してください
※Python3.12.7とgit2.41をインストールしますので開発環境がある方はお控えください

https://drive.google.com/file/d/1Dx_xQfZ56gZLl-eh_FpEzPy0X7f1VR8X/view?usp=drive_link

解凍したフォルダのPokeConInst_v02.batを実行します

PokeConフォルダはC:¥配下に作成されます
※フォルダ名にスペースは入れないでください
※フォルダ名に日本語は使わないでください(アルファベットのみ)
※インストールに失敗した場合は、作成されたフォルダをリネーム/削除することで同じ名前のフォルダで再実行可能です

プロンプトに沿って導入したいPoke-Controllerのバージョン1・2・3を選んでから、インストールするフォルダ名のみ(ドライブ名は除く)を入力します

Poke-Controllerを起動したい場合は、インストールフォルダのPokeCon.cmdをダブルクリックで実行します(管理者として実行は無し)

※インストールフォルダ名を変えれば、用途に合わせて同一・複数バージョンをインストール可能です
(例PokeConMod1,PokeConMod2,PokeConEx1,PokeConEx2等)

以上でPoke-Controllerのインストールは完了です
ついでに下記のWebhook設定をしておくと便利です




NX Macro Controller 2.13 の導入

作者様のページより、NX Macro Controller v2.13をダウンロードします

画像

解凍したNX Macro Controller Installer v2.13.exeを実行します

画像

ユーザーアカウント制御画面が出ますが、自己責任の下「はい」を実行してください

NX Macro Controllerセットアップ画面であることを確認し、インストールボタンを実行します

画像
画像

完了ボタンを押すことでインストールは完了です

画像

起動はスタートメニューのNX Macro Controllerから実行します




ArduinoIDEの導入とboards.txtの書き換え

ArduinoIDEをダウンロードします(1.8.19を推奨)Win7 and newer
※2.3以降など新しいその他のバージョンは本手順ではサポートしかねますので自己責任でのご使用お願いします

https://www.arduino.cc/en/software

画像

Windows Win 7 and newerを選択しDownloadボタンを実行します

画像

ダウンロードしたarduino-1.8.19-windows.exeを実行してインストールを実行します

画像
画像

ポップアップが何度か出ますがすべてインストールしてください

画像
画像
画像

PCにArduinoLeonardo本体をUSBケーブルで接続します

スタートメニューからArduinoIDEを起動します
ファイル->環境設定を実行します

画像

コンパイルと書き込みにチェックを入れてOKボタンを実行します
その後ArduinoIDEを再起動します

画像

再起動後、ツール->ボードでArduino Leonardoを選択します

画像

一度空のスケッチをマイコンボードに書き込みます

画像

下記画像の黒い画面のログからUsing Boardの記述を探し、folder以降のフォルダパスをコピーしてWindowsのExploreでパスを開きます

画像

対象フォルダ内にあるboards.txtをデスクトップにコピーします
デスクトップにコピーしたboards.txtをVSCODEやサクラエディタなどで開きます
※メモ帳などでも編集は可能ですが改行コードの有無などが変わる可能性があるため専用エディタの使用をお勧めします

画像

285行目の
leonardo.vid.1を0x2341⇒0x0f0d
leonardo.pid.1を0x8036⇒0x0092
に書き換えます 
先頭の#はコメントアウトなので元の情報のバックアップを取りたい場合は、行をコピー&ペーストで追加してください

画像

同じく311行目の
leonardo.build.vidを0x2341⇒0x0f0d
leonardo.build.pidを0x8036⇒0x0092
に書き換えて保存します
デスクトップにコピーしたboards.txtを先ほどのUsing Boradのログに記述のフォルダに戻し上書きします
(※OSの権限の問題などで直接編集できない場合があるため)

画像

再度、ArduinoIDEを再起動し、空のスケッチをマイコンボードに書き込みます

画像

ツールのボード情報を取得でボード情報が下記の情報に代わっていることを確認します
BN: Arduino Leonardo VID: 0f0d PID 0092 SN:HIDGF

画像
画像

マイコン単体でのArudino Leonardoの導入とテスト

NintendoSwitchControllをダウンロードします

画像

https://github.com/interimadd/NintendoSwitchControll

スケッチ->ライブラリのインクルードからZIP形式のライブラリをインストールを実行します

画像

ダウンロードしたZIPファイルを参照します

画像

その後、Arduino IDEで新規作成、下記コードをすべて上書き張り付けして、スケッチ->マイコンボードに書き込むを実行します

#include <auto_command_util.h>
void setup(){

//開始
    pushButton(Button::A, 400, 3);
    pushButton(Button::B, 400, 3);
    pushButton(Button::A, 400, 3);
    pushButton(Button::B, 400, 3);
    pushButton(Button::A, 400, 3);
    pushButton(Button::B, 400, 3);
    pushButton(Button::A, 400, 3);
    pushButton(Button::B, 400, 3);
    pushButton(Button::A, 400, 3);
    pushButton(Button::B, 400, 3);
    pushButton(Button::A, 400, 3);
}

void loop(){
     pushButton(Button::B, 10000, 1);
}


画像

書き込み完了後ボード情報を取得しVID、PIDが変わっていることを確認します(大切なことなので2度言います)

画像
画像

BN: Arduino Leonardo VID: 0f0d PID 0092 SN:HIDGFになっていることを確認します
問題なければPCから外します

Switchの設定->コントローラーとセンサー->入力デバイスの動作チェック->ボタンの動作チェック画面の状態で、Arduino Leonardo本体をSwitchのドックに接続しボタンが自動で入力されることを確認します

画像


※こちらはマイコン単体での動作確認になりますので、
NX Macro Controller、PokeControllerでは下記の別のプログラムを導入する必要があります




NXMCForLeonardoの導入

Yu様のプログラムを下記リンクからダウンロードして解凍しておきます

緑色のCodeボタンのDownload.ZIPを実施します

画像

ZIPファイルから解凍したフォルダ名前をすべて修正します
NXMCForLeonardo-main    ⇒ NXMCForLeonardo

変更前

画像

変更後

画像

修正したフォルダに入っているNXMCForLeonardo.inoをArduinoIDEから開きます

PCにArduino Leonardo本体を接続します
ライブラリをインクルードでライブラリの管理からHID-Projectを検索しHID-Project2.8.4をインストールします(日本語対応版)

画像
画像

PCにArduino Leonardo本体を接続します
スケッチ->マイコンボードに書き込むを実行します

画像

ボードへの書き込みが完了しましたと正常終了することを確認します

画像

ボード情報を確認し、
BN: Arduino Leonardo VID: 0f0d PID 0092 SN:CHIDGFになっていることを確認します(大切なことなので3度言います)
※違う場合はboards.txtの書き換えから再実施してください
問題なければArduino LonardoをPCから外します

画像
画像

シリアルアダプターのドライバーの導入

標準ドライバが導入されていますのでWindows11で、ch340gのシリアルアダプターの場合はドライバーの導入は不要です
Windows10でドライバが必要な場合は下記からダウンロードして適用してください※OSのサポート切れの為本手順では詳細のサポートはしません

シリアルアダプタをPCに接続しデバイスマネージャでCOMとLPTを確認します(この場合はch340でCOM3)

画像

接続図


画像

シリアル通信のつなぎ方

PC USB シリアルアダプタ TXD ⇒ RX←0 ArudinoLeonardo
                 シリアルアダプタ     RXD ⇒ TX1 ArudinoLeonardo
     ※leoのTX1はデバッグ用の為接続しなくても動作可能
     ※2本で大丈夫ですが心配な方はつなげておいた方が安牌
                 シリアルアダプタ     GND ⇒ GND ArudinoLeonardo

画像

HDMIキャプチャーボードの接続

PCのUSBポートに接続してください。
標準ドライバを使用するため、自動でインストールされます。

Poke-Controllerの起動と動作確認

Poke-Controllerの起動はC:¥ポケコン導入フォルダ¥PokeCon.cmdをダブルクリックで実行します

ディスプレイポート番号とシリアルポート番号を設定しreload portを実行しPoke-Controllerが認識することを確認します

仮想コントローラを起動し、Aなどを連打してSwitchが動くことを確認します
※起動後、最初の認識に3回くらいボタンを押す必要があります

画像

NX Macro Controllerの動作確認

WindowsのスタートメニューからNX Macro Controllerを起動します

キャプチャーボードとシリアルポート番号を設定し接続を実行しNX Macro Controllerが認識することを確認します

画像

aaabbマクロを実行し、Aなどを連打してSwitchが動くことを確認します
※起動後、最初の認識に3回くらいボタンを押す必要があります
 
ツールのオプション->キー設定やゲームパッド設定でキーを割り当てておくとPCからの操作(キーボードやDirect,xInputのゲームパッドで操作)できるようになるのでマクロの記録にとても便利です

※こちらのSwitch本体の設定は必ず実施してください
自動化プログラムが正常に動かない場合があります

Switch本体の設定

□設定->テーマ ベーシックブラックに変更します(使うプログラムによって変更する場合有り)
□設定->テレビ出力->テレビの解像度 720pに変更します
□設定->テレビ出力->画面の大きさを調整 100%に変更します
□設定->コントローラと周辺機器->Switch Proコントローラーの有線通信を有効に変更します

Switch2本体の設定

□設定->ディスプレイ->HDR出力 本体のみの出力はオンでOK
□設定->ディスプレイ->テレビの解像度 720pに変更します
□設定->ディスプレイ->画面の大きさを調整 100%に変更します
□設定->ディスプレイ->テレビとの電源連動 オフ
□設定->ディスプレイ->HDR出力 下のHDR出力はOFF
□設定->コントローラと周辺機器->Switch Proコントローラーの有線通信を有効に変更します



自動化が動かない場合の確認事項

□ boards.txtの編集がきちんと完了していることを確認します
□ USB HUBなどでつなげている場合はPCに直接接続します
□ PCのUSBポートを変更します
□ デバイスマネージャでシリアルアダプタのCOMポートの番号があっていることを確認します
□ シリアルアダプタとArduino Leonardoの接続があっていることを確認します(TXD-RX←0、GND-GND) ジャンパーワイヤーを延長した場合は注意
□ Switchのドックに電源ケーブルが刺さっていて通電していることを確認します
□ Steamのソフト、NZXT CAMのソフトなどOS起動時に自動実行されるソフトウェアを停止します
□ スイッチはソフトによってコントローラーを一つしか認識しないため、プロコンなどが接続されている場合外してください(無線接続も注意)

その他のプログラムの導入

コードエディタ

インストールしておくとpythonコードの編集などに便利です


Poke-ControllerのDMA自動化などで使用するOCRの導入

TessaractOCR github
https://github.com/tesseract-ocr/tesseract
Windows用インストーラー 
 (2024/11/13現在の最新5.5.0)下記リンク参照

Windows下の検索🔎よりシステム環境変数の編集を検索します

環境変数ボタンを選択します

システム環境変数に新規で下記パスを追加します

OCRのインストールパスの追加※最後の¥まで追加すること
C:\Program Files\Tesseract-OCR\

OSを再起動します

Poke-Controller-Modified/Poke-Controller-Modified-Extensionの導入で使用したbatファイルで導入した場合はpyocrが導入されていますが、別の手順でインストールした場合はコマンドプロンプトからexはpip install pyocrもしくは、modはPokecon.cmd内に記述して別途インストールしてください

以上

謝辞

NX Macro Controllerの開発者 ぼんじり氏

Poke-Controller本家の開発者 KawaSwitch氏


Poke-Controller Modified版の開発者 Moi氏

Poke-Controller Modified Extention版の開発者 フウ氏

Poke-Controller for Leonardoの開発者 ろっこく氏

NXMCForLeonardoの開発者 Yu氏

更新履歴

2026/03/16 新規作成
yu様作成のNXMCForLeonardoの手順に変更しました

いいなと思ったら応援しよう!

poketsv よろしければ応援お願いします! いただいたチップはクリエイターとしての活動費に使わせていただきます!

コメント

22
コメントするには、 ログイン または 会員登録 をお願いします。
haruのプロフィールへのリンク
haru

こんにちは、初めまして、PokeConInst_v02.batを実行すると60秒のカウントのところでプロンプトが落ちてしまいインストール出来ずに困っています、パソコンに詳しいわけではないので対処法があれば教えていただきたいです。

poketsvのプロフィールへのリンク
poketsv
@haru さん

手順を飛ばしてる可能性があるため、再度HID-Project2.8.4をインストールします(日本語対応版)を実施してください

2 Rのプロフィールへのリンク
2 R

記事の通りやってみたのですが、NXMCForLeonardoの導入のところで、フォルダ名変えて、NXMCForLeonardo.inoをarduinoから開くとフォルダを作りますか?と出て、フォルダの中に入ってしまい、#include "Poke-ControllerForLeonardo_Func.h"の所でファイルが無いみたいなエラーで止まってしまいます。 …

poketsvのプロフィールへのリンク
poketsv
@2 R さん

Leonado⇛Leonardoでrか抜けてました

たろうのプロフィールへのリンク
たろう

導入方法の解説ありがとうございます! ぼんじりさんのCH552-SERIALが現在購入できないためこちらの記事を参考にさせて頂こうと思っています。 初めて自動化や乱数調整をやろうと思っており、右も左も分からない状態なのでひとつ質問よろしいでしょうか? ぼんじりさんのCH552-SERIALを使う場合と…

poketsvのプロフィールへのリンク
poketsv
@たろう さん

私が持っているのとは違うため自己責任での購入にはなりますが、 こちらの製品もMS2130チップの為推奨させていただきます https://www.amazon.co.jp/dp/B0F7QHH7R7

令和最新版 Poke-Controller 導入 手順 & NX Macro Controller インストール with Arduino Leonardo|poketsv
word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word

mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1