自作キーボードの魅力　設計の流れ

# はじめに
### 自作キーボードとは
　自作キーボードとは、既製品のキーボードを購入する代わりに、自分で部品を組み立てて作るキーボードのことです。基板（PCB）、キースイッチ、キーキャップ、ケースなど、キーボードを構成する各パーツを自分で選び、自由にカスタマイズします。これにより、デザインや機能を完全に自分好みに仕上げることができます。
　まずは、基板（PCB）や電子部品や組み上げマニュアル一式が揃っている「自作キーボードキット」を購入するのが手軽な入門方法です。
　この界隈では自作キーボードの「キット」では満足できず、理想的な打鍵感、完璧なレイアウト、美しいデザイン、長時間使っても疲れにくい実用性など、「自分にとってこれ以上のものはない」と感じる理想「エンドゲーム」を追い求め、自作の魅力に惹かれて沼にハマった方々がいらっしゃいます。かく言う私も2024年の年末に、その1人になりました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/9f8c44fa-21ea-5c39-9483-b0edba29452b.png)

### きっかけ
　私はエンジニアです。アプリケーション開発やシステム構築を行う部署にいます。打ち合わせ中、キー入力でメモを俊敏におこなったり、メールやチャットで1日中キー入力しており、腱鞘炎の痛みに悩まされたのがきっかけです。肩や手首の負担を軽減する方法はないものかと調べ尽くし、自作キーボード界隈に辿り着きました。

# 自作キーボードキットの例
**Corne V4 Chocolate**
自作キーボードの中で最も販売台数が多いと言われているCorneシリーズ。foostan氏 製作
    　<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/41772bd4-68f2-2e31-a03d-50db23d2d285.png" width=80%>
引用元：https://shop.yushakobo.jp/cdn/shop/files/IMG_20240316_192605_1200x.jpg?v=1710585011
　
**Keyball39などトラックボール一体型**
ヨーキース氏による製作。親指操作を行うトラックボールが搭載されておりホームポジションから手を離さずにPC操作を行うことができる人気のキット。ヨーキース氏とは別の有志による狭いキーピッチ版のキット販売や、無線化された完成品の別商品（本家は有線）、ベアリング版の交換用トラックボールケースが販売されたりと、ファンが多く熱量の高い盛り上がりが広がる。本家のkeyball39の最近の在庫は比較的安定している模様。無線化された別商品(moNa2など)は在庫が少ない模様で欲しくても待つことになる。
    　<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/91a4364e-3057-791a-7118-484cbf8160af.png" width=80%>
引用元：https://shop.yushakobo.jp/cdn/shop/products/image1_Keyball39_1200x.jpg?v=1661936153

**おさかなキーボード**
孫正義育英財団に所属するIQ180とも言われる天才クリエイター 大西拓磨氏 製作 現時点で在庫なし。長期的に入手困難。話が逸れますが、自作キーボードは生産量が少ないことが多く、人気商品は入手が難しくなりがちです。
    　<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/bbac84a7-9c7a-a615-543d-efcd467fb94e.png" width=80%>
引用元：https://shop.yushakobo.jp/cdn/shop/files/both_1200x.webp?v=1723965639
　
**私はKeyball39のキットを製作し使ってみて、すばらしいものだと思いつつ、
使いやすいさをもっと追求できないか考えていると、自作の範囲を広げて回路設計・基板設計・3Dモデリングなどに手を出したくなりました**

# 自作する魅力とメリット
　キーボードは、日常的に使用するデバイスの中でも特に重要なツールの一つです。そんなキーボードを「自分で作る」のは、既製品にはない多くの魅力とメリットがあります。

1. **自分だけのカスタマイズが可能**
    - 快適なタイピング体験
    　自作キーボードでは、キー配置、スイッチの種類、キーキャップのデザイン、さらにはケースの素材まで、すべてを自分の好みに合わせてカスタマイズできます。これにより手にフィットし、快適なタイピングが楽しめます。
    - オリジナリティを加える
    　自分だけの配色やレイアウトが選べるため、唯一無二のデザインを実現できます。友人や同僚に見せると「それ、どこで買ったの？」とびっくりされます。

