Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

USBパドルコントローラ外観

USBPaddleController

raspberrypi picoを使用したUSBパドルコントローラです
USBマウスとして動作しますので、それらの入力を受け付けるソフトであれば大抵動くんじゃないかと思います (USBゲームパッドモードも追加しました)
X/Y軸の切り替えと速度変更にも対応しています

パドル本体について

パドルユニット部は、ういよめん氏作のパドルコントローラを使用します
https://www.thingiverse.com/thing:5404242
ういよめん氏のBOOTHで購入する、自分で3Dプリントする等の手段で別途ご用意ください
https://uiyomengames.booth.pm/items/3914858
当方未確認ですが、ういよめん氏のパドルコントローラのネジ位置はアーケード版アルカノイド用のパドルと寸法が合わせてあるそうなので、そちらも使えるかもしれません

パドル以外のハードウェア

hardwareフォルダにはパドルユニットに組み付けるセンサー基板とpicoを載せるメイン基板の回路図とガーバーを入れておきました
ガーバーのzipファイルをそのままJLCPCBに送ることで基板を発注できます(たぶん数百円)
組立時の注意としては、センサー基板は位置がずれると正常に動きを検知できなくなるようです
パドルユニットの「ギア4」の中心が二つのセンサーの中心付近にくるようにしてください

使用部品

メイン基板 (RaspberryPi pico用)

部品 型番 個数 備考
マイコン RaspberryPi pico 1
ダイオード 1SS178 2 メイン基板 D1,D2
XHコネクタ ベース付ポスト トップ型 2P B2B-XH-A(LF)(SN) 5 メイン基板J2-J6
XHコネクタ ベース付ポスト トップ型 4P B4B-XH-A(LF)(SN) 1 メイン基板J1


メイン基板 (RP2040-Zero用)

部品 型番 個数 備考
マイコン RP2040-Zero 1
ダイオード 1SS178 2 メイン基板 D1,D2
XHコネクタ ベース付ポスト トップ型 2P B2B-XH-A(LF)(SN) 5 メイン基板J2-J6
XHコネクタ ベース付ポスト トップ型 4P B4B-XH-A(LF)(SN) 1 メイン基板J1


センサー基板 (センサー基板はpico/RS2040-Zero共通です)

部品 型番 個数 備考
インバータ 74HC14
(U74HC14L-D14-T)
1 センサー基板
透過型フォトインタラプタ SG206 2 センサー基板 U2,U3 他のパーツの裏側に付きます
カーボン抵抗 180Ω 2 センサー基板 R1,R2
カーボン抵抗 2.2kΩ 2 センサー基板 R3,R4
XHコネクタ ベース付ポスト トップ型 4P B4B-XH-A(LF)(SN) 1 センサー基板J1


配線 (pico/RS2040-Zero共通)

部品 型番 個数 備考
XHコネクタ ハウジング 2P XHP-2 5
XHコネクタ ハウジング 4P XHP-4 2
XHコネクター ハウジング用コンタクト SXH-001T-P0.6 18
配線 適量 最低4色は揃えるのが良いでしょう


ケース

部品 型番 個数 備考
24φネジ式押しボタン PS-14-DN 3
サービススイッチ(DS-412) 2
M3 インサートナット 7 ケース上部パーツの穴に入れる
M3 5mm ビス 4
M5 ナット 4 パドルユニットをケースに組み付けるのに使用
M5 15mm ビス 4 パドルユニットをケースに組み付けるのに使用
M3 6mm タッピングビス 3 ケースにメイン基板を固定するのに3個
パドルユニットにセンサー基板を固定するのに2個


パームレスト(ケース用追加装備)

部品 型番 個数 備考
M3 8mm ビス 2 ケースへの取り付けに使用


メイン基板上のコネクタとスイッチの対応

picoコネクタ# RP2040-Zeroコネクタ# スイッチ# 機能
J2 J2 SW1 左ボタン
J3 J3 SW2 右ボタン
J4 J5 SW3 速度切り替えボタン
J5 J6 SW4 X/Y軸切り替えボタン
J6 J4 SW5 センターボタン



ファームウェアの書込み

RaspberryPi picoの場合

picoのBOOTSELを押しながらUSBケーブルを接続するとエクスプローラーが起ち上がり、picoのフォルダが表示されます(winの場合)
そこにUSBPaddleController_pico.uf2をコピーしてください
ファームウェアの更新が完了するとpicoが再起動します

RP2040-Zeroの場合

PCに接続した状態でZeroのBOOTを押しながらRESETを押下するとエクスプローラーが起ち上がり、Zeroのフォルダが表示されます(winの場合)
そこにUSBPaddleController_rp2040_zero.uf2をコピーしてください
ファームウェアの更新が完了するとZeroが再起動します



ボタンの機能について

速度切り替えボタン

SW3は速度切り替えボタンです
パドルの反応速度を4段階で切り替えることが可能です
押下するごとに高速から順に低速に切り替わり、最低速の次は高速に戻ります
切り替え後の速度はLEDのフラッシュで通知されます(最高速=1回...最低速=4回)

X/Y軸切り替えボタン

SW4はX/Y軸切り替えボタンです
押下するごとにマウスの移動方向が切り替わります
X軸移動のみでは「メタルオレンジEX」のメニュー操作ができなかったので追加しました
軸切り替えボタンと右または左ボタン同時押しのセンタークリックは廃止しました

連射モード

