お金がないので自作ESP32簡易ボードを安く作ってみる


この記事は[東工大ロボット技術研究会アドベントカレンダー](https://adventar.org/calendars/9288)の6日目(たぶん)です。

工大祭でも出したけどあんまり展示説明をちゃんとできなかったので書いてみようかなと思った次第。
前がたくぽんさんおりがねさんなのもありロ技のすごい人とあんま比べないでねという気持ちで書いています。

↓こんなのを作った(GNDベタしてます)
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3342060/249d130d-683d-d0bb-839c-d42d55875f59.png" width="30%">


## ざっくり概要

ESP32のDevKitよく使うし値上がりしちゃったので基板作成の練習もかねて自作簡易マイコンボードしてみたよ！という話。
ちなみに1個450円+労力のSeed Studio XIAOっぽいものが完成した。
今後これを使っていろいろ作るんだ...

送料込み500円以内で頼めるjlcpcbは神。でも円安...

## 経緯

高校で初めて触ったマイコンボードがESPの開発ボードで、そこからUNOとかNanoとかちょっとNucleoとか触ってみたものの結局使っているESPの開発ボードくん。
安くて性能も良くて無線も使えてお世話になっておりますという感じだったのだが、気づいたら値上げされていて泣いてしまった。

なんか手元に気づいたら7個くらいある秋月のESP32-DevKitC-32E

https://akizukidenshi.com/catalog/g/gM-15673/

シゲゾーンとかで買ったピン配置が違うのとかも合わせればもうちょいある(が、数個焼け死んでいる。合掌。)

そんな時友達がESP32c3っていうUSB直つなぎで書き込める安いESPが出たぜ！と教えてくれたのでせっかくだから基板発注してみることにした。

https://akizukidenshi.com/catalog/g/gM-17493/

## 設計

とにかく安くて、使いやすいのがいいなーということで、
* PCに直差しできる(USBA)
* 周辺パーツは少なく安く
* 電源確認LEDくらい欲しいな
* I2Cとデモ用LEDとかは欲しいな
* 使ってたやつはブレッドボードで使いにくかったのでそこは改善したい
ということを考えて設計した。

性能は[ESP32C3のデータシート](https://akizukidenshi.com/download/ds/espressifsystems/esp32-c3-wroom-02_datasheet_en.pdf)、回路図は僕の[github](https://github.com/daidai100/PCB-stuffs/tree/main/esp32c3d4)にあります。

## 部品リスト

| 部品名 | 入手元 | 単価(円) |個数|
|:-:|:-:|:-:|:-:|
| ESP32C3 | [秋月](https://akizukidenshi.com/catalog/g/gM-17493/) | 310 |1|
| 好みのチップLED(電源用) | 秋月とか | 10くらい | 1 |
| 好みのチップLED(デモ用) | 秋月とか | 10くらい | 1 |
| 300Ωくらいのチップ抵抗 | 千石とか | 5くらい | 3 |
| 3.3Vレギュレータ | [秋月](https://akizukidenshi.com/catalog/g/gI-11299/) | 50 | 1 |
| 基板 | 自分で発注 | 50くらい | 1 |

計450円くらい。
お好みでピンヘッダもつけてね。

あと労力(はんだ付け、慣れれば10分くらい、慣れないと一時間半とか)がいります。
基板は僕に話しかけてくれれば渡せるかも(？)

## できるまで

#### 試作1号：気合で作る

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3342060/f646a53f-494f-7e99-86fe-085ca3905249.png" width="30%">

最低限動くものをということでとにかくレギュレータ挟んでUSBとLEDだけつけたものをユニバ基盤で作る。〇時間かかった上に何個か焼いちゃった...

#### 試作2号：ブレボテスト用

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3342060/d259fdbf-ff5e-8b83-6360-41ac6d5f27d1.png" width="30%">

基板制作の練習がてら作ったもの。下記の１号くんがうまく動かない原因探るのには役立ったがその後あんまり使われていない。
白基板結構好きかも。



#### 1号：とにかく基板で

基板で作るぜ！って言ってKicadを勉強しながら頑張ったもの。
USBの配線でGNDとVINを間違えるという一番やってはいけないミスをして、レギュレータで火傷した。
この凡ミスに気づくまで１週間くらい頭を悩ませた。
ワイヤとUSBを別ではんだ付けして無理やり動かしてます。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3342060/8dec7166-dbb3-d588-0320-02b3e8b70730.jpeg" width="50%">


#### 2号：ちゃんと動くやつ
USBの配線をちゃんとしたもの。
パソコン直差しで動いたので満足。
ここで初めてフラックスの存在を知る。
フラックス大好き。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3342060/11f7c2a8-7650-a260-40f0-cb7d68b962f0.jpeg" width="30%">


#### 3号：ちゃんと動くやつv2
GNDベタ塗りとか細かい修正をした。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3342060/2721c43b-e33a-34b7-f632-78d7aed9640c.jpeg" width="30%">



#### 4号：面付け
JLCPCB安いけど100mm x 100mmまで使えるのにもったいないし面付けしたらいいのでね？と思いやってみた。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3342060/6c3ce8ba-1922-ff33-8a74-c4dbdfd0ee9c.jpeg" width="60%">

以下の記事を参考にした。

https://sui-lab.info/archives/3748

結構学びがあった。
予想外だったりしたのは以下の点
* Vカットと平行な外辺が必要かつ5mmくらい幅が欲しいので実質90x90くらいしか使えない
* JLCPCBがレーザーとかで切ってるのか鋭角でも行ける
* 面付けすると激安クーポンが効かなくて＄2→＄7.4みたいになる(送料は変わらず)
* ビアで接続とかにすれば面付け判定されないので＄2でいける模様

激安クーポン対象外になるのはいたいなあ...それでも面付けしたほうが単価半額以下になるんだが

## 結論
500円以内で使いたい機能は出せるのができたのとKicadの練習にとてもなったので満足です。
製作費で普通に買えとかいう声は聞こえない。クリスマスにお金使う予定もないんでいいんです。(白目)

↓jlcpcbの箱のサイズがちょうどよくて好きです。箱が増えていく
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3342060/73ed0856-d24b-ba95-c422-7802cde3036c.jpeg" width="60%">

せっかく安く大量に作れそうだから思いついた機構のテストとか群ロボ的なのとかに使いたいな...と考えている。

今は球体ロボットと三輪傾斜オムニをとりあえずこれで動かそうとしているので、その次は4足、ドローンあたりがやりたいなあ。はばたきドローンもやってみたい。

ということでよいクリスマス年末年始をー