デスクトップのWindowsとラップトップのMacを使い分けているのですが、マウスやキーボードをいちいち繋ぎかえるのが面倒だなーと思っていました。
そこで、ESP32C3をつかってブラウザなどからアクセスすることで接続先を簡単に切り替えられるUSBハブを作っちゃいました! 手を伸ばすことなくパソコンやスマホから簡単に切り替えられてとっても快適です!
機能紹介

どんなデバイスかわかりにくいのでちょっと説明
機能としてはUSBハブとUSB切替器を合体させたようなデバイスです。
普通の切替器だとボタンを押すことでホストを切り替えますが、このデバイスでは「usbhub.example.com/?enable=R」のようにアクセスすることで切り替えることができます。
つまり物理的に操作することなくPCやスマホからサクッと切り替えられるわけです。
そして重要なポイントはこれが単なる「遠隔切り替え」にとどまらない点にあります。
URLから切り替えできるということは、「ショートカット」 などのタスク自動化ツールと連携することで「Macを起動したら自動でMac側にホストを切り替える」なんてことが可能になっちゃうのです!
わぁ!便利!!
設計のコト

回路図はこんな感じ
1 : 4 のハブICを2つ組み合わせることでデバイスを7個つなげるようにしています。

基板デザインはこんな感じ
USB C端子のはんだ付けが上手くいくように、パッドを細くしたりSBUのパッドを削除したりといろいろ工夫しています。
ぼくはUSBの信号線にビビりまくっているので差動インピーダンスなどもちゃんと調整した…つもりです。
組み立て

細かいパーツの実装が面倒だったので裏面だけPCBAしてみました。
以前は手作業で基板を作っていたので、基板を洗浄するときにダイオードがポロポロ取れてしまうことがよくありました。 PCBAだとそういう心配がないのでとても快適です。

ステンシルも今回あわせて注文してみました。 これまでは3Dプリンターで印刷したステンシルを使っていたので、金属製は今回が初めてです。 ピッチの狭いフットプリントでもはんだがつながらなくて便利ですね〜
ただ、裏面の実装部品の厚みで基板が水平にならないのでなかなか大変でした。

おお! 上手に印刷できた気がします。

パーツを載せてリフローして洗浄して…
できました!
はんだブリッジなどの不良もなくいい感じです!

せっかくなので3Dプリンターでケースを作ってみました。
抹茶ようかんみたいでかわいいね〜

動作の方も問題なし! C端子に接続したデバイスもきちんと認識されています!
とっても可愛くそしてとっても便利なUSBハブを作ることができました! 部品選定や設計ミスなどで何度もつまづきながら、4回目にしてようやくの成功です☆
製造に必要なファイルは GitHub にアップロードしてあります。 もし興味があればぜひ作ってみてくださいね〜
アプリなどを作ったりしています! よかったらみていってください→
つくったもの
今のイチオシ↓
