バナーナナブログ

宮城県仙台市より、日々思ったことを綴っていくウェブログです。

Privacy Policy SimpleMemo3

プライバシーポリシー

本アプリは、ユーザーの個人情報を収集・送信しません。

入力されたメモデータは端末内にのみ保存され、
外部サーバーへの送信は行われません。

本アプリは広告配信、アクセス解析を使用していません。

お問い合わせ:
smd171cm+googleplay@gmail.com

Nintendo Switch2をRaspberry Pi5で操作自動化できるか検証してみた話

挨拶

お久しぶりです。

いつの間にか2026年ですね。

 

2025年にNintendo Switch2が発売されましたね。

私は何度か抽選に漏れ、結局ヨドバシカメラにて購入しました。最近はもう手に入りやすくなってるのかな?

 

のソフト、皆さんは何を遊んでますか?

私はもちろんポケモン新作 Pokémon LEGENDS Z-A です。

 

nxbtというライブラリ

Switchの頃に、自動化に関する検証記事をいくつか投稿していました。

 

smdbanana.hatenablog.com

smdbanana.hatenablog.com

どちらの記事もjoycontrolを使ったものでした。

ですが、その後記事にはしてなかったですが色々とライブラリを使っている中で、

一番使いやかったツールは「nxbt」というライブラリでした。

github.com

ただ、

最終コミット時期を見ると3年前になってるので

Switch2で動かせるのか?という疑問が生まれました。

疑問が生まれたなら検証してしかないですね。

、、

結果、、、

数十回に一度繋がるときもある、程度。

要するに使えない(T_T)

ですが、issuesにその回避策がありました。

Not Connecting · Issue #190 · Brikwerk/nxbt · GitHub

hannahbee91さんのフォークリポジトリ nuxbt 使えばええで!ということ。

私もさっそく使ってみることにしました。

github.com

Raspberry Pi5を使う

手元にRaspberry Pi5(8GB版)があるので、これを使って制御しようと思いました。

せっかくなのでOS等も新しく入れようと思ったので、imagerを最新にして入れなおしました。

Raspberry Pi Imager v2.0.3を使っています。

2025-12-04版のOSが最新とのこと。

あとはGUIに沿って設定していきます。sshを有効にしておく以外は全部デフォルトで進めたのでキャプチャとかはありません。

OSの書き込みが終わり、SDカードを差し込んで起動したら以下のコマンドを打っていきます。

 

// ツールの最新化
$ sudo apt update
$ sudo apt full-upgrade -y
// 一度再起動
$ sudo reboot

// venvで環境を独立
$ python3 -m venv --system-site-packages ~/nuxbt/venv
$ source ~/nuxbt/venv/bin/activate

// nuxbtをpipで入れる
$ pip install -U pip setuptools wheel
$ pip install blessed
$ pip install --no-deps nuxbt

これでnuxbtを使う準備ができました。

動かせるか試してみる

試してみます。

(venv) pi@pi:~ $ nuxbt tui
Error: NUXBT BlueZ plugin is not enabled.
Please run 'nuxbt toggle' to enable the plugin.

怒られました。説明の通りコマンドを実行してみます。

(venv) pi@pi:~ $ nuxbt toggle
You are about to ENABLE the NUXBT BlueZ plugin.
This will require running the following commands with sudo:

  sudo mkdir -p /run/systemd/system/bluetooth.service.d
  sudo printf '[Service]
ExecStart=
ExecStart=/usr/libexec/bluetooth/bluetoothd --compat --noplugin=*' > /run/systemd/system/bluetooth.service.d/nuxbt.conf
  sudo setcap 'cap_net_raw,cap_net_admin,cap_net_bind_service+eip' /usr/bin/python3.13
  sudo systemctl daemon-reload
  sudo systemctl restart bluetooth

Do you want to proceed to enable the plugin? [y/N]: y
Enabled plugin...
Done.

どうやらBluetooth周りの設定を変更することで動かせるようです。

改めてnuxbt tuiを実行したところ、正常に動かせました。

(nuxbtにはwebapp機能もありますが、必要なものが多いみたいなので無視してます。)

ということで、

Nintendo Switch2をRaspberry Pi5で操作自動化できるかの検証結果は「操作の自動化はできた」でした。

おまけ

せっかくなので、LEGENDS Z-Aできのみを自動で購入するコードを作ってみました。

nuxbtを使ってPokémon LEGENDS Z-Aのきのみ購入自動化のサンプル

 

動画だとこんな感じです


www.youtube.com

最後に

当然ですが、これらはいずれも自己責任でお願いします。

それでは皆様今年もよろしくお願いします。

2019年式ライズはAndroidAuto対応してないんよの件

私は学生時代も社会人になってからも、なんやかんやで自動車を買ってこなかった人間です。主にバイクに乗っていました。

結婚後は妻が元々所有してた車で生活してたけど、その車もかなり年数が経過し税金も高くなったので、人生初の車を購入しました。

トヨタライズ2019年式。ガソリンタイプ。中古車です。

私も妻も車へのこだわりはなく、適当に安いやつ、というアバウトな条件で探していました。

