自作キーボードを基板設計からやった時のまとめ

# 0. はじめに
初めて自分で設計したキーボードを作ったので、こだわりポイントや設計の時の苦労、作成に至った経緯をまとめました。

https://twitter.com/unbosoms/status/1689264929394905088?s=20

# 1. 自作キーボードとは
自作キーボードって何？という人のために自作キーボード専門店の「遊舎工房」さんの一文を引用しておきます。

>自作キーボードとは、という明確な定義は有りません。 基板が剥き出しのシンプルすぎるキーボードから、アルミ削り出しのケースによってひと目で分かる高級感が漂うキーボードも自作キーボードですし、既製品のキーボードでもカスタムしたら自作キーボードです。
キーボードにあなたのこだわりを注ぎ込み、入力を楽しみましょう。


https://shop.yushakobo.jp/pages/why-self-made-keyboard#:~:text=%E8%87%AA%E4%BD%9C%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%81%A8%E3%81%AF,%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%81%97%E3%81%9F%E3%82%89%E8%87%AA%E4%BD%9C%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%81%A7%E3%81%99%E3%80%82


業務でPCを使う人としてはキーボードは一日中触っているデバイスなのでこだわる価値があると思います。自分のこだわりを詰め込んだキーボードを作るのは楽しいものです。


# 2. 今回作成したキーボードの要件やこだわりポイント

今回作成したキーボードの要件やこだわりポイントをまとめていきます。

## 2-1. Nintendo Switchと同じサイズ

一番重要視したのは持ち運びのしやすさでした。自作キーボードの大きな悩みの一つに「持ち運び用のちょうど良いケースを探すのが難しい」というのがあります。既製品ではないので純正のケースもありません。

そこで**Nintendo Switchと同じサイズの一体型キーボード**を作ることにしました。Nintendo Switchであればサードパーティー製品も含めて多数のケースが販売されているのでケースに困ることがありません。なので逆にNintendo Switchと同じサイズのキーボードを作ればいいじゃないか！というのがこのキーボードの出発点でした。

https://www.google.com/search?q=Switch+%E3%82%B1%E3%83%BC%E3%82%B9&oq=Switch+%E3%82%B1%E3%83%BC%E3%82%B9&gs_lcrp=EgZjaHJvbWUyBggAEEUYOTIHCAEQABiABDINCAIQABiDARixAxiABDIHCAMQABiABDIHCAQQABiABDIHCAUQABiABDIHCAYQABiABDIHCAcQABiABDIHCAgQABiABDIHCAkQABiABNIBCDQ0ODBqMGo3qAIAsAIA&sourceid=chrome&ie=UTF-8

実際作成したキーボードはこんな感じでSwitchのケースにシンデレラフィットしました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200471/8a46d266-e618-05f2-c30c-156884be1bda.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200471/136f4bd8-788c-58d6-8294-6fb10b78fa71.png)

## 2-2. Bluetooth接続できる

あと今回はBluetooth対応がしたかったです。仕事の関係でPC2台持ちをしているのでササっと接続先を切り替えたかったのと、スマホでも使いたいという思いがありました。この実現にはsekigonさんのBLE Micro Proを活用しました。おかげさまで難しいプログラミングなど不要でBluetooth対応キーボードを自作できました。感謝です。

https://sekigon-gonnoc.github.io/BLE-Micro-Pro/#/

## 2-3. キー数は最小限でESCキーは独立して配置

