![見出し画像](https://assets.st-note.com/production/uploads/images/152269662/rectangle_large_type_2_19a33a2f3412afd946322ba5a045b5e6.jpeg?width=1200)
チョコモナカジャンボみたいなキーボードを作る。初めての自作キーボード。
今回やったこと
回路基板(設計・発注・実装)
フル3Dプリンターのケース・キーキャップ(購入・設計・印刷・組立)
ファームウェア(QMKで作成・書き込み)
きっかけ
自作キーボードを作りたい。そう思ったのは天下一キーボードわいわい会 Vol.6をTwitterで見かけたからだ。面白いキーボードがいっぱいで楽しそうだった。その時自分はKeychron Q11を利用していた。よくある分割キーボードなのだが少し不満もあった。少し大きく、机の占有面積が大きい。ちょうどいい機会なのでキーボードを新調し、せっかくなので自分でキーボードを作ることにも挑戦する。
![](https://assets.st-note.com/img/1724829064924-c0Xkq9CstT.png?width=1200)
制作
コンセプト決め
制作を開始しようにもまずは何をすればいいかわからない。なのでひとまず次の本を購入した。
読むと最初はひとまずコンセプトを決めるのが重要らしい。その時にこの本を読みながら食べていたのがチョコモナカジャンボだった。「これでいいじゃん」。ということでコンセプトは決まった。モナカみたいなかたちで使えるキーボードにしよう。モナカサイズにしたいし2個で使える分割キーボードにしたら面白いだろうと思った。ちょうどオーソ配列に興味があったのでこのコンセプトはその点でもピッタリだった。
キーマップ
さて、コンセプトが決まったら次は回路を引かねばならないのだが、そのためにもざっくりキーマップを考える必要がある。チョコモナカジャンボは 3 x 6の18キーがある。これを完全に合わせることも可能だったが、3x6で2個のキーボードは非常に小さい。私はプログラマーなので記号を打てないキーボードは使うのが厳しいので流石にこのサイズは無理だった(というか特殊配列の学習コストは払いたくない)。なので1列足して3x7キーボードとした。これならギリギリ使えるだろう。
![](https://assets.st-note.com/img/1724829471971-ggk7yzOdb7.png?width=1200)
回路設計
では回路設計です。と言っても解説することはなく、シンプルにmatrixを設定します。特異な点はTRRSジャックが2つあり、共通化されています。これによってTRRSケーブルの接続によってジャックの方向が決まることを避け、机にキーを置くときに左からtoCケーブルを繋いだり、真ん中からケーブルを出したり繋いだりできるようになります。
![](https://assets.st-note.com/img/1724829668849-LvIUhLeekA.png?width=1200)
実際に配置していきます。ここで注意したのはモナカなのでモナカ以外の領域を作らないことです。よくあるマイコンが露出しているキーボードではモナカ感は減ってしまいます。なのでキーの下にうまいことマイコンを配置します。TRRSジャックも同様です。
![](https://assets.st-note.com/img/1724829842828-ItJaB1nRYV.png?width=1200)
分割キーボードとしては左右に差異がないので、これをこのまま5枚発注します。1ドル150円くらいで悲しい。
![](https://assets.st-note.com/img/1724832256561-9YtciEVoQc.png?width=1200)
ケース作成
発注して基板が届くまでにケースを作成します。まず最初に3Dプリンターを購入します。
![](https://assets.st-note.com/img/1724830062099-2quULEg6oI.png?width=1200)
届きました。では設計をしていきます。まずキースイッチをはめ込むトップボードを作成します。設計のため、キースイッチもモデリングします。キースイッチは別に見た目上で欲しかっただけなのでテキトーです。
![](https://assets.st-note.com/img/1724830172319-Tk5Z7hEa5E.png?width=1200)
![](https://assets.st-note.com/img/1724830109502-tUoTlveyds.png?width=1200)
できました。いい感じです。このままキーキャップも作ります。
![](https://assets.st-note.com/img/1724830264945-IbI6oljdfY.png?width=1200)
![](https://assets.st-note.com/img/1724830324004-gQBGB161wQ.png?width=1200)
キーキャップを作成しました。チョコモナカジャンボは真ん中が円形に凹んでるのでそれを再現します。断面としては次のようになります。
![](https://assets.st-note.com/img/1724830391440-0tqsKvE4gF.png?width=1200)
ここで基板が届きました。サイズ感を確認し、ボトムボードも作成します。リセットボタンを押せるように穴を開けておき、ペンなどを差し込んでリセットできるようにしときます。
![](https://assets.st-note.com/img/1724830593124-L1i49Pg4JG.png?width=1200)
できました。少し微調整をしますがケースは完成です。
はんだづけ
はんだづけします。1個ダイオードを逆につけてミスをしました。
![](https://assets.st-note.com/img/1724830766132-EMDf0Qggti.png?width=1200)
組立
すべてを新しい茶色のフィラメントで印刷し、組立ます。印刷は充填率15%でも意外と強かったですが、今回は50%で印刷します。
![](https://assets.st-note.com/img/1724830870775-KVLNsZafxK.png?width=1200)
できました。2個作ります。
![](https://assets.st-note.com/img/1724830929432-C2np6ZEM3V.png?width=1200)
できました。これでハードは完成です。TRRSケーブルが2つあるのでこういう便利さもあります。
![](https://assets.st-note.com/img/1724860986742-pAUDAr8jni.jpg?width=1200)
ファームウェア
頑張ってQMKのドキュメントを読んでいきます。キーマップをとりあえず決めて書き込んでみます。
![](https://assets.st-note.com/img/1724831052856-cHi183aVcg.png?width=1200)
できました。書き込みをします。
Bootloader not found. Make sure the board is in bootloader mode.というエラーが発生したので他の人のkeymap.cを見比べていきます。よく見るとFlashing for bootloader: atmel-dfuと出力されています。なのでkeyboard.jsonの中で"bootloader": "atmel-dfu"があることを確認します。ほかの方のkeyboard.jsonにはこれがない場合があるので削除したら無事書き込めました。2つとも書き込みます。
それぞれで動作を確認しました。次にTRRSケーブルで接続し動作を確認します。
両方の入力を確認できました。これでモナカキーボードは完成です。
チョコモナカジャンボサイズのモナカキーボードを作りました。2つで分割キーボードとして利用できます。#自作キーボード pic.twitter.com/thlvCsSrgO
— 電電猫猫/ Naoki (@nya3_neko2) August 28, 2024
終わりに
初めての自作キーボードは作っていて楽しかったです。ファームウェア周りひっかかりましたが、概ねスムーズにできました。モナカキーボードはもう無線化などを施そうと思います。次はトラックボール付きキーボードを作ろうと思います。皆さんも自作キーボードを作ってみませんか。
余談
今回の出費
Bambu Lab A1 mini : 約4万円
茶色のフィラメント : 4000円
基板発注 : 1000円
電子パーツ類 2000円くらい?
TRRS
ダイオード
スイッチ
Pro Micro (C端子) 1500円 x 2
キースイッチ:45円 x 100 - aliexpress割引 = 3500円くらい
モナカキーボード1つあたりのコスト:約5000円
基板:200円くらい
キースイッチ:1個 45円くらい x 21キー x 2セット = 2000円くらい
フィラメント:合計100g分くらい x 4000円/1kg = 400円くらい
電子パーツ類:700円くらい
Pro Micro : 1300円
ネジ:100円くらい
改善
いい感じのキーキャップにしたい。ちょっと作る。
![](https://assets.st-note.com/img/1724945689516-ONiM16UspZ.png?width=1200)
できた。印刷中。
![](https://assets.st-note.com/img/1724945829552-0VHysyAf2s.png?width=1200)