【自作キーボード】初心者が分割キーボードをPCBから設計・自作してみた【löwin44】

こんにちはこんばんは、寝て起きたらもう年末になってしまい、一年が早く感じてしまっているきりぽんです。

今回は自作キーボードの基板とケースを約2ヶ月かけて設計・製作したので、その過程を簡単に記事にしてみたいと思います。

Keyboard Layout Editorで配列を決め、KiCadでPCB、Fusion 360でケースを設計。JLCPCBへの発注からファームウェア作成、はんだ付け、完成後に分かった失敗点まで一通り記録しています。

結論から言うと、知識がないところからのスタートだったため苦労する点は多々ありましたが、自分がある程度思い描いたようなキーボードを完成させられたことは、大きな達成感と喜びを感じる素晴らしい経験となりました。

きりぽん

設計自体が完全に初めての初心者の私が、どんな部分につまずいたのかといったところもお伝えできたらと思っています。

löwin44の動画

YOUTUBE CHECK NOW!


配列にまだ慣れていなくて下手くそですが、タイピング動画も撮影してみました。モチベーション維持にもつながるので、よかったら見てやってください。

löwin44を作った流れ
Keyboard Layout Editorで配列決定 → KiCadで回路図・PCB設計 → Fusion 360でケース設計 → ファームウェア作成 → JLCPCBへPCBとケースを発注 → はんだ付け・組み立て・動作確認という流れで製作しました。

KiCadで自作キーボードの基板を設計

Keyboard Layout Editorで分割キーボードの配列を設計

ErgoDoxのプリセットから理想の配列を作っていく

まずはKeyboard Layout Editorでレイアウトから決めました。カラムスタッガードの分割キーボードを使ってみたかったので、ErgoDoxのプリセットから使わなそうなキーを削っていきます。

Keyboard Layout Editorで44キーの配列を設計

44キーのレイアウトにしてみた

ざっくりですが、こんな感じのレイアウトにしてみました。

KiCadで自作キーボードの回路図を作成

KiCadで左手と右手の回路図をそれぞれ作成

次にKiCadでMCUやスイッチなど、その他のパーツを配置した回路図を作りました。回路図を作ってエレクトリカルルールチェッカー(ERC)を行い、問題がなさそうだったらフットプリントを割り当てます。

KiCadのPCBエディターで自作キーボード基板を配線

PCBエディターでフットプリントを配置して配線

次にPCBエディターでフットプリントを並べて配線していきます。自動で配線できるツールもありますが、勉強のため手動でやりました。

KiCadの3Dビューワーで自作キーボード基板を確認

3Dビューワーで基板の完成イメージを確認

デザインルールチェッカーをして配線などに問題がなさそうだったら、3Dビューワーを眺めてお酒を飲みながら完成形を妄想します。

きりぽん

PCBエディターでのスイッチ配置は、KLEのデータからフットプリントを自動配置できる「Keyboard Layouter」というプラグインを使えばよかったかもです。

Fusion 360で3Dプリントケースを設計

Fusion 360で自作キーボードのケースを設計

Fusion 360でケースを設計

最後にFusion 360でケースを作ってみました。本来なら基板のサイズを正確に入力してスケッチから作った方が良さそうでしたが、面倒になってしまいKiCadで作ったトッププレートのSTEPファイルをインポートして作成しました。

自作キーボードのボトムケース固定方法を検討

固定方法はスナップフィットを採用

一番悩んだのがボトムケースの固定方法で、トップケースの内側にスリットを入れてナットとネジで固定するか、上下をマグネットで固定するか、パチッとはめ込むスナップフィットにするか最後まで迷いました。

悩んだ結果スナップフィットにしてみたのですが、実際にプリントしてみると引っ掛けるパーツが小さく薄すぎて、強度が全く足りませんでした。

きりぽん

色々悩みましたが、納得するまでやると年が明けてしまいそうだったので、とりあえず少し妥協してJLCPCBに発注しました。

その後、別の自作キーボードでは3Dプリントでの試作を繰り返し、Corne用のCNCアルミケース「Cörnium」も設計・製作しました。JLCPCBへのCNC加工の発注から完成品の加工精度まで実測しています。

参考

JLCPCB CNCの精度は?Corneアルミケースを自作して品質検証【Cörnium】きりたんぽ研究室

ファームウェアの作成

自作キーボードlöwin44のファームウェアを作成

ファームウェアを手打ちで作成

ケースを発注して届くまでに時間が掛かるので、ここでファームウェアを作っておきました。

ファームウェアに関してはKeyboard Layout EditorのJSONファイルから生成できる便利なツールがあるのですが、うまく使いこなせず手打ちで作りました。

自作キーボードのファームウェアをコンパイル

エラーを修正しつつ無事にコンパイル

作ったファームウェアをコンパイルしてHEXファイルを用意しておきます。画像では一発で生成されていますが、実際にはちょこちょこエラーが出て、その都度調べて修正したという感じです。

JLCPCBから基板とケースが届いた

JLCPCBから届いた3Dプリントケース

JLCPCBから3Dプリントのケースが届いた