速度切替ボタンを押しながら左右センターいずれかのボタンを押すと連射モードのON/OFF切り替えが行われます
連射モードONになっているボタンを押下している間、連射します
連射速度は秒間10発程度の固定です


ゲームパッドモード(ポールポジションモード)

X/Y軸切り替えボタン速度切り替えボタンを同時押しすると、USBマウスモードとUSBゲームパッドモードが交互に切り替わります
ゲームパッドモードに切り替わった時、LEDが10秒間点滅します(RP2040-Zetoでは緑色点滅)
マウスモードに切り替わった時、LEDが10秒間点灯します(RP2040-Zetoでは赤色点灯)
USBゲームパットモードではボタンの機能が以下のようになります

マウス操作 パッド操作
回転 左スティック
R2
3秒以上長押しした後に離すと、L2が自動で0.9秒間連打されます(オートブレーキ)
L2連打中に再度ボタン押下で連打がキャンセルされます
オートブレーキ作動中はLEDが点滅します
×/□のトグル動作
センター
速度切り替え PS

速度切り替え/連射は無効化されます
その他のボタン機能はUSBマウスモードと同様に機能します
PS5との接続はFGC2を介してどうにかなるかもしれません


設定の保存

マウス/ゲームパッドのモードと各設定値は設定変更のタイミングで保存され、再起動時は設定内容を復元します
設定値はマウス/ゲームパッドのモード毎に保存されます



ケースについて

パドルコントローラのケースはサイズ違いのものを用意しました
小さい方は20cmX20cmのヒートベッドで出力可能ですが、2ボタン仕様であり手の置き場もないため若干操作しづらくなっています
大きい方はケースの締め付けにインサートナットを使用しますので別途ご用意ください
自作されたり、アーケード機のコントロールボックス等に入れるのも良いと思います


組み立て手順

パドルユニットの作成

パドルユニット

  • 公開されているデータをもとに3Dプリント等を行ってください


基板の作成

メイン基板 pico用
メイン基板 RaspberryPi pico用

メイン基板 RP2040-Zero用
メイン基板 RP2040-Zero用

センサー基板
センサー基板


  • 基板イメージと使用部品表を参考に部品を半田付けしてください
  • メイン基板は使用するマイコンによってRaspberryPi pico用かRP2040-Zero用のどちらかを使用してください
  • センサー基板はどちらのマイコンを使う場合でも共通です
  • メイン基板へのRaspberryPi picoの取り付けはピンヘッダ/ソケットを使用することを前提としています
  • メイン基板へのRP2040-Zeroの取り付けはピンヘッダを使用せず直接はんだ付けすることを前提としています
  • センサー基板のフォトインタラプタはその他の部品の裏側の面に実装します


パドルユニットにセンサー基板を取り付け

パドルユニットとセンサー基板

パドルユニットとセンサー基板



  • パドルユニットにセンサー基板を取り付けます
  • フォトインタラプタとパドルユニットの円盤が接触しないようにしてください


ケース(上)にインサートナットの埋め込み

ケース(上)

  • ケース(上)の底面の穴にM3用のインサートナットを埋め込みます


ケース(上)


  • 側面の3か所の穴にもM3用のインサートナットを埋め込みます



ケース(上)に透明フィラメントの埋め込み

ケース(上)
ケース(上)
ケース(上)

  • 2mm穴に透明フィラメントを埋め込みます(透明フィラメントが無い場合はスキップしても問題ありません)
  • 穴が狭い場合は1.8mmぐらいのドリルで穴を広げてください
  • 両端がケースの面とツライチになるようにカットしてください
  • フィラメントが緩くて脱落する場合は接着剤等で固定してください



ケース(上)にパドルユニットとスイッチを取り付け

Zeroケース(上)

  • ケース(上)にパドルユニットとボタンを取り付けます



ケース(下)にメイン基板を取り付け

ケース(下)

  • ケース(下)にメイン基板を取り付けます

メイン基板と接続

配線

  • メイン基板とセンサー基板、各スイッチを接続します
  • スイッチ類はすべて同じコネクタ形状ですので、ボタン配置はお好みで組み替えてください

完成

完成

  • ケースを閉じて完成です お疲れさまでした



追加装備

ケース側面に埋め込まれた3か所のナットに追加装備を装着することが可能です

パームレスト

ケースが以前のものと比較してコンパクトになった反面、手を置くスペースがなくなっているので、外付けのパームレストを作成しました
取り付け位置を替えることで右手/左手のどちらにも対応可能です
またパームレスト天面にM3ビス用の穴を5個あけていますので、上部にさらに装備追加可能です

パームレスト
パームレスト
パームレスト



パームレスト組立手順

パームレスト部品

  • 部品を準備します
  • 垂直支柱は4本、斜め支柱は2種類を各5本ずつ出力してください

パームレスト組立
パームレスト組立

  • 片方のプレートに支柱を立てます
  • 垂直支柱は窪みがある面を斜め支柱が刺さる穴の方に向けてください
  • 斜め支柱の向きや本数はお好みでどうぞ

パームレスト組立

  • もう片方のプレートに立てている支柱を差し込んで完成です
  • そのままですと落下したときにバラバラになることがある(あった)ので、組立後に接着剤を流し込むのもオススメです



テスト環境

以下のテスト環境で動作確認を行っています

  • X68000 Z
  • PlayStation 5 (ゲームパッドモードはBrook FGC2を使用)
  • Windows11


参考サイト

About

USBマウスとして動作するパドルコントローラ 3ボタン仕様

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages