2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ニンテンドークラシックミニ スーパーファミコンのコントローラーを PC で使う

Last updated at Posted at 2025-07-27

CLV-202 to USB

デモ

CLV-202 to USBというニンテンドークラシックミニ スーパーファミコンのコントローラーを PC で使うデバイスを作成した。

CLV-202 to USB とは

CLV-202 to USBはニンテンドークラシックミニ スーパーファミコンのコントローラー(CLV-202)を無改造でUSB ゲームパッドとして扱えるようにする。

スペシャルサンクス

本ハードウェア及びソフトウェアは以下のサイトの情報がなければ完成しなかったでしょう。深く感謝いたします。

ニンテンドークラシックミニ スーパーファミコンの通信解析 – Keio Robotics Association

プロローグ

河原は Windows 版ぷよぷよテトリスのオンライン対戦に明け暮れていた…。(やるのはテトリスだ)

ある日使っていた Xbox One のコントローラーの D-Pad がチャタリングを起こすようになり、まともにゲームを遊ぶことができなくなってしまった。

モデルチェンジ前のXbox Oneコントローラー

そこで新しい Xbox One のコントローラーを購入したのだが、新しいコントローラーはモデルチェンジによって D-Pad の形状が変わっていた。
河原は、操作感のしっくりこないコントローラーと一緒に悶々とした日々を送った。

モデルチェンジ後のXbox Oneコントローラー

そんな中、なんとぷよぷよテトリス 2の発売が決定されたのだ。

このことで、ゲームが発売されるまでに問題を解決させる必要が出てきた。

さてアクションパズルゲームの勝敗は十字キーの良し悪しによって決まる。
素晴らしい十字キーを持つコントローラーといえばスーパーファミコンのコントローラーだ。

ニンテンドークラシックミニ スーパーファミコンのコントローラー

調べたところスーパーファミコンのコントローラーは現在では生産されていないが、ニンテンドークラシックミニ スーパーファミコンのコントローラーについては入手可能であることがわかった。

こうして河原はニンテンドークラシックミニ スーパーファミコンのコントローラーをベースに究極のゲームコントローラーを開発することにした。オンライン対戦で勝つために…。

全体の構成

長いので以降ニンテンドークラシックミニ スーパーファミコンのコントローラーのことをコントローラーと表記する。

コントローラーの中にはマイコンが入っていて、これは 3.3V で動作する。通信インターフェースは I2C である。

だからコントローラーの I2C の信号を受け取って、その値を USB ゲームコントローラーとしてパソコンに送ってやるようなハードウェアを作れば良いのだ。

diagram.png

ハードウェアを作るために必要な部品

以下にハードウェアを作るために必要な部品を挙げる。

Sparkfun Pro Micro

マイコンの最低要件は USB ゲームコントローラーの開発が可能で、かつ I2C 通信が可能であることだ。3.3V 駆動だとより良い。5V 駆動だと降圧する必要があり部品が増えて面倒だからだ。その点で言うと Sparkfun Pro Micro 3.3V/8MHz は完璧だ。

Sparkfun Pro Micro

Pro Micro 3.3V/8MHz - スイッチサイエンス

ちょっと高いが全てを解決する救世主のような存在だ。

コネクター

コントローラーとマイコンの接続にはコネクターを使用する。コネクターを使えばコントローラーに破壊的な改造を行う必要がなくなる。コネクターだけ販売しているサイトがある。

コネクター

Wii コネクタ(6P/メス) - aitendo

コネクター。なんでこんな部品が手に入るんだろう。

タクタイルスイッチ

マイコンのリセット用のタクタイルスイッチも用意する。

タクタイルスイッチ

タクトスイッチ(黒色): パーツ一般 秋月電子通商-電子部品・ネット通販

タクタイルスイッチ。マイコンのリセット用に使う。

USB ケーブル

マイコンと PC を接続するために USB ケーブルが必要である。コントローラーのケーブルは十分に長いので、USB ケーブルは短いものが望ましい。

USB ケーブル

Amazon.co.jp: エレコム エコ USB ケーブル 2.0 A-microB 0.15m U2C-JAMB15BK : パソコン・周辺機器

USB ケーブル。部屋に余っていたらそれを使っても良いが、短いほうが芸術点が高い。

ニンテンドークラシックミニ スーパーファミコンのコントローラー