ここまで準備できて少ししたらケースが手元に届きました。今回はナチュラルホワイトではなくホワイトが良かったので、8111X(resin)で注文してみました。

映像で伝わるか分かりませんが、肉眼で見た感じだと切り餅みたいな質感です。そして色は完全な白ではなく、少しくすんでいました。

自作キーボードケースのスナップフィット部分

スナップフィットは強度が心配

ボトムケースのスナップフィット部分は、やっぱりかなり薄くて脆い感じになってしまいました。

JLCPCBから届いた自作キーボード基板

基板は真空パックで届いた

PCBに関しては、ロータリーエンコーダーのプッシュに使う配線をつなぎ忘れていたところ以外は問題ありませんでした。

ただし、追加料金まで払ったトッププレートのエンコーダーを逆に配置してしまい、使い物にならなくなってしまいました。

きりぽん

これに関しては、他のマウント方法も試してみたいと欲をかいて確認が抜けていた私が悪いので、勉強代ということにしておきます。

自作したキーボードを組み立てる

自作キーボードlöwin44の組み立て作業

まったり組み立て作業

ちょっと前置きが長くなりましたが、ここから組み立て作業をしていきたいと思います。今回使用したパーツは以下にまとめます。

基板 JLCPCB
ケース JLCPCB
キースイッチ Gateron Oil King
キースイッチ WS Morandi
キーキャップ Akko MDA BoW
ソケット Kailhホットスワップ用ソケット
ロータリーエンコーダー EC12 360度ロータリーエンコーダー
ロータリーエンコーダーキャップ アルミ合金ポテンショメータ
TRRSコネクタ コネクタ,3.5mm,10個セット
マイコン Pro Micro USB-C(互換品/青)
コンスルー MAC8 コンスルー
フォーム Durock クッションフォーム
スタビライザー Gateron Screw in stabilizer V2
潤滑剤 Krytox GPL205 G0

上記のリンクには一部アフィリエイトリンクを利用しています。

ダイオードのリード線を折る

ダイオードのリード線を折る

まずはダイオードを基板3枚分、必要なサイズにリード線を折ります。

ダイオードを自作キーボード基板に差し込む

ダイオードを基板に差し込む

次に所定の方向に合わせてスルーホールへ差し込みます。フラックスを少し多めに塗って、はんだ付けしてみました。

自作キーボード基板へのダイオード実装完了

ダイオードの実装完了

取り急ぎ全部付け終わりました。このタイプのダイオードってメカメカしくて好みです。

ホットスワップ用ソケットをはんだ付け

ホットスワップ用のソケットをはんだ付け

次はスイッチ用のホットスワップソケットを取り付けていきます。ソケットは前回と同じで、予備はんだをパッド全部にしてしまう方式でいきたいと思います。

予備はんだを全部したら、あとはスコッとはまるまでソケットの接点をはんだごてで熱します。

自作キーボード基板にリセットスイッチをはんだ付け

リセットスイッチをはんだ付け

ソケットを付け終わったらリセットスイッチを取り付けます。

TRRSジャックを自作キーボード基板にはんだ付け

TRRSジャックをはんだ付け

続いてTRRSジャックもはめ込んではんだ付けします。

11.5mmのロータリーエンコーダー

ロータリーエンコーダーは11.5mmを採用

ロータリーエンコーダーは試しに14mmと11.5mmを購入してみたのですが、今回は短い方を使いたいと思います。

ロータリーエンコーダーを自作キーボード基板にはんだ付け

ロータリーエンコーダーをはんだ付け

取り付けは基板に挿して裏のピンをペンチでかしめ、各所をはんだ付けしました。

パーツを実装した自作キーボードlöwin44の基板

自作キーボードの基板っぽくなってきた

だいぶ端折りましたが、ここまでの作業である程度形になってきました。

自作キーボードに使用したUSB-C対応Pro Micro

Pro Micro(USB-C)

はんだ付け作業の最後にPro Microをピンヘッダーにはんだ付けします。

Pro MicroのUSB-Cコネクタ部分をはんだで補強

Pro Microの補強

USB-Cなのでコネクタ部分がもげるということは少ないかもしれませんが、念のためスルーホールにはんだを流して補強しておくことにしました。

分割キーボードの左右それぞれにファームウェアを書き込む

片手ずつファームウェアを書き込む

ファームウェアは片手ずつそれぞれフラッシュして問題がなさそうだったので、TRRSケーブルをつないでピンセットを使い動作確認してみました。

ピンセットを使って自作キーボード基板の動作確認

ピンセットで動作確認

一通りソケットをチェックして問題がなさそうなので、続けて組み立てます。

スタビライザーに潤滑剤を塗布

スタビライザーは油ましまし

前回組んだときはスタビライザーへのルブがかなり薄く、カチャカチャとうるさかったので、今回は気持ち多めに潤滑剤を塗布して取り付けてみます。

キースイッチ用のクッションシール

スイッチ用のクッションシール

次に気休め程度ですが、スイッチ用のクッションシールを貼ってみました。ダイオードの位置と干渉してしまい、若干浮いているのが気になりますね。

