<ナビゲーション>
GBC-SHC基板 Rev1.0 SHC (wSHC) を作成する
GBC-SHC基板 Rev1.0 電動フォーカサーを作成する
GBC-SHC基板 Rev1.0 DCINを使用する
GBC-SHC基板 Rev1.0 電池駆動
SHCとしての実装パターン
基本パターンの実装です。パススルーST-4ポートを持ちます。
OnStepとの接続はST-4ポートを使用し、電源も同時にOnStep側から供給します。
OnStep側のST-4ポートの1番ピンに+5Vを出力する改造を行ってください。
wSHC (Wifiによる接続) として実装する場合は、wSHCとして実装する を参照してください。
パーツ表
記号番号 | パーツ名 | 数 | 備考 |
---|---|---|---|
U2 | ESP32-DevKitC | 1 | 秋月 ESP32-DevKitC-32E フラッシュメモリ領域は最低4M必要です。 |
RN1 | 抵抗アレイ | 1 | 2.2KΩ 8素子。 共立エレショップ 抵抗アレイ8素子 |
RN2 | 抵抗アレイ | 1 | 2.2KΩ 4素子。 共立エレショップ 抵抗アレイ4素子 パススルーST-4ポート用 パススルーST-4ポートを実装しない場合は不要です。 |
D1 | ショットキーバリアダイオード | 1 | 基板5VとESP32ボードUSB電源の衝突防止用。 秋月 SB340LS |
U3 | OLEDディスプレイ | 1 | 126x64ドットのOLEDディスプレイ。制御はI2C 4結線。0.96インチ、1.3インチ、1.54インチ、などのバリエーションがある。 |
J7 | 6極6芯モジュラ | 1 | 秋月 6極6芯モジュラ (※1) パススルーST-4ポート用 パススルーST-4ポートを実装しない場合は不要です。 |
J8 | ヘッダピン 6P | 1 | OnStepとの接続用ポート wSHCとして実装する場合は不要です。 |
- | GBC シェル | 1 | Gameboy Colorのシェルキット。 GBCのメンテナンス用キットで、ケース、ボタン、接点ラバー、ねじ類がセットになっているもの。 |
部品調達先
秋月電子通商 いつもお世話になっています。スイッチサイエンス モジュール系強し。変わったパーツ多数あります。
共立エレショップ 関西ならここ。学生時代に入り浸ってました。
マルツオンライン 部品点数の多さならここ。特殊部品も見つかったりします。
aitendo 液晶が豊富。モジュール系が充実。
朱雀技研工房ストア ロボット系部材、モータードライバなど扱いあり。
ストロベリー・リナックス 電源系のモジュール探すならここ。
ロボショップ ロボット系のパーツが豊富。Teensy, DRV8825の扱いあり。
Amazon 中華系ショップは海外発送だったりするので注意。コピー品が送られてくることがあるので品質は期待してはいけません(^^;
部品実装
部品点数も少なくESP32とOLED以外、目立った部品もありません。
OLEDディスプレイとESP32が表裏で取り付け位置が重なるため、先に裏面(ボタン側でない方)のESP32を取り付ける必要があります。
記号番号 | 備考 |
---|---|
U2 | ESP32-DevKitC 市販されているピンヘッダのまま直接取り付けます。 ケースの高さ上、ソケット化できません。 |
RN1, RN2 | 2.2KΩの抵抗アレイです。 コモンピンの位置に注意してください。画像の▲がコモンピンです。 |
J7 | 6極6芯モジュラ パススルーST-4ポート用です。パススルーST-4ポートを実装しない場合は不要です。 |
J8 | OnStep側のST-4ポートへ接続します。 対応する記号の通り接続します。 オリジナルOnStep基板を使用する場合は、ピンアサインが同じです。 他の基板等、OnStep ST-4ポートと接続する場合はアサインにご注意ください。 wSHCとして実装する場合は使用しません。 |
表面はOLEDディスプレイとダイオードだけです。
記号番号 | 備考 |
---|---|
U3 | OLEDディスプレイ、I2Cの4結線のもの。 0.96インチ、1.3インチ、1.54インチの各サイズが取り付けられます。お好みで。 |
JP1, JP2 | OLEDディスプレイの電源入力を選択するジャンパです。 OLEDディスプレイには、ピン配置のVCCとGNDが入れ替わっているものがあります。 取り付けるOLEDディスプレイに合わせて、3.3VかGNDへジャンパしてください。 |
ESP32-DevKitC(-32E)
秋月などで入手できます。
詳しい注意点などは、こちらの記事 オリジナル OnStep基板 Rev3.0(ESP32) をご覧ください。
コネクタ類
6極6芯モジュラ
ST-4互換インターフェイスです。
ピンアサインはポート正面から見て図のとおりです。オフィシャルのPCB設計とはピン配列が異なります。本基板は一般的なST-4ポートのピン配列に準拠しています。
Smart Hand Controller の書き込み
Smart Hand Controller ver3.03 をベースに解説します。
ソースコードは SmartHandController GitHub を参照してください。
Arduino IDE において、 ESP32-DevKitC で開発する環境を整えます。
ボードマネージャでの導入方法などは説明しませんので他のサイトにて調べてください。
前準備
ESP32版 SHCのファームウェアについての情報は、 The Smart Hand Controller (SHC)に記述があります。
ボードマネージャにおいて、ESP32 board ver 2.0.1 で安定していると書かれていますので、このバージョンを基準にするといいでしょう。
また、別途下記のライブラリが必要です。
- U8g2 Library version 2.31.2
- Ephemeris Library
Arduino IDE 書き込み設定
ボードタイプは ESP32 Dev Module を選択します。
ESP32へ書き込む設定において、フラッシュメモリ4Mの場合、領域のパーティション設定を Huge APP にしておく必要があります。
SHCはプログラムサイズが大きいので、プログラム領域に3M必要です。
Config.h
設定は、基本的に Config.h で個別の設定を行います。
DISPLAY_OLED (必須)
#define DISPLAY_OLED SH1106
コードのコメントに書いてあるように、通常、SH1106, SSD1306, SSD1309 が指定できます。
SERIAL_ONSTEP (必須)
#define SERIAL_ONSTEP SERIAL_ST4
ST4_AUX_INTERFACE (オプション)
#define ST4_AUX_INTERFACE ON
※OnStepビルド時にエラーが出る
Arduino IDEのESP32ボードバージョンによって、ビルドエラーが出たり、正常に動作しなかったりします。動かない場合はArduino IDEのボードマネージャより、ESP32ボードバージョンを下げてみてください。
wSHCとしての実装
OnStep に付随して SmarWebServerを動かし Wifi APとして動かしている場合、SHCをWifi経由で接続することができます。
SmartWebServer (SWS) を稼働させる方法は、「オリジナル OnStep基板 Rev2.x +ESP-WROOM-02」を参照してください。OnStep付属のAddons Wifi では、wSHC接続できません。
ESP32版のOnStepXでは機能が統合されるので別途、準備する必要が無くなります。
Wifiを使用した接続、Wifi(Wireless) Smart Hand Controller として実装するには、基板上の J8 からOnStepと物理的に接続するモジュラケーブルを取り外し、Configを修正します。
ただしその場合 、OnStep側からの電源が得られません。
解決方法としては、
- ESP32のUSBコネクタにモバイルバッテリーなどを接続し給電する。
- 基板に用意しているDCINパターン回路を実装し外部ACアダプタから給電する。
- 昇圧モジュールを利用し電池駆動により給電する。
ファームウェアの設定は次の通りに変更します。
Config.h
DISPLAY_OLED (必須)
OLEDディスプレイのコントローラ名を指定します。#define DISPLAY_OLED SH1106
コードのコメントに書いてあるように、通常、SH1106, SSD1306, SSD1309 が指定できます。
SERIAL_ONSTEP (必須)
#define SERIAL_ONSTEP SERIAL_IP
ST4_AUX_INTERFACE (オプション)
#define ST4_AUX_INTERFACE ON
Extended.Config.h
SERIAL_IP_MODE (必須)
#define SERIAL_IP_MODE STATION
ONSTEP*_HOST_NAME, ONSTEP*_SSID, ONSTEP*_PASSWORD, ONSTEP*_IP_ADDR (必須オプション)
接続する OnStep アクセスポイントを3つ登録できます。
1つのwSHCで3つのOnStep Wifiを切り替えながら操作できます。
ONSTEP*_HOST_NAME メニューに表示されるOnStep名です。ブランクにすると無効になります。
ONSTEP*_SSID OnStep WifiのSSIDです。複数のOnStepを扱う場合は必ず OnStep毎にSSID名を個別に設定しましょう。
ONSTEP*_PASSWORD SSIDのパスワードです。
ONSTEP*_IP_ADDR OnStepのIPアドレスです。
その他
ケース
基板はGameboy Color のシェルキットに入るようにデザインされています。
シェルキットはおおむね、ケース、ボタン類、ラバースイッチ、ネジ、ドライバ、などが含まれます。Amazonなどで入手可能です。
中華製なので精度はあまりよくありませんが、見た目的には問題ありません。
ケース加工が若干必要になります。
基本的には基板を組み上げてから、ケースに当たる部分を削っていく形で現物合わせすればいいでしょう。
ネジが2種類付いています。
1つは短いプラスネジが3本。ボタン部分の基板固定用で下図の矢印の箇所に使用します。
もう1つはY字の特殊ネジが6本。こちらはケースをとめるネジです。
ケーブル類の引き出しは邪魔にならない場所から出せばいいと思います。
完成はこんな感じです。
0 件のコメント:
コメントを投稿