コントローラーについては任天堂に迷惑をかけるわけにはいかないから詳しくは書かないが、手に入れる方法があるのだ。

ニンテンドークラシックミニ スーパーファミコンのコントローラー

素晴らしい操作性を持つコントローラーだ。

ハードウェアの配線図

以下にハードウェアの配線図を載せる。

配線図

3.3V の Pro Micro を選んだことで、配線は超簡単だ。

ハードウェアの組み立て

部品が揃ったら組み立てる。

ハードウェア作成の様子

ハードウェア作成の様子

ハードウェア作成の様子

ハードウェア作成の様子

なおハードウェアの筐体はダイソーで入手可能である。

ハードウェア作成の様子

カラーバリエーションが 3 種類もあるので、好きな色を選んで友だちに差をつけることができる。

ソフトウェアの作成

ハードウェアは作っただけでは動かず、ソフトウェアを用意しないといけないのだ。

コードは以下に置いた。

このソフトウェアは I2C 通信して、XInput のライブラリを呼んでいるだけである。

アクティビティ図

I2C 通信は以下の情報を参考に、Arduino 向けに落とし込んでいる。

ニンテンドークラシックミニ スーパーファミコンの通信解析 – Keio Robotics Association

Arduino IDE でのソフトウェア書き込み

これをマイコンに書き込めば終わりなのだが、今回使うマイコンは書き込み方が一癖あるので、攻略情報を教えよう。

ライブラリをインストールする

以下のリポジトリをクローンする。

Windows 環境の場合、クローンしたファイル群を以下のように置き直す。バージョンなど足りないディレクトリは手動で作成する。

%LOCALAPPDATA%\Arduino15
└─packages
    ├─arduino
    ├─builtin
    ├─xinput
    │  └─hardware
    │      └─avr
    │          └─1.0.5
    │              │  boards.txt
    │              │  LICENSE
    │              │  platform.txt
    │              │  post_install.bat
    │              │  README.md
    │              │
    │              ├─.github
    │              ├─bootloaders
    │              ├─cores
    │              ├─drivers
    │              ├─libraries
    │              └─variants
    └─xinput_sparkfun
        └─hardware
            └─avr
                └─1.0.0
                    │  avrdude.conf
                    │  boards.txt
                    │  platform.txt
                    │
                    ├─bootloaders
                    ├─libraries
                    └─variants

次に ツール-ライブラリの管理...から XInput をインストールする。

XInputライブラリのインストール

Arduino IDE を再起動する。

ソフトウェアを書き込む

ツール-ボードから以下のようにSparkFun Pro Micro w/ XInputを選択する。

ボードの選択

ここからマイコンへソフトウェアを書き込むのだが、これがやたらと難しい。

リセットスイッチをダブルクリックすると COM ポートが出現しマイコンが書き込みを受け付けるのだが、この時間がたった数秒間しかない。 (マイコンの接続状態は Arduino IDE のウィンドウ右下を見るとわかりやすい)

数秒間だとポートの設定だけで終わってしまうし、Arduino IDE は書き込みのたびにコンパイルするのでとても間に合わない。

そこで以下のようにソフトウェアを書き込む。

  1. マイコンを USB 接続する。
  2. リセットスイッチをダブルクリックすると COM ポートが出現するので、素早く Arduino IDE のツール-シリアルポートから COM ポートを設定する。
  3. Arduino IDE の書き込みボタンを押す。
  4. Arduino IDE のコンパイル完了。のトーストが出現したあたりで、リセットスイッチをダブルクリックし、マイコンに書き込みを受付させる。

うまくいけば Arduino IDE に書き込み完了と表示される。以下のように妙な赤字が出るかもしれないが、動けば良いのだ。

書き込みに成功した図

動いた

一心同体だ。

デモ

費用

はんだごてなどの工具は含めていない。結構かかったが面白かったので良し。

材料 値段[円]
コントローラー 1650
コントローラー送料 660
マイコン 2064
マイコン送料 200
コネクター 200
コネクター送料 579
タクトスイッチ 10
ケース 110
線材 555
合計 6028

エピローグ

こうして究極の操作性を持つコントローラーを手に入れた河原は、練習の日々を送った…。

しかし発売されたぷよぷよテトリス 2 は操作性が良くなくて、オンライン対戦を止めてしまった。

でもアナログスティックの要らないゲームをパソコンで遊ぶときには、このコントローラーを使っている。

おわり

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?