Ergo Dash mini Build Log

2019/09に自作キーボードの第一歩としてErgo Dash miniを組み立てた.

自作キーボードへの動機

キーボードとしてFILCOMajestouch MINILA US67キー 黒軸を使用していたが, チャタリングを起こしたり, Bluetoothが繋がらなくなったりしたため, 後継機を探し始めた.

Majestouch MINILAの特徴としては, FunctionキーやHome, PgUp等のキーが単体で存在せず, Fnキーと他のキーの同時押しで入力できるようになっている. そのため, 通常のキーボードよりもキー数が少なく, サイズも小さいため, 整備や取り回し安いという利点があった.

その利点から考えると後継機の候補がHHKBとなったが, スペースキーが大きく親指が殆ど活用できない点や, カーソルキー, 価格が難点だった. また, 左右分割型のキーボードを試してみたいという好奇心もあったが, 市販されている左右分割型は種類が乏しかった. 一応, 解としてHHKB2台持ちという手もあるが, そちらはサイズと価格が……

そんな中, 自作キーボードを見てみると左右分割型の種類が豊富にあることを知った. 更に, 後からキーマップを好きなように組み替えることができるらしい.

これこそ, 己の求めるキーボードに違いない!. 以前から少々気になっていた自作キーボードの沼だったが, builderscon 2019の余韻もあり, この沼に肩まで浸かる決意をした.

キーボード構成

本体: Ergo Dash mini(親指有り)

左右分割型で, 56~58キーのキーボード. 親指周りのレイアウトを変更することができ, それによってキー数が56~68キーと変動する.

選択した理由としては, 左右分割型であり丁度良いキー数であったためだ. キーマップ設定を活用して, Functionキーと数字キーを削った構成にすることは決めていたが, いきなりキーを減らしすぎると支障をきたすのでは……と躊躇してしまった.

キースイッチ: Kailh BOX スイッチ (黒)

遊舎工房に展示されているキースイッチテスターを触って, 今まで使っていた黒軸に近い感触だったこれに決めた.

キーキャップ: MDA ORTHO VoIDの無刻印版

無刻印のキーキャップとしたのは, キーマップを弄り回すことが前提なので, キーマップを変更するたびにキーキャップを変えるのは面倒だと考えたからだ. また, Fullキーボードを作る予定はないので, 他に使い回せないFunctionキーや数字キーが刻印されたものが溜まっても困るという事情もあった.

MDAの無刻印版は希少だと遊舎工房のSHOPにかかれていたが, これ以降MDAの無刻印版が見つからずにいる……

TRRSケーブル 1m

左右分割型の, 左右を接続するためのケーブル.

端子の形状は普通のオーディオケーブルだが, 4極(TRRS)に分かれている. 3極(TRS)や2極(TS)のケーブルはオーディオ用品としてよく見るが, 4極はあまり他で見ないし売っていない.

使用機器

キーボード作成に遊舎工房の工作室(500円/2h)を活用する手もあったが, 自作キーボード沼に浸かる覚悟を決めたからには工具類を自前で揃えることにした.

他のbuild logを見たりしながら, 次の工具を揃えた.

温度調節機能付きのはんだこては少々値が張ったが役に立った. 以前に実験ではんだ付けした際は, 水入りスポンジに押し付けたはんだこての音から, 勘で温度調節するしかなかった. 今回は工具が温度調節してくれるので, 格段に楽になった.

キーボード1台だけのためにと思えば値が張ったが, これから自作キーボード沼に浸かって保守したり, 2台目,3台目を組んでいくと考えればこれくらい……

組み立て

ビルドガイドが公開されているので基本的にはそれに従えば良い.

結構複雑そうに見えて尻込みしていたが, 複雑なのはLEDを光らせる場合にのみ必要な作業だった., そのため, LEDを点けないのであればそんなに難しくはない.

ダイオード

キー1つに対して, ダイオードを1つ設置する. リードベンダーのおかげで, 簡単かつキレイにダイオードの足を規定の長さに折り曲げられるので便利だった.

はんだ付けは, 一気に付けようとしたら足が干渉して作業がし辛いので, 3~4個づつ付ける戦略で進めることにした. 作業自体も, 温度調節機能付きのはんだこてのおかげで, 基盤の穴にガンガン流し込む感じで進んでいった. ただし, はんだ付けのために裏返す度に, ダイオードがズレたり浮いたりするので, マスキングテープで止めると良さそうだった.

ダイオードと基盤
ダイオード取り付け

TRRSジャック & リセットスイッチ

裏面の素子取り付け後

Pro Micro

もげ対策

Pro Microのmicro USB端子がよくもげると聞いたので, その対策としてMicro USB端子の根本をエポキシ樹脂で補強した. それでも, もげるときはもげるので気休めに近い. (ケーブルを引っ掛けて机から落とした際に, USB端子の部分から着地してMoge Microになってしまった……)

入っては行けない箇所にエポキシ樹脂が入ると困るので, マスキングテープで予め塞いでしまうのが良さそうだった.

コンスルー接続

表裏に注意する. 最初に逆向きに取り付けそうになってしまった.

はんだ付けする穴が小さく密集しているため, はんだ付けの難易度が高いと思っていたが. 付ける箇所をはんだこてで加熱することを心掛けさえすれば, はんだが自然に流れていくので, 思ったよりも簡単だった.

firmwareのbuild&install

Arch Linuxの環境でfirmwareを作成して, Pro Microにinstallした.

環境に手を加えたくなかったので, dockerを使用してfirmwareのbuildを行った.

  1. Pro Microを基盤に付ける
  2. git clone https://github.com/qmk/qmk_firmware.git
  3. cd qmk_firmware
  4. make git-submodule
  5. firmwareを書き込む対象のPro MicroをPCとUSB接続する
  6. sudo ./util/docker_build.sh ergo_dash/mini:default:avrdudel
    • Detecting USB port, reset your controller now...と出たら, 基盤のリセットスイッチを押す. 後はそのまま待つだけでfirmwareの書き込みが終了する
    • sudoを付けないとfirmware書き込みがWaiting for /dev/ttyACM0 to become writable....から進まなかった

submoduleの存在に気付かずに無駄に試行錯誤したが, build環境が整えられているのでgitとdocker環境さえあれば簡単だという印象だった

導通確認

この段階までいけば, はんだ付けとfirmwareがうまくいっているか動作確認ができる.

キースイッチの代わりにテスターや導線で繋げば, 擬似的にキーが押された状態にすることができる. そうすれば, 実際のキーボードからの入力を見たり, Key Testを使って, 今までの作業に問題がないか確認することができる.

キースイッチ

アクリル板を間に挟んで, 基盤とキースイッチを設置する.

その際に, 親指周りのレイアウトを決めスタビライザーを事前に設置する必要があったが, どのレイアウトがにするか悩んでいたことろ, この記事を見つけた.

サイレントでホットスワップなErgoDash miniを制作(後編) - cats cats cats

この記事では, Mill-Max ソケットを使って, キースイッチを後で交換できるように(ホットスワップ)対応していた.

2Uのキースイッチだとスタビライザーがなくても問題ないことを確かめた後,
配置変更可能な箇所(片側で16箇所)全てにMill-Maxソケットを付けて, 後からレイアウトを好きなように変更できるようにした.

一度, はんだ付けの際にMill-Maxソケット内にはんだをいれてしまい, スイッチとソケットを1つダメにしてしまった. 基盤から取る際にも非常に苦労したので, 横着せずにマスキングテープで塞ぐといった手段を採るべきだった……

キースイッチ取り付け後

ここまでいけば実際にUSBケーブルで繋いで, キーを押して反応するか動作確認できる. 1つ反応しないキーがあって焦ったが, 単なるはんだの付け忘れだったので事なきを得た.

外装 & キーマップ

後は外装のアクリル板をネジ止めして, キーキャップを付ければキーボードとしての体裁が整う.