1. **使用感を徹底的に最適化**
    - キー配置の自由度
    　既製品のキーボードは、多くの人に合うように作られているため、必ずしも自分のニーズに完全に合うとは限りません。しかし、自作キーボードなら自由なキー配置が可能です。
    - 独自の機能追加
    　マクロキーやカスタムショートカットを追加することで、作業効率を大幅にアップできます。
1. **趣味としての楽しさ**
    - ものづくりの達成感
    　こだわりの設計、はんだ付けや部品の組み立てを経てキーボードが完成したとき、大きな達成感を味わえます。
    - 学びの機会
    　自作キーボードを作る過程で、電子工作、プログラミング、設計など、さまざまな知識を学ぶことができます。

1. **長く使える**
　自作キーボードは、故障した場合でも自分で修理が可能です。また、部品を交換するだけで長く愛用できます。例えば、キーキャップやスイッチを交換するだけで新品同様に蘇ります。

# 私の作った自作キーボード
　今回はじめて電子回路設計、基板設計、3Dモデリングを行いました。まだまだプロトタイプレベルで改善したいところが多々ありますが、初号機ということでご容赦を。

- **特徴**
    - **左右分割キーボード**
    　肩幅に合わせてキーボードを配置できるため、肩や手首の負担を軽減できます。アプリケーション開発やシステム構築という私の仕事柄、キー入力が多く腱鞘炎の痛みに悩まされたため、私にとって必須の要件でした。
    - **レイヤキーを押下せずにカーソル移動が可能なキーレイアウトとする**
    　自作キーボードはキー数をなるべく減らして省スペース化される傾向があり、レイヤ0(レイヤーキーを押下なし）で重要なキーの割り当てがされ、追いやられたカーソルキーがレイヤ0以外に配置される事態になりやすい。私はExcel操作など修飾キー（Ctrl,Shift）とカーソルキーを組み合わせてつかうため、レイヤーキー押下なし（レイヤー0）でカーソル入力を行いたい。
    - **省スペース・コンパクトにすることで完全ブラインドタッチに**
    　48キーとなっており、普通のテンキーのついた104キーボードと比べて半分以下のキー数となっています。ホームポジションから離れたキーを無くし、すべてのキー入力でブラインドタッチしやすくしています。ファンクションキーや上段の記号・数字の行はありません。レイヤー機能によりファンクションキー、記号・数字を入力します。
    - **完全無線接続**
    　PCとの無線接続、左右間の無線接続。煩わしいケーブルがなくデスク上がすっきりします。
    - **オーソリニア（格子）配列**
    　整然と並ぶ配列の美しさに魅力を感じました。また肩幅に合わせて左右のキーボードを配置した際に、キーの縦列が揃っていると、指の関節動作と揃うため、自然にタイピングできます。
     また、最下段の親指でよく使うキーを少し幅広の1.5Uとすることで、親指が隣のキーに触れないようにしています。
    - **ケースをなるべく薄型に**
    　ロープロファイルキースイッチが交換可能（スイッチソケットあり）としつつも、手首の負担を軽減するためになるべく薄型に設計
    - **パームレストがカバーに**
    　パームレストにより手首が自然な角度になり手首の疲労や痛みを軽減できます。カバーは持ち運びの際、キーキャップや剥き出しの基板を守ります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/fdd5dca4-0e19-5e21-98d1-f71091b159a6.png)


**パームレストをキーボードカバーとして被せたところ**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/8b55b96e-0c68-ac51-0ce7-56c7912bb5f4.png)


# 自作キーボード設計の流れ

