オープンソースの画像生成AIをセットアップから使い方まで解説する『Stable Diffusion AI画像生成ガイドブック』(ソシム刊)発売中(→本のサポートページ

親指シフトを意識したキーボードをSU120で作る


これは「キーボードAdvent Calendar 2021(#2)」という企画の16日目です。テーマに沿って12月1日から25日まで、持ち回りで記事を公開していきます。

昨日の記事はアーサー㌠さんの「今年の自作キーボード活動まとめ - koktoh の雑記帳」でした。

そのほかのキーボードAdvent Calendar 2021

下はキーボードの写真を撮って見せっこする企画、「KEEB_PD」のAdvent Calendarです。

自作キーボードの知識が増えてくると、自分にとって理想的かもしれないキー配列のアイデアが出てくる。親指シフトを使っているので、いま使っているキーボードの配列をベースに親指シフト向けのキーボードを作ることにした。

キー配列を検討

今使っているキーボードはエレコムTK-FBP044である。WindowsMacの両方で使うことができ、USB接続のほかBluetoothで9台までマルチペアリングできる。USBでパソコンにつなげば電池を入れる必要もない。自分のパソコン環境で理想的な機能を持っている。すでに生産終了。

TK-FBP044を買ったときの記事
新しいキーボードを買う

TK-FBP044の配列をKeyboard Layout Editorで再現するとこんな感じ。

普通のJIS配列がアレンジされている。カーソルキーやPageUp/Down、Ins/Del、Home/Endの領域がないぶん、全体の幅が狭くなっていてテンキーが近い。つまりその先のマウスも近いということで、これはなかなか気に入っている。

前モデルのTK-FBP014も同じ配列で、こちらは2012年2月に買ったからもう10年間この配列を使っていることになる。

このキーボードで親指シフト入力するために、Windowsでは「やまぶきR」、Macでは「Karabiner-Elements」を入れた。そしてスペースキーを左の親指シフトキー、変換キーを右の親指シフトキーに設定している。しかしTK-FBP044はスペースキーと変換キーの幅が親指シフトに理想的とはいえない。現状はスペースキーの左端([V]キーの下あたり)を左親指で押し、[M]キーの下にある変換キーは右手の親指を少し曲げて押している。スペースキーがもっと小さくなって、変換キーが[N]キーの下あたりへ伸びれば右手の親指を曲げる必要はなくなる。

ほかにも、キーボードの使用状況や新しくキーボードを作るならと考えて、こんなキー配列を考えてみた。


  • いま肩が凝っているわけではないが、分割キーボードに興味があるため分割する
  • オーソリニア(ortholinear、格子配列)やカラムスタッガード(column staggered、キーが行ごとに左右方向ではなく上下方向にずれている)は指が慣れるかわからないため一般的なロースタッガード配列に
  • 数字キーの行、[F1]~[F12]キーの行は省略。これらは[Fn1]キーや[Fn2]キーとの組み合わせで入力する
    • 数字の行とファンクションキーの行を省略したのははんだづけの数を減らしたいのと、ふだん[6]や[7]のキーは遠いしなかなかタッチタイプできるようにならないから
    • 構想当時すでに販売されていた日本語配列の自作キーボード、JISprit89(→販売ページ:遊舎工房)やsphh jp(→販売ページ:遊舎工房BOOTH)と差別化したかったという理由もある
  • 下から2行目(左右に[Ctrl]キーがある行)はMajestouchの日本語キーキャップセット(→遊舎工房でも買える)を使うことを想定
    • Majestouchの日本語キーキャップセットに加えて別途必要なキーは、1.25uが左[Shift][親指左][親指右]キー、1uが[Esc][Adj][無変換][変換]キー([Esc]キーはMajestouchのOEMプロファイルではR1の形状でありR3の行にフィットしない)
    • [親指左][親指右]キーはコンベックス(キーの上面が凸型)のものが望ましい。これらのキーはオリジナルの親指シフトキーボードだともう少し幅があるが(2.25u)、Majestouchの「Majestouch用かまぼこ型キーキャップ2個セット」は幅が1.25uで、これを使うことを考えていた
    • 日本語配列のキーキャップセットはCORSAIRからも「PBT DOUBLE-SHOT PRO キーキャップ Mod キット」(→販売ページ:遊舎工房)が出ている。6色展開、PBT素材、ダブルショット、かな刻印なし、Oリング付属といろいろ申し分ないのだが、惜しいことにレジェンド(キートップの文字や記号)のフォントが好みでなかった。スペースキーがある再下段のキーの幅はMajestouchと一部異なる
  • [無変換][変換]キーを[親指左][親指右]キーの下に配置するのは過去の親指シフトキーボードにならいつつ、自作キーボードは親指が担当するキーを増やすのが定番だから
    • 下は先日終売になった親指シフトキーボード、FMV-KB613のキー配列。親指シフトキーの下に独立した[無変換][変換]キーがある
    • 自作キーボードは[BS]キーを親指担当にするのも定番で、これは親指シフトにも通じるところがあると感じる。親指シフトでは日本語入力時に[:]のキーが[後退]([BS])になっていて、右手の小指をホームポジションから1つずらすだけで[BS]を入力できる
  • [F1]キーはうっかり押すとヘルプが起動して待たされることがあるので押し方をほかと変えて遠くへ追いやった
  • [Ctrl]+[P]などを右手だけで押したいので、TK-FBP044にはなかった右の[Ctrl]キーを設けた
  • 左手側のカーソル移動や[Home]/[End]、[PageUp]/[PageDown]([Fn3]キーと同時押しで入力)は、WZ Editorというテキストエディタで常用しているVzキーアサインに合わせている
  • 一方でカーソルキーを単独で押すこともよくあるため、右下にカーソルキーを設ける
  • TK-FBP044では[PageUp]/[PageDown]、[Home]/[End]は左下の[Fn]キーとカーソルキーの同時押しとなっている。この操作だと絶対に両手が必要なので、[Menu]キー(アプリケーションキー)とカーソルキーの同時押しでこれらを入力できるようにした
  • 幅が2u以上のキーはスタビライザーをつけるべきで、スタビライザーは「ルブするべき(=潤滑油を塗るべき)」という意見が強いと感じる。左[Shift]キーの幅は通常2.25uあるが費用や手間を抑えるために分割し、スタビライザー不要とした
  • Affinity DesignerやIllustratorで[Ctrl]+[Shift]+[Alt]+[S]などを押すので、左下の[Shift]キーと[Ctrl]キーはTK-FBP044と同じ位置にした(のちに修正)

SU120で組み立て

これをSU120で組み立てていく。事前に作った設計図がこちら。上段は4枚のSU120をどう切り離すか、下段はそれをどう配置するかを表している。D6とa6はせっかく使えるのでロータリーエンコーダをつけることにした。

B1とC1が切り離されているのは、P1/D6の行とC1~F1の行は切り離さないほうがよいと勘違いしていたため。またB4とC4が切り離されているのは、当初A4(1.25u)とB4(1u)の位置を逆にしていたため。

これらの変更で工数がちょっと増えるけどまあいいやで組み始めたが、増える手間はちょっとではなかった。この部分はSU120の余った基板から持ってくればよかった。この2か所がつながっていれば、ビスケットを切り離したり、「ROWどうし」でつなぐ線を用意したりする手間が減り、ねじ止めやはんだづけする場所も少なくなる。これらの作業は部品が細かいこともあって案外大変で、できる限り減らすほうがよい。

SU120の基板はTALP KEYBOARDで買った。

SU120のドキュメントはこちら。下の2つは特に役立った解説。

ビスケットを留めるM1.4ミリ、長さ10ミリのねじはAliExpressで買った。100本、ナットつきで送料込み211円。使ったビスケットは48本だからねじは96本必要でちょうどよかった。

基板を切り離す前にダイオードとソケットをはんだづけした。

ダイオードの足ははんだづけ前にカットする派。ダイオードがずれないよう、裏返してマスキングテープで固定してからはんだづけする。

ニッパーは切った銅線などが飛んでいかないよう、つまんでくれるものを使っている。


gootも同趣向のものを出している。

ダイオードのはんだづけが完了。

続いてスイッチソケットのはんだづけが完了。スイッチソケットは予備はんだをしてからはんだづけした。

Pro Microにピンヘッダをはんだづけ。端からはんだづけしていったら少し浮いてしまった。Pro Microを押さえつつ四隅からはんだづけすればよかった。

ダイオード、ソケット、リセットスイッチ、Pro Microのはんだづけ完了。ここですでに間違えている。どこでしょう。あとPro Microはコンスルーを使わなくても抜き差しできるよう基板の穴が少し互い違いになっているものの、面白がって抜き差ししすぎないほうがいいです(後述)。

解散!

ビスケットとねじはとても小さい。

基板どうしをつなぐ線はダイオードの足の切れ端を使う。ラジオペンチで片方を数ミリだけ90度に曲げて穴に入れ、もう一方を適切な距離で曲げる。

こういうのをたくさん作った。

途中経過。下の2枚目(右手側)は先ほどの間違いを修正したあと。なにが間違っていたかというとPro Microやリセットスイッチ、TRRSコネクタが載る基板を裏返していなかった。泣きながらはんだ吸い取り器を使って部品を取り外し、基板を裏返してはんだづけし直しました。

次にPro Microから各列、各行へエナメル線をはんだづけする。事前にこういう図を作った。先ほどの設計図を裏返したもの。

具体的な配線は「Pro Microとキーマトリクスとを接続する配線 - SU120で自由なレイアウトを作成するには」で解説されている。

配線についてSU120の作者の@e3w2qさんに質問した。

ありがとうございます。お手数をおかけしました。

はんだづけ完了。右手の基板(下の写真右側)は特に線が込み入って大変だった。

キースイッチを差し込む。Kailh Box Royalはアルファベット部の30個のみで、黒軸はジャンクのMajestouch Linearから取り外したCherry MX、軸が白いのはGateron white(clear)Linear 35g、茶色いのはKailh Speed Copper。青軸はイベントでもらったもの。黒軸ははんだづけされたキースイッチを取り外した中から、ピンにはんだがなるべく残っていないものを選んで装着した。そうしないとソケットの具合が悪くなるそうだ。


Majestouch Linearを買ったときの記事
自作キーボードほどわかりやすい沼はない

Majestouch Linearのキーキャップをつけてひとまず完成!

足りないキーキャップのほとんどは遊舎工房で調達した。1.25uの左[Shift]キーと白い親指キーは店頭のばら売りから。親指キー下の黒い1uはDSA。黒い[ESC]キーは遊舎工房の開店日にキーキャップガチャで出たもの。

[ESC]キーを出したときの記事
Make: Japan | 「自作キーボードの魅力を伝えたい」秋葉原に専門店「遊舎工房」がオープン

右下の[Adj]キーには@noixresinさんの氷キーキャップを置いた。ここだけ青軸にして、押したことが音でもわかるようにしている。

完成はまだ先

やったー完成だーで手を置いてみて、さっそくむむむとなるところがあった。

左下の[Shift]キーと[Ctrl]キーは隣の[Esc]や[Adj]と入れ替えた方がよかったかも。[Ctrl]+[Shift]+[Alt]+[S]などを押すのは今使っているTK-FBP044と同じ配置がいいだろうと思ったが、実際に手を置いてみると今の配置でいう[Esc]+[Adj]+[Alt]+[S]のほうがしっくりくる。ここはもっとしっかり検討するべきだった。キーマップで調整しよう。

そしてファームウェアを入れ、ReMapでキーマップを設定しようと思ったら入力されないキーが多数なのだった。そもそも左右のキーボード間で通信できていない。パソコンに直接つなぐと入力されるがTRRSケーブルごしにつなぐと入力されない。TRRSコネクタを一度間違えて取りつけ、つけ直したときに具合が悪くなったようだ。新しいコネクタを調達してつけ直そう。

それからPro Microは抜き差ししすぎないほうがよかった。だんだんきつくはまらなくなって、導通が悪くなったみたい。そのことをツイートしたら@e3w2qさんがリプライをくれた。ピンが曲がってきているので直せばよいとのこと。なるほどそうか。

メインのキースイッチをKailh Box Royalにしたのは、以前キーボードイベントの「天キー」で触って気に入ったからだった。

しかし今回こうやって作ってみると感触が違う気がする。キーを押し込むときの抵抗が大きく、スッと入っていかない感じ。天キーで見たキーボードのKailh Box Royalはひょっとしてルブされていたのだろうか。キースイッチに潤滑油を塗るには、スイッチを1つずつ開封しなければならない。大変だからやりたくなかったが、キーの感触がよくなるならやるしかないか。GoTo 沼である。

SU120は格子配列にもっとも向く

SU120は思いついた配列を低コストで試すことができる。SU120を使ったキーボード製作で一番手軽なのはオーソリニア(格子配列)で、特にSU120のデフォルトである5列3行+3キーにおさまるならばビスケットは使わないし、キーマトリクスの配線もいらなくなる。

一方、SU120でロースタッガードやカラムスタッガードのキーボードを作ろうとするとけっこう大変だ。SU120の基板を行ごとや列ごとにいったん分割した上で、ビスケットやキーマトリクスの配線でつながなければならない。これは細かなパーツを扱うため思った以上に手間と時間がかかった。

そもそもビスケットを留めるねじを100本使い切るような複雑なものはSU120を使わず、事前にキー配置を十分に検討した上で基板を発注するのがいいのかもしれない。

ロースタッガードのキーボードなら数字キーとアルファベットキーの配置は共通だろうから、そこを1枚にまとめて左右分割したようなSU120があるとだいぶ手間が減る。需要がどのくらいあるかわかりませんが。カラムスタッガードは列のずれ方がキーボードごとに異なっていて共通化は無理かも。

今後やりたいこと

キースイッチをはめ込むトッププレートがないのでキーがぐらつくし、上から見ると微妙なずれがある。そのうちに3Dプリンタか、アクリルカットサービスを使ってトッププレートを作りたい。そしてそれを納めるケースも作りたい。

ガスケットマウントのキーボードケースの作例
60%キーボードのケースを頑張って3Dプリントする - ロードヒポキシス

ケースを少しだけモデリングしてみたけど、最終的にどうなるかは自分にもわからない。

遊舎工房で調達した白い親指キーは普通のSAプロファイルのキーで、キートップの中央部がへこんでいる。ここが盛り上がっているコンベックスのキーは先述の「Majestouch用かまぼこ型キーキャップ」を買ってもよいが、普通のキーのへこみにレジンや軽量粘土を盛ってお手軽にコンベックス化できないかなとも思っている。

今回のキーボード製作でキー配置とキーアサインを現物で検証できるようになった。実用になるところまで来たら次は基板製作に挑戦したい。ちょうど昨日、キーボードを異常なハイペースで次々に設計しているサリチル酸さんが「GL516 デザインガイド」でオリジナル基板の詳しい作り方を公開してくれた。

紹介記事
65%汎用キーボードケース「GL516ケース」のデザインガイドを公開したよ! - 自作キーボード温泉街の歩き方

これと「自作キーボード設計入門」「自作キーボード設計入門2」で勉強すれば基板を設計して発注できるはず。


関連記事

自作キーボードについて(一部)

そのほかはこのブログの[キーボード]カテゴリをどうぞ。自作キーボード以外の話も出てきます。

自作キーボード/キーボードAdvent Calendarの歴史

この記事を書くのに使ったキーボードは、そんななので相変わらずTK-FBP044でした。来年こそは。

明日のキーボードAdvent Calendar 2021(#2)の記事は銀鮭さんの「VRとキーボード、入力デバイス」です。

追記

2年後、自分で基板を設計したキーボードが完成した。