⌨️

はじめての自作キーボード制作記

2022/10/31に公開

自作キーボード制作記

これは私が初めて書く技術ブログのようなものです。もしよろしければ、自作キーボードについての観点や、このような記事の書き方についてアドバイスをいただけますと幸いです。

対象読者

この記事は、自作キーボードに興味を持ち、選び方に悩んでいる方や、既存のキーボードの特殊なキー配列をソフトウェア側で変更して使用しているが、ハードウェア側で変更したいと考えている方を対象としています。

完成品の写真

動機

小学生の頃に思いついた親指fnキーという配列を使い、約6年間利用していました。

ただし、その配列はAutoHotKeyというソフトウェアを使用して再現していたため、時折反応が悪くなったり、別のPCを使用すると設定をやり直す必要がありました。そこで、ハードウェア側で設定できる自作キーボードを考えるようになりました。

以前使用していた配列について

簡単に説明すると、無変換キーを押している間だけ、IJKLが矢印キーとして機能するという配列です。さらに、NやMでbackspaceやdelete、セミコロンでエンターキーとして機能するようになっています。

キーボードの選定

まず、以下の条件に合致するキーボードを探し、リストアップしました。

選定条件

必須条件

  • 親指fnキーを使用可能であること
  • サイズが75%~60%であること
    • 自宅と持ち運びの両方で使用することを考えていたため
  • オンボードで自作のキー配置を保存できること
  • macOSで使用可能であること
  • 左下の小指で押すキーが4つであること
    • 数が多すぎると混乱するため
  • 左下にCtrlキーがあること
    • 8年間ほどWindowsユーザーをしていたため、左下のCtrlキーに慣れており、かつCaps Lockキーの位置にIMEの切り替えキーを使用していたためです。

望ましい条件

  • 独立した Arrow キーがあること
    • Ctrl と Shift と Alt と Arrow キーを押すことがちょくちょくあり、そこに Fn キーなんか加わったら脳がパンクするため。
  • US 配列であること
    • 記号の位置も変えられるだろうし、Enter キーが近いのが使いたかったためです。
  • 数字キーがあること
    • 数字キーがないレベルで小さいのはちょっとまだ怖いです。

リストアップしたもの

  • ErgoDash
  • ErgoDox EZ
  • MoonLander mark1
  • Amatelus73
  • ErgoArrows
  • Hatsukey69
  • NIZ:ATOM66
  • NIZ:MICRO84
  • Fortitude60
  • HHKB Pro2 Type-S
  • HHKB Pro JP Type-S

お店への訪問

実際に遊舎工房に行って、上記の条件に合致するキーボードを試打してみました。うれしい誤算として、HHKBの試打もできました。遊舎工房はHHKBのタッチ&トライスポットとなっており、試打体験ができるのが嬉しいポイントでした。

判明したこと

試打を通じて、いくつかの新たな条件が明らかになりました。

  • 格子配列は苦手です。
  • 私はスペースキーを左手でしか押さない習慣があります。
  • F1からF12キーは必要です。
  • ホームポジションから上段の「u」キーは0.25u、下段は0.5uずれた配置に慣れています。

選定条件の改善

たとえば、HHKB JPの場合、上段と下段のキーがそれぞれ0.25uずつずれており、さらにUS配列では左下にキーがなくCtrlキーが割り当てられないため、HHKBは候補から外れました。

当初、KeychronのQシリーズしか見つけることができませんでしたが、重さの点からこの時点で市販のキーボードはNIZだけが残りました。

必須条件

  • 左手で親指fnキーを操作できること
    • 結局、親指fnキーは左手だけで操作できれば良いことが分かりました。
  • Enterキーが押しやすいこと
    • たとえばUS配列やスペースキーが分離されていたりすること
  • Spaceキーが分離されていて、Enterキーが親指に割り当てられるほどのスペースキーの分離度合い
  • 数字キーが存在すること
  • Fnキーが存在すること
  • 配列に問題がないこと
    • 格子型ではないこと
    • 上段が0.25uずれており、下段が0.5uずれていること
  • キーマップを変更できること

望ましい条件

  • 即座に購入可能なこと
  • 右手でBキーを押せること
  • ホットスワップが可能であること
  • 独立したアローキーがあること
  • 電池不要で動作すること
  • 軽量であること
  • 自作キーボードの場合、市販のケースで使用することができるかどうか

選んだキーボード

上記の条件を基に、それぞれの項目に対して3点満点でスコアを付け、ランキングを作成しました。スコアは必須条件を満たしている場合に3点、望ましい条件を満たしている場合に1点とし、それに基づいてランキングを決定しました。

  • 29: 7splus
  • 28: j73gl基盤セット
  • 27: DZ60 type-c
  • 27: Hatsukey69
  • 27: HHKB Pro JP Type-S
  • 27: Angel70
  • 26: NKNL7EN
  • 25: NIZ:MICRO84
  • 25: NIZ:ATOM66
  • 24: Angel64
  • 23: Keychron Q1 QMK JP