Gateron Oil KingとWS Morandiを取り付けた自作キーボード

キースイッチの取り付け

スイッチはGateron Oil Kingと、最下部のモディファイアキーにWS Morandiを使いました。

AKKO MDA BoWキーキャップ

AKKO MDA BoW

キーキャップはAliExpressのセールにて4,000円で購入したAKKOのMDAプロファイルのBoWにしてみました。

遊舎工房で打鍵感が気に入ったカスタムキーボードに、2回ともこれが付いていたのが購入した理由です。

ロータリーエンコーダーのキャップを取り付けたlöwin44

ロータリーエンコーダーのカバーを取り付け

あとはロータリーエンコーダーのカバーを2つはめて完成です。

完成した分割自作キーボードlöwin44

打鍵感は悪くない

配列にはまだ慣れていなくて下手くそなタイピングですが、打鍵感は悪くありませんでした。

自作キーボードを設計からしてみた感想

最後に少しまとめてみたいと思います。良かったところと微妙だったところを振り返ります。

完成した自作分割キーボードlöwin44

ある程度満足のいく形にできた

まず良かったところですが、全くの初心者でもある程度思った通りの形のキーボードを設計できて、とても楽しかったです。

これに関しては先人の皆さんのおかげで、感謝しかありません。

参考にさせていただいた書籍

自作キーボード設計で参考にした書籍

参考にさせていただいた書籍

全く知識がないところからのスタートだったので、自作キーボードの設計に関わる書籍を6冊購入して、何回か読みながらチャレンジしてみました。

参考にさせていただいた書籍はリンクを記載しておきますので、興味がありましたらチェックしてみてください。

参考

自作キーボード設計入門(電子版)Pastry Keyboard

参考

自作キーボード設計入門2(電子版)Pastry Keyboard

参考

自作キーボード設計ガイド Vol1 設計入門編自キ温泉街販売所

参考

自作キーボード設計ガイド Vol2 ケース設計編自キ温泉街販売所

参考

n年目の初心者による 縦100mm×横100mm以内の 自作キーボード設計入門mki0002ozlet

参考

【電子書籍版】3Dプリントで自作キーボードのケースをつくる本plus TK2S 購買部

参考

Fusion360操作ガイド ベーシック編三谷大暁 (著), 別所智広 (著), 坂元浩二 (著)

まずはどんな感じで自作キーボードを作るのか知りたいという場合は、ai03さんのKeyboard Designer Wikiを読んでみるのも良いかもしれません。

MCU直付けの基板設計方法となっていて、初心者には少しハードルが高かったですが丁寧に解説されています。

参考

Keyboard Designer Wikiai03.me

課題と改善点

ロータリーエンコーダーのプッシュスイッチ配線忘れ

プッシュスイッチの配線忘れ

次に微妙だったというか、改善点です。まずPCBはロータリーエンコーダーのプッシュ用ピンをMCU側につながなかったというミスをしてしまいました。

自作キーボードケースのコネクタ周りの改善点

ケースのコネクタ用の穴を修正する必要あり

次にケースのコネクタ周りとボトムケースの固定方法は、再度検討し直す必要がありそうです。

タイピング動画を撮る時点で右手側の爪が折れて、ガタガタと干渉音がしてしまいました。外注に出す前に気軽に試作品を作れる3Dプリンターが欲しいな~とか思ったり。

そしてファームウェアの書き方が悪いのか、右側のロータリーエンコーダーが反応しないのも修正する必要がありそうです。

自作キーボードlöwin44をVIAやVialへ対応させたい

VIAやVialに対応させたい

また現状ではVIAにもVialにも対応していないので、いずれ対応させたいと思っています。

MCUはPro Microを使いましたが、次に発注するときはRP2040に対応した基板にしたいと思います。当時はRP2040-ZEROがAliExpressで300円しないくらいと安く、性能も良さそうだったのが理由です。

まだまだ改善する点はあるかもしれませんが、現時点での及第点は以上です。

自作キーボードlöwin44の設計と製作にかかった費用

自作キーボードの設計にかかった費用

項目 金額
PCB 9,800円
ケース 6,375円
Pro Micro 1,800円
ダイオード 360円
タクトスイッチ 110円
コンスルー 500円
ロータリーエンコーダー 284円
エンコーダーカバー 733円
TRRSコネクタ 445円
キースイッチ 3,698円
キーキャップ 3,996円
合計 28,101円

最後に、今回のキーボードにかかった費用も参考までに記載しておきます。

執筆から約半年後になりますが、色々気になる部分が出てきたので基板とケースを再設計してアップデートしました。

多少トラブルもありましたが、だいぶ使いやすくなったので良かったら記事を読んでみてください。

プロトタイプのrev2を作ってみた

再設計した分割自作キーボードlöwin rev2

設計をアップデート

参考

【自作キーボード】分割型キーボードを再設計してLEDをつけて塗装してみた【löwin】きりたんぽ研究室

きりぽん

設計自体が初めてのことでお見苦しいところが多々あったと思いますが、最後までお読みいただきありがとうございました。では皆さんも良いお年を~