スーパーファミコン コントローラーの無線化プロジェクト:動作バージョン1
動作のバグが残っていた( https://funasover.blogspot.com/2025/04/blog-post.html )スーパーファミコンのコントローラー無線化プロジェクト。 多少力技だが一旦の問題解決、完全動作。 本来は、BLE通信で低消費電力に作るべきだと思うが、まずまずはWiFiを利用している点はあしからず。BLE化は後ほど。また現時点ではブレッドボード品。BLE完了時点で基板を起こそうかと。 【以前の課題】 https://funasover.blogspot.com/2025/04/attachinterrupt.html SFC本体が発するP/Sのパルスを検出して、ボタン状態を本体に送り込む際、パルスの検出時間にバラつき(ジッター)があり、どうする事もできず。 おそらく、ESP-IDFなどの開発環境で開発すれば回避できるかもしれないが、お手軽Arduino環境下ではお手上げ。 【解決手法】 ESPのArduino環境下でのGPIOインターラプトは使えないのであれば、別のマイコンという事でCH32V003を使う。ESPとの間はSPIで通信。肝心なCH32V003のGPIOインターラプトのバラつきは非常に小さい事を動作を確認済み( https://funasover.blogspot.com/2025/05/ch32v003gpio-external-interrupt.html#more ) ICが一つ増えるが、50円のIC、上の図ではP/Sをレベルコンバーターを通しているが、5VトレラントのGPIOピンをもっているので、トランジスタを1つ割愛はできるので、トータルではフットプリントや部品点数もあまり変わらない。 【作製ステップ1】 コントローラー回路 現時点では、電源をバッテリーから取るという回路ではなく、USBから給電しているのであしからず。D1,D2,D5を用いているが、これは任意。スケッチの方も用いるピンに合わせて変更する。 ArduinoIDEスケッチ #include <ESP8266WiFi.h> // WiFih> #include <WiFiUdp.h> #include "ESP8266TimerInterrupt.h" const char ssid[...