というわけで7s-plusを購入

購入

その後、私は遊舎工房に行き、7splus とキーキャップを購入しました。

選んだキーキャップはTai-Hao ABS Rain Dropです。このキーキャップを使用すれば、若干の隙間は生じるかもしれませんが、すべてのキーをキーキャップで覆うことができます。

その後、遊舎工房の工房を借りて、キーボードの組み立てを行いました。組み立ての際には、遊舎工房の店員であるSさんに大変お世話になりました。Sさんは有償サポートとして3000円を支払うと、要望に応じて様々な作業を手伝ってくれるというサービスを提供しています。

また、遊舎工房にはアクリルカッターが備えられており、Sさんはアクリル板を使用してキーボードケースを作る技術も持っています。もし機会があれば、Sさんが在籍している間に工房を訪れてみることをおすすめします。

組み立て

はんだごてを所持していなかったため、キーボードの組み立て作業を遊舎工房で行いました。(結果的に何度か通ってしまい、約10,000円かかってしまいました。)

私自身ははんだ付けなどの経験がまったくなかったので、工房での組み立てを行いました。インターネット上の記事やSさんのサポート、工房に備わっている道具を活用して、大体の作業はうまく進めることができました。

ただし、問題点としては当時の半導体不足によりコンスルーが手に入らず、遊舎工房の店員さんが付属のピンヘッダでも代用可能と言ったため、それを信じてコンスルーを使用せずにプロマイクロを組み立てました。しかし、設計上の問題で付属の脚がうまくはまらず、結局この部分については有償サポートに頼むことになりました。

また、一般的な方法としてはマイクロUSBをグルーガンで固定する方法が知られていますが、Sさんのアドバイスにより、グルーガンではなくはんだを使用してUSBの特定の箇所に流し込む方が効果的だと教えてもらいました。

USBについても、マグネットのついたケーブルを使用し、慎重に扱っていたつもりでしたが、結局左側のマイクロUSBが折れてしまいました。

また、今回購入した7splusは元々分割して使用することを想定していましたが、オプションとして接続したまま使用することも可能なことが分かりました。筆者自身、Bキーを両手で打つスタイルなので、これはありがたいことでした。本来は分割せずに制作する予定でしたが、工房で複数日にわたって運んでいた間にキーボードが折れ曲がってしまい、残念ながらTRSケーブルを挿すと認識しない状態になってしまいました。

10,000円かかってしまったと述べましたが、Sさんのサポートを考慮すれば妥当な金額だと感じました。

自作キーキャップ製作

正直なところ、スペースキーを3つに分割する必要はあまり感じなかったので、中央の2つのキーを結合させるようなキーキャップを3Dプリンタに慣れるために製作しました。

私は特定の施設で3Dプリンタを利用しており、ちょうどこのキーキャップを作り始めた時に機械が故障してしまいました。そのため、代わりに積層方式で製作しましたが、ヤスリ掛けが少々大変でした。

Fusion 360が無料で使用できる環境にあったため、このキーキャップが私の初めての作品となりました。

キーキャップ画像1
キーキャップ画像2
キーキャップ画像3

自作キーボードケース制作

ここからは自作キーボードケースの制作について説明していきます。制作の動機としては、今回購入した7splusの基盤が露出しており、埃が入り込んだり、分割キーボードを分割せずに使用する場合の強度に不安があったため、ケースを制作することにしました。

第一段階

私の環境では3Dプリンタを自由に利用でき、また3Dプリンタでの制作に興味があったため、3Dプリンタを使用してケースを制作することにしました。ボトムプレートがケースの形に横に伸びるようなデザインを考えて作りました。

最初は定規と根気で寸法を測っていましたが、かなり困難な作業だったため、途中で製作者に連絡し、ある程度の寸法を教えてもらいました。

画像1

しかし、このケースの制作中に、ガスケット方式など複数の方式が存在することを知り、さらにFusion 360の使い方に慣れていないため、タイムラインの処理に苦労したり、汚れがたくさん付着してしまったりと、制作に対するモチベーションが低下してしまい、一時的に開発を中断しました。

第二段階

下からネジで固定する方式はあまりにも単純すぎるため、押し心地がやや悪くなる可能性があることが分かりました。また、3Dプリンタのサイズの制約から、一体で出力することは不可能でした。そのため、ケースを周囲から挟み込む方式に変更しました。


チルト

