2022年は電子工作への入れ込みが更に本格化した年でした。
今年制作したものを紹介します。
- 電子工作系
- ProMicro型 RP2040 開発ボード RP-ProMicro
- Raspberry Pi Pico 互換開発ボード RP2040-LargeBoard
- ESP32-S3 開発ボード
- ESP32-C3 開発ボード
- ESP32 Writer
- ESP32-C3-WROOM-02 Writer
- USB Type-C DIP Kit
- USB Type-C 通電テスター
- USB Type-C オンオフスイッチ
- 自作キーボード系
USB Type-C DIP Kit と USB Type-C 通電テスター
秋月の USB 2.0 Type-C DIP のクローン品です。Type-Cコネクタにミッドマウントが使えるのが特徴。
この時はまだ0.5mmピッチに慣れておらず、有鉛はんだを使おうと言っていますが、今は無鉛はんだで実装しています。
先週鉛フリーはんだで USB-C コネクタ実装で0.5mmピッチのブリッジが残ってうまく行かなかったのを、改めて鉛フリーはんだ対応のフラックス(HOZAN H-722)を買って補修してみたところ、3つ中2つはちゃんと補修できた。https://t.co/goJf0er1Ui https://t.co/LFUzLMNq1g
— 74th (@74th) February 5, 2022
Sparrow62v2 には、これで作ったUSBソケットを実装済みのものを同梱して、USB Type-Cの実装を私の方で行うようにしていました。
初めて V-CUT の注文をしました。
届いた!ちゃんとシルクでV-SCOREと書いたところがV-Cutされている。これで無限にUSB Type-Cのはんだ付けの苦行に挑戦できる。 https://t.co/aWup9kRNKt pic.twitter.com/07g7eRDzuE
— 74th (@74th) January 28, 2022
同時に、正しく実装できたかをテストできる USB Type-C 通電チェッカーを作りました。これがあるおかげで、手軽に USB Type-C が実装できます。
既にここで作った40枚つづりのうち、1シート使ってしまったので、50 以上は USB Type-C 実装していたようです。
ちなみに、この時使っていたフットプリントから今は更に改善していて、SUBピンを省略することで、さらに配線しやすくなりました。
こちらは booth にも出しています(なんと購入者が1人おられました)。
USB Type-C スイッチ
本業で車載Androidアプリを開発することがあり、その時の問題として、通信したいにもかかわらず、給電能力低くバッテリーが無くなってしまうということがありました。
また、開発ボード作りで頻繁に電源のオンオフをするにもかかわらず、USB Type-Cの抜き差しが非常に面倒でした。
そこで、以下のような USB Type-C 中継器を作りました。
電源供給能力の小さい USB から、より大きな電源を供給しつつ通信したい時に、通信用と電源用の2つのUSB入力をまーじするやつも作った。電源供給を遮断して相手先をリセットするトグルスイッチも付けた。 pic.twitter.com/iQl5W6e2IC
— 74th (@74th) June 25, 2022
スイッチはトグルスイッチでオンオフができます。 USBのポートは二股になっており、電源供給用としてUSBを追加で差し込むことができます。 これでUSBポートの通信したいけれど供給電力が足りない問題を解決しました。
RP2040
RaspberryPiPicoのMCUを使ってみたいとおもって、試行錯誤していました。
RP2040変換ボード
まずRP2040 を DIP 化すればブレッドボードで使えるのでは?と作りました。
しかし、これはブレッドボードで動かすところまで行きませんでした。
なお、boothでこれの残りはお裾分け品として出しています。
https://booth.pm/ja/items/3678267booth.pm
RP2040 開発ボード作り
RP2040 のテキストに沿った開発ボードを作っていました。ProMicro型は2回、Pico型は7回作り直しました。
作ったProMicro型RP2040開発ボードと、
— 74th (@74th) July 11, 2022
ProMicro本物と、Raspberry Pi Pico本物。
Picoも小さいが、やはりProMicro小さい。 pic.twitter.com/MW75ZdiSl9
しつこく作ってたPicoと同サイズのRP2040ボード、やっと安定して動いた! 最初ちょっとFlashの認識がしたりしなかったりで微妙だったのを、再度そのピンを実装し直してから安定した。 pic.twitter.com/lo4SAwSjiI
— 74th (@74th) July 29, 2022
ここでの試行錯誤は、技術書典13 に出した『土曜日のRaspberry Pi Pico』に書いています。
そして、この開発ボードを Booth や技術書典にだしたところ、8人もの方に購入いただいて、同志がいるのがわかって嬉しくなりました。
ESP32開発ボード作り
ESP32-S3
ESP32 の開発ボードには、秋月の開発ボードを使っていました。
ESP32-S3 が USB Device 機能付きと言うことを知り、この開発ボードが欲しくなりました。
公式の開発ボード ESP32-DevKitC を触ったことが在るとわかると思いますが、付属のピンヘッダでブレッドボードに挿すと、引き抜くのが大変です。 秋月の開発ボードだと細ピンヘッダが使われているので、非常に扱いやすいです。くわえてUSB Type-Cでないものは使いたくないです。
そのため、ESP32-S3の自作開発ボード作りに取り組みました。
オリジナルのESP32-S3、DevKitC互換、動いた!
— 74th (@74th) May 26, 2022
(ただしUSBのD+/D-を逆に配線してしまいUSBだけ動かない) pic.twitter.com/aou6CSjKKF
最初のうちは、秋月の開発ボードのUARTと互換のピンソケットのポートを持たせていましたが、途中からはESP-ProgのUARTと互換のボックスピンヘッダを使うようになりました。抜き差し等の取り回しも快適で、すごく重宝しています。
ESP Prog のUARTの口(1.27mm pitch box pin header 2x3)を持つの ESP32-S3 ボードと、CH340Cを使ったライタが動いた。しかしESP Prog から電源供給しても電力足りてない感じがする。Box Pin Headerは向きとか間違えることがなくて、便利だ。1.27なら小さいし。 pic.twitter.com/rusYmYtSrm
— 74th (@74th) July 30, 2022
こちらは booth でモジュール付きキットを出しています。
ESP32-C3
ESP32-C3 を使ってみたく、こちらの開発ボードを作っていました。
技適認証を受けたのが、ESP32-C3-MINI-1 というSMD実装専用(ESP32-WROOM-32のように重ね合わせて横から実装できるCastellated Holesではなく、裏面にしかランドがない)のため、フライパンでの表面実装にトライしていました。
ESP32-C3はすごく熱に弱いのか、ESP32-C3-MINI-1で動作する物を作ることはできませんでした。
ESP32-C3-MINI-1-N4 のフライパンリフローにトライ。クリームはんだの量を確認するために、モジュールなしでやってみて、その後モジュールを乗せてやってみるも、認識しない。。。 pic.twitter.com/kXMMmncupd
— 74th (@74th) May 28, 2022
その後、Castellated Holeを持つ ESP32-C3-WROOM-02 が技適認証を受けていました。 こちらで開発ボードを再度作りました。
自分で作った ESP32-C3-WROOM-02用開発ボード動いた。
— 74th (@74th) September 26, 2022
USB を電源とWrite専用に使おうと思うと、EN、BOOTだけではなくて、GPIO8 へのPullUpがないと、EN、BOOT(GPIO9)だけでは、USBBootになってしまってUSBからのWrite が成功しない。
DevKitMで動いてたのは、GPIO8にWS2812が繋がってる効果だった様子 pic.twitter.com/EZGhw0PqRa
これは動作しましたが、それでも熱に弱いのか、壊れることがありました。
ESP32-C3 開発ボード作ってみたけれど、動かない。先週動いてたボードも、よくわからないが応答なくなった。ESP32-C3、すごく壊れやすいのかな。このレベルで失敗すると、キットに組み込むの厳しいな。 pic.twitter.com/vHb7Vf7eRe
— 74th (@74th) October 23, 2022
と、結構ピーキーなC3ですが、Rustで開発しやすいので愛用しています。
こちらも booth にだしています。
Writer 作り
ESP32-WROOM-32モジュールを実装前に書き込むときには downloader を使っていました。
これが、ENとBOOTを操作しなくても書き込めるので、すごく便利です。 この仕組みを持ったUSBシリアル変換が欲しいと思い、CH340Cを使ってユニバーサル基板で作りました。
CH340C を使って ESP32 Writer を作った。EN と BOOT を押さなくても、書き込み開始するだけで、EN と BOOT を操作してくれる。 pic.twitter.com/nvIEf6SKoK
— 74th (@74th) June 4, 2022
それから、これを使ったESP-Prog互換のボックスピンヘッダモジュールを作りました。ついでに、電源用USBが別に取れる機構も追加しています。
ESP Prog のUARTの口(1.27mm pitch box pin header 2x3)を持つの ESP32-S3 ボードと、CH340Cを使ったライタが動いた。しかしESP Prog から電源供給しても電力足りてない感じがする。Box Pin Headerは向きとか間違えることがなくて、便利だ。1.27なら小さいし。 pic.twitter.com/rusYmYtSrm
— 74th (@74th) July 30, 2022
こちらは ESP32-Writer として booth に開発ボードと一緒に出しています。
また、ESP32-S3-WROOM-1は、ESP32-WROOM-32と同じピン配置であり、所有しているdownloadツールで書き込むことができました。
ESP32-S3 のライタには、ESP32 のライタを使えた!
— 74th (@74th) May 20, 2022
そして、Circuit Python が動いて USB HID がつかえるので、自作キーボードファームウェアの KMK Firmware を入れてみて、試しに動かしてみると、そのままでUSBキーボードとして動作した! pic.twitter.com/iun9KI5HYV
ESP32-C3-WROOM-02 は、ESP8266-DevKitS で書き込むことができました。それについては記事にしています。
また、FlexyPin というCastellated Holeにアクセスできるピンを作るキットがあり、これを使って ESP32-C3-WROOM-02 に最適な モジュールWriter を作りました。こちらも記事にしています。
Sparrow62v2
昨年からSparrow62自作キーボードを更にパワーアップさせるべく、Sparrow62v2を作りました(販売中)。
あえて、v2を作ったのはいくつかあります。
- 標準的なキーキャップセットを使いたい
- 右手のキーボードの外側にマウスを置くために、右側のキーの数をおさえ左側が膨らむデザインが良いのではと思いついた
- RaspberryPiPicoを使いたい
遊舎工房さんにも委託キットとしてだしました。
【委託】Sparrow62(+1) v2shop.yushakobo.jp
すごい自信作なのですが、6枚のデザインの異なるPCBを使うこともあり v1 よりも値段を上げたこともあってか、全然売れていませんw
新しい一体型の汎用ケース対応キーボード
突如、リニアキースイッチを試してみたところ、ケースが必要なのでは?と思い至りました。
そして、左右分割ではない一体型のキーボードを作り始めました。
これは自分しか使わないつもりで RP2040 を直付けにしています。
今更にこれに追加の機能を付けるべく、PCBを発注中です。
AZ1UBALLで遊ぶ
パレットシステムさんの AZ1UBALLを買わせていただき、モジュールを作って操作できるようにして遊んでいました。
PSPのジョイスティックっぽいモジュールをポインターにする
AZ1UBALLに触発されて、こんなモジュールを作りました。
これをモジュールとして販売すべく、準備中です。
他自作キーボード系
自作キーボードを勧めるのになかなか避けられないコンスルー入手問題について、研究していました。
KeyBall61 を購入して組み立てました。このツイッターに返信の形で組み立て工程が載っています。ポインターデバイスを研究したくなるきっかけと言えます。
内容確認したのでKeyball61の組立開始 pic.twitter.com/YkFvyWtPoG
— 74th (@74th) March 16, 2022
以上
思い返すと、いろいろ電子工作で遊んでいたなと思います。しかし、そのせいで副業の方の進捗が遅れていて、申し訳ない限り。
PCBを注文した回数(アップロードしたガーバーの数)は昨年12注文から、58注文(うち2つ再注文)に大幅に増えていました。
来年も Twitter で電子工作楽しいとはしゃいでいると思うので、よろしくお願いします。