f:id:astatine85:20200721002348j:plain
Ergo Dash mini 完成図

使用感

左右分割型として

初めての左右分割型のキーボードがこのErgo Dash miniとなったが, 初めは戸惑うことが多かった.

左手側のキーの並びは直ぐに身についたが, 右手側のキーの並びは通常と反転しているので, 違和感が強かった. 特に, 右手で打つか, 左手で打つか曖昧だったキー(特にY, B)が左右どちらにあるか, 瞬時に判断できるようになるまでに時間がかかった.

だがそこは慣れの割合が大きく, 一月ほど経つと慣れてしまうと問題なくなった. 次第に, 今までSpaceキーを押すくらいしかしていなかった親指が活用できる利点が大きくなってきた. EnterやBackSpace, Layer切替を親指に割り当てたことで, 小指で打つ量が減った. 小指よりも親指の方が移動距離が短く精度が高いので, 結果的にキーを打つのが速く・楽になった.

物理的な面でも, キーボードが左右に分かれるようになったことで, 移動や持ち運びがしやすくなり取り回しが良くなった.

40%キーボードとして

Functionキーが単体で存在しなくても問題ないことは, 既にMajestouch MINILAで実証済みだったが, 数字や記号のキーが単体で存在しなくなっても特に問題がなかった. 問題が出てきたら出てきたで, キーマップを弄って使いやすい箇所に持ってきて問題を消すことができる.

ただし, パスワードを打つ際の成功確率が下がり, 最初は緊張するようになってしまった. 最初は左右分離型に慣れないためにアルファベットをtypoしたり大文字にしそこねたりしたが, 数字や記号の入力ミスはなかなか解消されずにいる. 同時押しが関わるので, 今でもパスワードを早く打とうとすると失敗することもあるが, 落ち着いて打てば問題ない程度には改善された.

左右分割だと肩こりが改善されるという話があったが, 確かに肩が痛むことは減ったように感じる. ただし, 左右分割であることよりも, 40%キーボードにしたことの方が主な要因だと思われた.

キーボードの最上段が消え, 横幅も小さくなったために, 手を机に接地させたまま作業ができるようになった. 今までは遠くにある数字やBackSpace, ESCキー, カーソルキーのために手を浮かせざるを得なかった. そして気付かぬうちに肘も手のひらも浮き, 肩だけで手を支えている状態になってしまっていた.

だが, 40%だとキーが集約しているので, 手のひらを付けたままでも全てのキーに無理なく指が届くようになった. そのため, 手のひらが接地している状態をデフォルトの状態にすることができた.

キーマップのカスタマイズ

アルファベットはQWERTY配列から弄っていないが, 数字や記号の配置は最初から大きく変えた. 最初は, デフォルトのキーマップから変えたらキーの配置が分からなくなりそうだと恐れていたが, 一度キーマップを変えてしまえばそれは杞憂だと分かった.

その後は自分の使いやすいように改造し続けている.

  • CapsLockを追いやる
  • テンキーのように数字キーを片手に集める
  • 4種8個の括弧(()[]<>{})を一箇所に集める
  • VimのためにESCキーを親指近くにもってくる
  • hjklをカーソルキーに割り当てる

Ergo Dash mini

最初は58キーで少なくないか不安だったが, 問題なく使えている. レイヤー切り替えとキーマップのカスタマイズ機能は強力で, 少し押しにくいな……と思ったら即座に使いやすい手元に持ってくることができる. その結果 , キーマップをカスタマイズするにつれ, 殆ど使わないキーが出てくるようになった.

特に, 親指側の一番奥は構造上, 手を浮かせたり, 親指を回り込ませたりしないと押せない箇所になってしまった. 使おうとしても, 手前のキーと同時押しになってしまうので, そこはどうしても使えないキーとなってしまった. 観賞用にArtisan Keycapで飾って眺めるには丁度良いかもしれないが……

f:id:astatine85:20200721002404j:plain
キーの使用頻度

こうして, もっとキー数が少ないのも試してみたいなぁと, 2台目に手が延びていく……