別途、角度を調整するためのモジュールを作成し、印刷しました。ノートパソコンに少し載せた状態でも使用できるよう、高さ調節が可能な設計にしました。

また、必要な精度が異なる部分があるため、精度が求められる部分では薄く印刷し、求められない部分では大きく印刷しました。その後、溶着しましたが、見た目が汚くなってしまいました。

その後、ゴム脚を取り付けましたが、取り付け方がよくわからず、瞬間接着剤を使用したところ、失敗して全体をうまく貼り付けることができませんでした。しかし、このゴム脚には問題がありました。

尊師スタイルへ

尊師スタイルを知らない方は、検索してください。

尊師スタイルをする際に、前回作った脚がそのまま電源ボタンに当たってしまうという事態が発生したため、今回は足の小型化を進めました。下の写真が新型、上の写真が旧型です。上側は溶着の都合で見栄えが悪くなっているのがわかります。

チルトパーツを装着している様子です。

これを最初と逆向きで取り付けることによって、見事に電源ボタンを避け、尊師スタイルでノートPCを使用することができました。

使用感

実は、本来購入予定だったキーが目の前で売り切れてしまい、代わりに似たような価格帯のタクタイルスイッチを選んでもらいましたが、家で使ってみると予想よりも柔らかかったです。結果的には慣れるとタイピング速度が向上したように感じられ、問題ありませんでした。ただし、店員さんの言葉を鵜呑みにするのは良くないと思います。

また、以下のようなキーマップを使用しています。これにより、Caps LockキーでのIMEオンオフ切り替えの安定感や、ESCキーの押しやすさが向上し、入力体験が思っていた以上に向上しました。

使用しているキーマップ:
キーマップ

Fnキー(スペースキー長押し)中には以下のレイヤーに切り替わります:
Fnキーマップ

購入前の不安点

JS配列をUS配列のキーボードでうまく使えるか

筆者は右シフトキーマップを適切に調整することで、問題なく使えるようになりました。Enterキーも押しやすくて良いです。

スペースキーをゲームで使用する際に遠すぎないか

結構簡単に慣れることができました。

反省点

  • 特殊な配列を使用していること。
    • 選べるキーキャップが限られている点が問題です。通常のキーボードを使うと戸惑います。
    • US配列のキーキャップをJP配列として使用することも混乱を招きます。今後はUS配列を使用する予定です。
  • 材料費では約30,000円ほどで制作できる予定でしたが、工房の利用料が延々とかかり、結局15,000円以上かかってしまいました。
  • コンスルーを使用しなかったこと。
    • 遊舎工房の店員さんのアドバイスで、「コンスルーがなくても何とか作れるよ」と言われ、グルーガンで固定する代わりにマイクロUSBをはんだ付けしました。
    • はんだ付けをしたことにより、修理の際にはんだをはがして再度付け直す必要が生じました。全てはコンスルーを使用しなかったことに起因するため、今後はコンスルーの使用をおすすめします。
  • 事前に使用できるレイヤー数を確認していなかったこと。
    • このキーボードではviaやremap-keysを使用することで3つのレイヤーを使うことができるようです。最初は自分の想定していた使用方法が実現できたのですが、後に他の使い方を試すことができませんでした。レイヤーの余裕は心の余裕です。
    • 後日、QMK Frameworkを使用することでレイヤー数を増やすことができることが判明しました。普段C言語でプログラミングをしているので、今後は挑戦してみる予定です。

今後の展望

本当に自作キーボードである必要があったのか?

最初は自作キーボードをするつもりはありませんでしたが、理想のキーボードが見つからなかったために自作することになりました。結果として、これまで経験したことのない体験をすることができました。しかし、その後QMKのホールドやタップといった機能を知り、無変換キーに対応するキーがなくても、スペースキーのホールドをfnキーに割り当てることで一般的なキーボードでもキー配置を変えることができることに気づきました。通常の配列でも自分の理想の配列にすることができるため、次回の購入ではメンテナンス性などを考慮して、QMKを使用してキー配置を変更できるキーボードを選ぼうと思っています(円安ドル高の解消を願います)。

薄型キーボードの可能性

また、「き」を入力する際の中指の下のKからIに移動する動作がやりづらいと感じたため、薄型キーボードも良い選択肢かもしれません。

ドラムパッド

MIDIキーボードにはドラムパッドの割り当てもできるようです。ちょうどドラムパッドを購入しようと考えていたので、一度試してみたいと思います。

感想

自分に合った道具を選び、自分を道具に合わせるバランスを考えることはなかなか難しいことでした。はんだ付けや3Dプリンタといった経験は非常に貴重でした。

最後に、親身になって相談に乗ってくれた遊舎工房のS様、7splusの制作者のサチリル酸様に心から感謝しています。

Discussion