購入した車はトヨタの社用車として使われてたそうで、傷や汚れも少なく値段もいい感じだったので、装備の細部はあまり聞かず契約しました。(フラグ)f:id:smdbanana:20250406224556j:image

で、納車時の説明にて。

ディーラー「この車はカーナビではなく『ディスプレイオーディオ』といって、自分の携帯を接続してナビアプリとかを使ってもらうんです。」

私「了解です。」

ディーラー「じゃあUSB指して確認してみましょうか。お客様のiPhoneでやりますか?」

私「私iPhoneユーザーじゃなくてAndroidユーザーです。」

ディーラー「あ、そうでしたか。奥様はiPhoneですか?」

妻「Androidです。」

ディーラー「お二人ともiPhoneじゃないんですね、、、」

私「Androidです。」

ディーラー「iPhoneだったらCarPlayってアプリで接続できたんですが。では私のiPhoneを接続して説明しますね。」

iPhoneを接続し、CarPlayを起動して説明を受けた後

ディーラー「と、こんな感じです。Androidの場合、こっちの『SDL』ってアプリを入れてもらえば同じことできるはずです。」

iPhone使うのが当然でしょ?と言わんばかりの対応でした。

なんて気持ちを胸にしまい、帰ってから指定されたアプリを入れてみました。

play.google.com

こいつを携帯に入れ接続してみたものの、

ディスプレイへの表示が不安定だったり、

そもそも使えるアプリがmoviLinkというナビアプリ1種類だけだったり。

はっきり言って全く使えない。

AndroidならAndroidAutoが使えるはずだろ?と思いインターネットを徘徊したところ

ライズは2021年3月製造版からAndroidAutoに対応となり、2021年2月以前のライズは対応していません。

とのこと。

OMG

ダメもとでディーラーに「ネットではこう見たけどディスプレイオーディオのファームアップデートとかやってみてもらえません?」と依頼し、実践してもらったもののアップデートはできなかったという結末。

私と同じように不満を持った人間はどうやってこの問題を解消してるんだ?とネット記事を漁ってみたら

iPhone買ってCarPlay使うことにしました^^」の記事発見。

パワープレイにも程があるやろ。

 

他に策はないか?とさらにネットに潜って、ついに最適解を見つけました。

Ai-Box を使う、です。

Ai-Boxとはなんぞ?と思いこれも調べてみました。

カーライフが変わる!今話題の「Ai-BOX」ってご存じですか? | オートバックス ・大和店

Apple CarPlayの規格を使ってAndroid(ディスプレイを持っていない)の端末がディスプレイオーディオの画面を使って動作するもの、という認識でよさそうです。

CarPlayのみ対応しているライズ2019年式+iPhoneユーザーではない私にとってまさにコレという製品です。

上記記事の内容はOttocastというメーカーですが、この他CarlinKitというメーカーのものもあるらしい。

試すにしてもまあまあいいお値段する(2万以上)ので、さてどうしたもんか。。

ですが、メルカリで1万前後で出品している方がいたので「ものはチャレンジ」と思い購入しました。

届いたのがこちら

f:id:smdbanana:20250406224614j:image

私が買ったのは CarlinKit Tbox Plus 4+64GB てやつです。

思ったより小さくて軽い。f:id:smdbanana:20250406224634j:image

Amazonでも売ってますね。

2025/04/09現在の価格は26,999円ですが、クーポン9,000円オフがついていたり、セールのときには同じくらい値引きされているので適時確認することをおすすめします。

早速車に接続してみました。

USB接続するとしばらくした後に

「Intelligent Interconnection System」のロゴが表示され、

TBox Plusのアプリ一覧が表示されるとともに、文言忘れたけど「アクティベーションを完了させなさい」みたいな英文メッセージ&QR画像が画面にずっと出ている状態でした。(この画像は撮影してません。)

ずっとメッセージが出ている状態で、何をどうしたら消えるかわからないまま、とりあえず携帯のテザリングを有効にしTBoxPlusの無線設定から接続したら、アクティベーションが完了したようです。メッセージが非表示になりました。f:id:smdbanana:20250409124418j:image

アプリの一覧はこんな感じ。

あとはPlay Storeで自分が入れたいアプリをTBox PlusにインストールすればOKです。

 

設定画面からバージョンを見てみる。f:id:smdbanana:20250409124340j:image

FOTA Updateを押してみるf:id:smdbanana:20250409124358j:image

どうやら私のTBoxPlusはSC668という日本仕様のモデルらしいです。

こちらの記事が参考になりました。

blog.k-zu.com

あとは用途に合わせて接続の方法を変えれば良いです。

simを入れることもできますが、私は自分の携帯でテザリングして使ってます。

f:id:smdbanana:20250409124455j:image

マップアプリも問題なく動作。

テザリングせずとも、AutoKitアプリを起動して、自分の携帯からTBoxPlusに無線AndroidAutoで接続することも可能。
f:id:smdbanana:20250409124504j:image

接続したら
f:id:smdbanana:20250409124513j:image

こんな感じでAndroidAutoの画面に切り替えることも可能です。

遠出するときくらいしか使わないかもしれませんが、いい一品を買えたと満足しています。