[Keyball39](https://shop.yushakobo.jp/products/5357)というキーボードを愛用していたのでキー数や配列はそちらを真似しています。Keyball39で唯一の不満点が「ESCキーの配置難しい」とうい点だったので、今回はど真ん中に1キー用意してESCとしています。ESCキーはよく使うのですが間違って押してしまうと影響が大きいので誤打しにくい場所におきたかったのです。

![Keyboard.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200471/64f2708e-7f1d-d952-6462-29f78d4440d8.jpeg)

## 2-4. 電池基板はPCBに盛り込む

sekigonさんはBLE Micro Pro用の電池基板も販売しているのですが、基本的にBLE Micro Proの上に被せって使う設計なのでキーボードが分厚くなってしまいます。

https://shop.yushakobo.jp/products/ble-micro-pro-battery-board?_pos=4&_sid=8171f4410&_ss=r

BLE Micro Proお横に並べるのもありですが、キー配置の関係上そのスペースも確保できませんでした。なのでPCBに電池基板は盛り込むようにしました。後に記載しますがこの設計が意外と大変でした。

## 2-5. 蓋をつける

マイコンも剥き出しですし、キースイッチも何かに引っかかると取れてしまうこともあるので、蓋を作りました。ボトムプレートに長めのスペーサーをつけてプレートの穴にさして固定しています。とはいえひっくり返すと外れてしまうので、ゴムバンドで止める必要はあります。出来上がりを見ると思った以上に安心感があったので作ってよかったなと思っています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200471/f42b83a4-ac4d-c6dc-ae30-983379d03cd0.png)


# 3. 作成の経緯と期間

## 3-1. 構想(半年くらい)
構想を始めたのはおそらく2023年の初めごろからでいた。持ち運びやすい良いキーボードはないかいろんなキットを探しならがイメージを固めていきました。

ちなみに一番自分が欲しいキーボードのイメージに近かったのはサリチル酸さんのNaked48LEDでした。フタもあってキー数もかなり好みで見た目もすごくかっこいい。かなり悩んだのですが「自分で作ってみたい！」という思いもあって上記のこだわりをつめこんだキーボードの設計に踏み切りました。

https://salicylic-acid3.booth.pm/items/1271568

## 3-2. 設計（1週間くらい）

設計を具体的に考え始めたのは2023年5月のゴールデンウィークでした。最初は厚紙をSwitchのサイズに切ってキーを並べるイメージを作ったり、プレートの高さを書き出して必要なスペーサーの長さなど整理していました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200471/79be59b5-be30-6891-cb8d-c61e86f0fbb9.png)


## 3-3. BLE Micro Proの勉強（1週間くらい）

そして同じ時期にBLE Micro Proを購入して動作確認やファームウェアの書き方を勉強していました。

https://twitter.com/unbosoms/status/1654270691716509696?s=20

## 3-4. 基板の発注（2週間くらい）

大枠の設計方針がまったので、あとはkicadで基板を設計するだけだったのですが、仕事の忙しさもあってここから１ヶ月ほど時間があいてしまい、7月に入ってから作成を始めました。

ちなみに作成した回路設計はこんな感じ。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200471/24e7f77f-b242-2676-546b-2fcf1fcc0cc2.png)

基板設計はこんな感じ。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200471/70d0840e-8a83-eac6-f7f0-0c9722264421.png)

一番苦労したのは電池基板の設計でした。sekigonさんが販売している[電池基板のfootprint](https://github.com/sekigon-gonnoc/BLE-Micro-Pro/tree/master/CoinCellHolder)は配布されているのですが、kicadのバージョンがあわないためかうまく開くことができませんでした。sekigonさんの回路図をダウンロードしてkicad6.0で開くとこんな感じになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200471/e0529b18-b3cc-427e-c7cd-6aaa8b8e41cb.png)

なので読み解ける範囲で内容を確認しつつ、回路図を読み解きながら設計をしました。なので電池基板部分がちゃんと動くかどうかが一番心配でした。もろもろ読み解いて作った回路図がこちら。ほんと動いてよかった...
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200471/8bef8f11-5218-d7b7-e88a-f38b49fcce05.png)


ということで7/25に無事JLCPCBに発注をしました。

発注後、トッププレートについて「回路がなにもないけど大丈夫？」と聞かれたり、「細かい穴が多いから＄8追加でかかるよ」と連絡がきて追加支払いをしたりありましたが、結果的に8/4に届きました。発注から10日ほど。思っていたより早く届いて驚きました。

## 3-5. kicadの勉強

実は基板設計については約１年前に発注の一歩手前まで作業をしたことがありました。その時はまた別の設計を考えていて練習的に作業していました。その時の教材は以下の通りです。

kicadの使い方や基板やトッププレート、ボトムプレートの作り方はfoostanさんの書籍「自作キーボード設計入門」で勉強しました

https://booth.pm/ja/items/1044084