0 . **まずは書籍を読んで学ぶ**
自作キーボード界のエバンジェリストであり発展の功労者、[サリチル酸](https://salicylic-acid3.hatenablog.com/)氏による渾身の一冊。
自作キーボードの設計について、必要な情報が網羅的に記載され、なおかつ具体的な実践手順を細部まで平易に解説されているすばらしい書籍です。サリチル酸氏を勝手に師匠だと思うほどです。自作キーボードに興味のある方はぜひ読んでみることをオススメします。

https://booth.pm/ja/items/4410329
　
1. **作り方や作るものの方針を決める**
    方針という言葉ではイメージしにくいと思うので、私のケースで例示します。
    今回の方針は以下としました
    - 手の痛みを軽減できるよう、左右分割キーボードとする
    - 初めての設計や実装であり完走できるよう、無難な設計とする
    - 省スペース・コンパクトにすることで完全ブラインドタッチに
    - オーソリニア（格子配列）による美しいデザイン
    
    電子回路設計は初めてだったこともあり動作させることを最優先の方針とし、やりたいと思うものの以下はやらないことにしました。こだわりすぎると完成しないリスクがあるかもしれません。
    - ロータリーエンコーダーによる音量調整の実装
    - 薄型化の追求
    - その他...
　
1. **キーレイアウトを決める**
　[keyboard-layout editor（以下KLE）](https://www.keyboard-layout-editor.com)を使うことで、自作キーボードのレイアウトをブラウザ上で簡単に設計・視覚化できます。キーのサイズ、配置、ラベル、配色を自由にカスタマイズできます。レイアウトデータはJSON形式でエクスポートできファームウェア設定に活用可能です。頭の中にしか無かった理想のキーボードレイアウトを手軽に具体化できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/d34129ba-5ff7-dfe3-84fb-32fadbc91a0b.png)
　
1. **部品を決める**
　決めた方針やレイアウトを踏まえてキーボードを構成する部品を決めます。
 自作キーボードはメカニカルスイッチが主流で、基板設計に大きく影響します。メカニカルスイッチ押下によりPCへキーコードを送信するコントローラー（ProMicro,BLE Micro Proなど）や、ダイオードに何を使うのか選定します
　
1. **電子回路と基板を設計する**
    オープンソースの[KiCad](https://www.kicad.org/)を使用して回路図を作成します。先人の皆様が作成した電子部品のライブラリを読み込み、キーボードの回路設計や配線設計、3Dビューでの基板プレビューなど、回路設計から基板製造データの生成まで一連の作業を比較的手軽に行うことができます。
　　部品配置や配線経路が正しくなかったり未接続の場合、デザインルールチェック（DRC）機能によりエラー表示されます。エラーにすべて対処しておくことで、初めての基板設計でも問題の無い基板を作ることができました。
  
    **KiCadによる電子回路設計**
    　<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/fb4c642a-f010-e0d4-9c8b-2ea4f44d4bac.png" width=80%>
     
    **KiCadによる部品配置と配線**
    　<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/852a72bb-a472-4384-26d9-12d7d1c44477.png" width=80%>
     
    **3Dビューでの基板プレビュー**
    　<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/7049ee0b-19a3-3b35-4c4d-ba7ae2c8cba7.png" width=80%>
　　
1. **基板を発注する**
　KiCadで作成したPCBファイルから基板製造用ファイル（ガーバーファイル）をエクスポートしておきます。[JLCPCB](https://jlcpcb.com/jp/)という基板（PCB）製造に定評のある会社サイトに、ガーバーファイルをアップロードすることで自分が設計した基板を発注することができます。
  私のケースでは、JLCPCBのサイトで配送にDHLを選択し、1月1日に発注しました。1月1日は工場がお休みとのことで、1月2日から基板生産が開始され、1月7日に自宅に届きました。料金は27.8ドルで約4400円でした。
　基板を発注後、自宅に届くまではクリティカルパスとなり長めの待ち期間（約１週間）となります。この期間を利用して部品を発注したり、ケースの3Dモデリングや3Dプリントを済ませておけば、完成までの期間を短くすることができます。
    　<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/157d9850-9303-3144-bf88-065a6221b8d2.png" width=80%>
     　
1. **部品を発注する**
自作キーボードの部品購入先には主に以下があります。
  ・[遊舎工房](https://shop.yushakobo.jp)
  ・[TALPKEYBOARD SHOP](https://talpkeyboard.net)
　
1. **ケースを設計、モデリングする**
[Fusion360](https://www.autodesk.com/jp/products/fusion-360/features?mktvar002=5022415|SEM|11655048452|162674806217|kwd-11029869505&utm_source=GGL&utm_medium=SEM&utm_campaign=GGL_D-M_Fusion-360_JAPAN_JP_eComm_SEM_BR_Mix_EX_0064_5022415_MainBrand&utm_id=5022415&utm_term=kwd-11029869505&gad_source=1&gclid=Cj0KCQiA19e8BhCVARIsALpFMgHFvykEG3b9MKBRomUBufo_p1qOtWDf2RCVmvWXQzj9-1HRjIJiRtQaAg4uEALw_wcB)というCADソフトウェアを利用して3Dモデリングをおこないます。Fusion360は個人による非商用利用であれば機能制限があるものの無償で使うことができます。ただ、機能制限により10ファイルまでしか保存できませんので本格的な利用を行う場合は有償版を検討する必要があるかもしれません。
2Dの平面図形を描いて「押し出し」ツールで押し出す距離を入力して高さや深さを調整して立体を作り、別の平面図形を書いて「押し出し」ツールで立体を削るなどして、思い描くケースを作り込みます。ケース以外にもキースイッチを固定するスイッチプレートやパームレストなども思い描く立体を細部まで追求することができます。
3Dモデリング後、3Dプリンタ用にSTL形式やSTEP形式でファイルをエクスポートしておきます。
    　<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/e1d9d210-7e27-53aa-ce3e-2339216561c6.png" width=80%>
     　
1. **ケースを3Dプリンタで印刷する**
    私は[Bambulab社のA1 mini](https://jp.store.bambulab.com/products/a1-mini)を今回購入しました。現時点で¥32,800円で購入できます（AMS lite無しのモデル）。3Dプリンター入門用として購入しやすい価格で、紙に印刷するプリンターと比べて使い方を色々学ぶ必要はありますが、ネット上にノウハウ情報が多いため、困っても解決手段が見つけやすく使い勝手が良いと思います。<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/109b91a9-d0d8-6497-92d3-1d94636df866.png" width=60%>
    　
Bambu Lab製の3Dプリンターを購入すると、付属するスライサーソフト「Bambu Studio」を使うことができます。その「Bambu Studio」にFusion360などの3Dモデリングツールで出力したSTL形式やSTEP形式のファイルを読み込み、3Dプリントします。
    　<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/0c3e181a-2750-a7b5-23c5-7252aa28fc6d.png" width=80%>
     　
1. **基板上に部品をはんだ付け**
    基板が自宅に届いたら、スイッチソケットやダイオード、コントローラーを半田付けします。ダイオードには極性があるので方向に注意する必要があります。接点をあたためて少量のはんだを流し込んで接続し、はんだの量は適度にし、過不足がないよう注意します。適切にはんだ付けされているかテスターによって導通を確認したりします。
    　<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/2bb53574-8098-d6de-15a2-73a2b2072cac.png" width=80%>
　
1. **ケースと基板を組み上げる**
    ケースと基板とスイッチプレートのネジ穴がずれていないか、ケースと基板の間のスペーサーでしっかり固定できるか、ズレや浮きがあるとガタつく原因となってタイピングが不快になってしまいます。基板をしっかり固定してキースイッチを均一に配置し、キーキャップをとりつけます。
    　<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/202ca67a-18ec-a43d-f5d7-67b6d6f98eda.png" width=80%>
　
1. **マイコンの設定**
   私は[BLE Micro Pro](https://sekigon-gonnoc.github.io/BLE-Micro-Pro/#/)というせきごん氏製作のBluetooth接続が可能なマイコンを使用しました。これをつかうことでPCとの無線接続だけで無く、左右分割キーボードの左右間もBluetooth接続することができ、とてもつかいやすい左右分割の無線キーボードを実現することができます。
　<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/141348/47af41a6-11b0-7ea2-9e54-83f29c5db743.png" width=50%>

同じくせきごん氏が開発した[BLE Micro Pro Web Configurator](https://sekigon-gonnoc.github.io/BLE-Micro-Pro-WebConfigurator/)を利用してBLE Micro Proのファームウェアアップデートや設定の書き込みを行います。使い方や解説は[こちら](https://sekigon-gonnoc.github.io/BLE-Micro-Pro/#/)です。

# 製作期間
　書籍を読むことから初め、主に土日や年末年始休暇を含めて1ヶ月程度でした。

# 終わりに
　初めての自作キーボード設計に挑戦し、動作した瞬間は大きな満足感と達成感を味わうことができました。また、肩や腕、手首への負担を軽減し、自分好みの使いやすいキーボードを完成させられたことにも喜びを感じました。まだ改善の余地があり、次に試してみたいアイデアも次々と浮かんできています。

自作キーボードの製作は、楽しく没頭できる趣味であるだけでなく、実用的なメリットも得られますのでキーボードにこだわりを持っている方へ強くお勧めします！