自作キーボードの動作原理や回路設計については同じくfoostanさんの「自作キーボード設計入門２」で勉強しました。

https://pskbd.booth.pm/items/1315935

kicadではキーボード用のライブラリをインポートすると設計が劇的に楽になるので、foostanさんのものやサリチル酸のものをインポートとして使いました。感謝です。

https://github.com/foostan/kbd

https://github.com/Salicylic-acid3/KiCAD_FootPrint

上記に加えて今回はBLE Micro Proの学習も必要だったので、[sekigonさんの公式ページ](https://sekigon-gonnoc.github.io/BLE-Micro-Pro/#/)に加えて、サリチル酸さんのこちらの記事を参考に学習しました。

https://salicylic-acid3.hatenablog.com/entry/BMP-Introduction


# 4. かかった費用

自分でもいくらかかかったのか気になったのでまとめてみました。送料や勉強用に買った部品を除いて24,000円程度。送料や勉強用資材のことも考えるとHHKB買えるくらいの出費はしてると思います汗。それでも世界に一つだけの自分だけのキーボードなので満足度はめちゃめちゃ高かたです！（いわゆる[イケア効果](https://ja.wikipedia.org/wiki/%E3%82%A4%E3%82%B1%E3%82%A2%E5%8A%B9%E6%9E%9C)ともいえますが汗）

|部材|単価|個数|金額|
|:----|:----|:----|:----|
|[キーキャップ](https://talpkeyboard.net/items/63c7d570c9883d1ecd88dd32)|4050|1|4,050|
|[キースイッチ](https://talpkeyboard.net/items/638b0fa741e8c02e86b6f21e)|330|10|3,300|
|[BLE Micro Pro Type-C版](https://shop.yushakobo.jp/products/ble-micro-pro?variant=37665571340449)|4950|1|4,950|
|[コンスルー13ピン](https://shop.yushakobo.jp/products/31?variant=37665714438305)|264|2|528|
|[電池部品セット](https://shop.yushakobo.jp/products/5623?variant=45044665942247)|330|1|330|
|[スリムヘッド小ねじM2黒 3mm 10個入り](https://shop.yushakobo.jp/products/a0800b2?variant=37665433256097)|275|4|1,100|
|[スリムヘッド小ねじM2黒 5mm 10個入り](https://shop.yushakobo.jp/products/a0800b2?variant=37665433321633)|275|1|275|
|[スペーサーM2 3.5mm 10個入り](https://shop.yushakobo.jp/products/a0800c2?variant=43940969316583)|396|1|396|
|[スペーサーM2 14mm 10個入り](https://shop.yushakobo.jp/products/a0800c2?variant=37665435451553)|462|1|462|
|[スペーサーM2 9mm 10個入り](https://shop.yushakobo.jp/products/a0800c2?variant=37665435287713)|418|1|418|
|[ダイオードSDMタイプ 50個入り](https://shop.dailycraft.jp/products/diode_smd?variant=40599384555717)|154|1|154|
|[スイッチソケットchoc用 10個入り](https://shop.dailycraft.jp/products/keyswitch_socket?variant=40599674388677)|165|5|825|
|[タクトスイッチ](https://shop.dailycraft.jp/products/tact_switch)|11|1|11|
|トッププレート５枚|3143|1|3,143|
|ボトムプレート（蓋プレートを兼ねる）５枚|1965|1|1,965|
|PCBプレート５枚|1965|1|1,965|
|合計| | |23,872|

トッププレート、ボトムプレート、PCBプレートはJLCPCBで発注しました。

https://jlcpcb.com/

JLCPCBへの発注方法はサリチル酸さんのこちらの記事尾参考にしました。

https://salicylic-acid3.hatenablog.com/entry/jlcpcb-order

ちなみにロットが大きくて余分に買ってるものもあるので（特にプレートは５枚が最低ロット）、必要な数に割り戻すと17,000円くらいになります。それでも高級キーボードの部類ではありますが、キーボード沼にハマった民としてはリーズナブルな部類に見えますね。


# 5. 基板設計に至った経緯（私と自作キーボードの歴史）

このように基板設計してまで自分の欲しいキーボードを作ったわけですが、なぜそんなことをしようとしたのか、備忘もかねて最後にまとめておこうと思います。

## 5-1. キーボードにこだわり始めた2021年

コロナの影響で在宅勤務が増えて自宅の作業環境を整えざるをえなくなっていました。ディスプレイもなかったのでずっとノートPCで作業をしていて肩こりがかなりひどかったです。そこでノートPCのスタンドを購入して外部キーボードで作業をし始めました。その時使っていたのは2,000円くらいの無線キーボードと無線マウスがセットのものでした。

最初は悪くなかったのですが使っているうちに、Shiftキーが何かに引っかかって押せないことがあったり、キーボードへの不満がでてきました。そこで最終的にHHKBを購入し、以下のような作業環境を整えました。

https://twitter.com/unbosoms/status/1475626944574205955?s=20

ただ、いきなりHHKBやRealforceなどの高級路線に手を出すのは怖かったので、まずはRealforceのレンタルサービスを利用しました。

https://www.rentio.jp/products?keywords=realforce

2週間ほど借りてみたところ、その打ち心地の素晴らしさに感動しました。そして結局HHKBの最上位モデルのHybrid Type-Sを購入しました。なんでRealoforceじゃなくHHKBにしたかというと、当時使っていた机が小さかったのでコンパクトな方がよかったのと、大学生の頃からHHKBへは憧れがあったので選びました。

HHKBの使い心地は本当に最高だったのですが、やはり肩こりは解消されませんでした。そんな悩みを相談していたら友人に分割キーボードが良いよと教えてもらいました。そこが深い深い沼への入り口でした。

最初は「半田付けして組み立てるなんて無理」とか「HHKBより下手したら高いものに手を出すなんて流石に無理」とか言っていたのですが、気づいたら自作キーボードについて調べてしまっている日々が続き、欲求がおさえきれなくなり最初の自作キーボードの購入にいたりました。

## 5-2. 半田付け済みCorne Cherryで自作キーボードに入門した2022年1月

最初に購入した自作キーボードはCorne Cherryでした。2022年1月のことでした。こちらの記事でもその時の使用感をまとめています。　

https://qiita.com/unbosoms/items/a668008931a967789479

使い始めはなかなか慣れずに苦労しましたが、１ヶ月もたつと普通のキーボード並みにタイピング速度も戻り、むしろそれ以上に使いやすさを実感し始めました。もうHHKBを使うことはほぼなくなりCorne Cherryばかり使うようになりました。

そこからは完全に沼でした。キースイッチを選んだり、キーキャップを選んだり、無線化したいなと夢想したり、キーボードのことばかり考えてしまうようになりました。

↓沼にはまっていく様子

https://twitter.com/unbosoms/status/1480151094924038144?s=20

## 5-3. あこがれのkeyballで半田付けデビューした2022年5月

Corne Cherryにも慣れてきた頃、もともと欲しいと思っていたKeyballシリーズの新作が発売されました。それが私の2台目の自作キーボードとなるKeyball39というトラックボール付きのキーボードでした。

実のところCorne Cherryを買う前、自作キーボードの中で一番興味をもっていたのは左右分割かつトラックボール付きの[Keyball46](https://github.com/Yowkees/keyball/blob/main/keyball46/doc/rev1/buildguide_jp.md)というキーボードでした。ただ、いきなりこれにチャレンジするのは抵抗があったので、半田付け不要のCorne Cherryから始めたという経緯があり、憧れのキーボードだったのです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200471/bf5629c7-f6d4-a186-98e6-c741ed9dea31.png)


ちなみにKeyball39はこちらで販売しています。今は当時以上に大人気でなかなか購入できず入荷待ちをしている人も多数いる状態です。

https://shop.yushakobo.jp/products/5357

こちらのキーボードは本来一番左にあるTabやCaps、Shiftといったキーがありません。なのでCorne Cherryの時と同じくらい慣れるのには時間がかかりました。キーマップを色々と試行錯誤する日々を過ごしたのですが、慣れるともう手放せなくなるほどに快適になりました。

↓当時の感想や試行錯誤の上たどり着いたキーマップはこちら。

https://twitter.com/unbosoms/status/1530329574424612864?s=20

## 5-4. cocot46plusで3台目のキーボードに突入した2022年8月

Keyball39でエンドゲーム（満足しきってもう自作キーボードに取り組む必要がない状態）に至っていたのですが、また魅力的なキーボードが登場しました。それがcocot46plusでした。

https://shop.yushakobo.jp/products/6955

なんといってもかっこよすぎたんですよね。。。なので思い切って購入してしまいました。一体型なので打ちづらいかな？と思っていたのですがハの字に開いたキー配列のおかげで思ったよりも打ちやすかったです。トラックボールも使いやすく、Keyball39と違ってクリック専用のキーがあるのも使い勝手の面でとてもよかったです。加えてオプションのミドルプレートも導入したのでどっしりとした打ち心地になり、こちらもクセになりました。今ではKeyball39と気分で使い分けながら使っています。

↓当時の感想はこちら。

https://twitter.com/unbosoms/status/1557542622012379136?s=20

## 5-5. それでも基板設計をしたくなった2023年5月

上記のようにKeyball39でエンドゲームしていた上に、さらにcocot46plusまで購入して、もうこれ以上キーボードはいらないだろうと思ったいたのですが、それでも1点だけ不満がありました。それが**持ち運びのしにくさ**でした。

Keyball39はCorne Cherry用に購入したこちらのケースで持ち運びはできたんですが、毎度ケーブルをつけ外すのも面倒でしたし、ぴったり収まっている訳ではないので振動による破損も心配でした。

https://twitter.com/unbosoms/status/1491934552058925057?s=20

cocot46plusは一体型なのでkeyballより持ち出しやすいのですが、サイズの合うケースを探すことができませんでした。

そこで冒頭に記載した要件のキーボードを設計することにしたのでした。

# 6. 今後について

初めて設計から手がけた自作キーボードですが、やはりもっとこうしたかったなって部分も多々ありました。今後改良したい点についても記載しておきます。

## 6-1. 蓋をパームレストにしたい

もともと蓋部分についてはパームレストにできたらいいなって思ってたんですが、スペーサーの設置位置の関係で片手を載せた状態だと傾いてしまうことがわかりました。プレートに挿すスペーサーの位置を端っこにすればよかったのですが設計時は気づきませんでした。

![スクショ.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200471/99b0fe0a-2f28-bafd-a3f0-e40bea3fe936.jpeg)

## 6-2. On/Offスイッチが飛び出ないようにしたい

On/Offスイッチが筐体からはみ出てるのでゴムバンドを巻く時に間違って触ってしまうことがわかりました。3mmくらい引っ込めるような設計にすればもっと使いやすくなりそうです。

![MicrosoftTeams-image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200471/0643a478-3888-3514-2bec-a1e5e854160c.png)

## 6-3. マイコンや電池基板を隠したい

剥き出しのかっこよさもあるんですが、綺麗に隠せた方がかっこよさも上がると思うので、この上部にアクリルプレートなどで目隠しをつけたいです。

![名称未設定.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200471/a1a0a077-a4ce-7486-bc55-43b735e4e45e.jpeg)

## 6-4. 蓋がカチっとしまるようにしたい

プレートの穴にスペーサーを差し込んでいるだけなので、ネオジム磁石など使ってピタッとくっつくようにしたいなと妄想中。

https://twitter.com/unbosoms/status/1689423887459913728?s=20

リング型のネオジム磁石も売ってるみたいなのでスペーサーの先につければいけそうな気はしています。

https://www.magfine.com/neodym/ring

## 6-5. やはりマウス操作したい...

keyball39、cocot46plusに慣れているので、どうしても手がトラックボールを探してしまいます。なのでパレットシステムさんの１Uサイズのトラックボールを載せれれば...と考えています。とりあえず購入させていただきました！

https://booth.pm/ja/items/4202085

## 6-6. インジケータLEDつけたい

以下の文言をちゃんと読んでなかったので、次はインジケータLEDも付けたい。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200471/73345fbf-e37b-47c2-6d96-37bbb952c352.png)

https://sekigon-gonnoc.github.io/BLE-Micro-Pro/#/design_guide

# 7. まとめ

ということで自作キーボードは最高に楽しいのでぜひみなさんもやってみてください！