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

ThumbShift5-15TB組み立てのためのサポートページ

自分で設計したキーボード、ThumbShift5-15TBを組み立てるための情報を簡単にまとめました。

ThumbShift5-15TBの特徴

数字キー列やファンクションキーなどを省略したコンパクトな59キーキーボード
組み立ての工数を減らすため、数字キーの列やファンクションキーなどを省略しました。これらは特定のキーを押しながら入力します。
親指シフト入力に適したキー配列
親指部分にいわゆる「B割れ」のキーを配置しており、親指シフト入力に向いています。
一般的なロースタッガード配列のため移行コストが低い
一般的なキーボードの配列を踏襲しており、このキーボードに慣れるための練習が少なくすみます。
Cherry MX、Choc V2(Lofree FLOW含む)に対応
幅広い種類のキースイッチを装着できます。
キーキャップを調達しやすい
日本語キー配列の自作キーボードは英語配列に比べてキーキャップの調達が難しいですが、FILCOのMajestouch用に販売されている日本語キーキャップセットがあれば追加で調達するキーは7個ですみます。

ThumbShift5-15TBの購入方法

BOOTHなどの販売プラットフォームはありませんので、Twitter(現X)の@yimamuraなどへ連絡してください。価格は現在、以下の3枚の基板のみで2,000円としています。

3枚の基板について

スイッチプレート

トッププレートと呼ばれることもあります。キースイッチを物理的に固定するためのプレートです。画像右上の細い穴は、Majestouchが採用しているCostarのスタビライザーを装着する想定でしたが、穴の位置をミスしているため使えません。ご了承ください。


メイン基板

電子回路が組み込まれた基板です。ダイオードやスイッチソケットなどはここにはんだ付けします。


ボトムプレート

キーボードの底面になるプレートです。穴はタクトスイッチを押すためのものです。


基板のほかに必要なパーツ

キースイッチ(59個)
Cherry MX互換とChoc V2、Lofree Flowに対応しています(Gateron Low Profileには非対応、Choc V1はスイッチは対応していますが日本語キーボード向けのキーキャップセット、特にISO Enterキーが存在しないため非推奨です)
キーキャップ(59個)
Cherry MX互換のキースイッチを使う場合、FILCOの日本語用交換キーキャップに加えて1.25U×3、1U×4を使います(1Uについては、FILCOのキーキャップから余った部分を流用する方法もあります)。FILCOのキーキャップはOEMプロファイルです。親指シフトキー部分に使うとちょうどよい1.25Uの「かまぼこ型キーキャップ」もFILCOの通販で買えます。Choc V2などロープロファイルのキースイッチを使う場合、OEMプロファイルのキーキャップは底打ちして(キースイッチが押し込まれきる前にキーキャップがトッププレートに当たってしまう)使えないようです。ロープロファイルキースイッチの場合はWomierやXVXなどのロープロファイルキーキャップを検討してください
Pro Micro(1個)
USB端子の形状はmicroUSB、Type-Cのいずれも可です
タクトスイッチ(1個)
2ピン、3.5×6×4.3ミリの一般的なものです
ダイオード(59個)
1N4148であればリードタイプ(スルーホールタイプ)、表面実装タイプ(SMD)のいずれも可です
LED(オプション)(1個)
SK-6812MINI-E。なくても動作しますが、キーボードに通電しているかの確認にとても便利です
キーソケット(59個)
Cherry MX互換用とChoc用のうち、使用したいキースイッチに合わせて。キーボードを組み上げた後に、もう一方を追加ではんだ付けすることも可能です
ねじ(8個)
M2の5ミリ。低頭ねじを推奨。遊舎工房の場合:スリムヘッド小ねじ M2 黒
スペーサ(4個)
M2。長さ11ミリで組み上げましたが、Pro Microに接続するUSBケーブルのコネクタ形状によっては9ミリ、さらにキースイッチがChoc V2やLofree Flowであれば8ミリでもいけそうです。スペーサが短いほどキーボードを薄くできます。遊舎工房の場合:黄銅スペーサー(丸)M2/11mm
AZ1UBALL(オプション)(1個)
現在のファームウェアでは正しく機能しません。パレットシステムのBOOTHで購入できます:AZ1UBALL【5.3mmトラックボール】
AZ1UBALL用ピンソケット(オプション)(2個)
2.54ミリピッチ、4ピン。高さは3.5ミリなど低いものがよいです。AZ1UBALLを基板に直接はんだ付けしてもかまいませんが、ピンソケットで接続すれば後日AZ1UBALLを交換できます
USBケーブル(1本)
キーボードとパソコンを接続するケーブルです。端子の形状はPro Microと、接続するパソコンのUSB端子に合わせます
ゴム足(オプション)(4個~)
キーボードの裏側に貼り付けてすべり止めにします。

組み立てのおおまかな手順

詳細なビルドガイドではありません。それぞれの工程を初めて行う方はほかのキーボードのビルドガイドも参考にしてください。

スイッチプレートとボトムプレートの横を黒く塗ります(このひと手間で見栄えがよくなります)

写真ではタミヤのペイントマーカーX1を使っていますが、塗ったところに少しだけべたつきが残ったためほかのマジックを推奨します。
Pro Microにコンスルーをはんだ付けします

コンスルー(スプリングピンヘッダ)の取り付け方を教えて下さい – 遊舎工房サポートサイト」や「Pro Micro | Daily Craft Keyboard」を参考に、コンスルーの向きに注意してはんだ付けしてください。その際、Pro Microの基板の裏側に飛び出した部分は上の写真のように、ニッパーで切り落としてからはんだ付けするのが望ましいです。ニッパーは切り落とした部材が飛んでいかないタイプを推奨します。
はんだ付けが終わったPro Microはいったんメイン基板から外しておくと、続く作業の邪魔になりません。コンスルーの挿抜には(同一スルーホールに対して)50回の制限がありますので、必要以上に抜き差ししないのがよいでしょう。
LEDを基板にはんだ付けします

4つある端子のうち、切り欠きがある端子を「Gnd」に合わせてはんだ付けします。LEDは熱耐性が低いので、手早くはんだ付けしてください。
ダイオードをメイン基板にはんだ付けします

ダイオードには向きがあります。この基板では、すべてのダイオードを同じ向きではんだ付けします。リードタイプのダイオードを使う場合は「ダイオード(スルーホール) | Daily Craft Keyboard」を、表面実装タイプのダイオードを使う場合は「ダイオード(表面実装) | Daily Craft Keyboard」を参考にしてください。
AZ1UBALLにピンヘッダをはんだ付けする準備

AZ1UBALL用のピンソケットをメイン基板に差し込み(ここではピンソケットははんだ付けしません)、基板側からピンソケット-ピンヘッダ-AZ1UBALLの下の基板という順に重ねます。この際ピンソケット側のピンヘッダについて、ピンが短くなるように(写真では上方向に)ピンをずらすと、完成時のAZ1UBALLの高さを低くできます。上の写真は少しずらしてあり、ピンが上方向にやや長く飛び出ています。AZ1UBALLの基板の側に飛び出ているピンヘッダはニッパーで切断します。
AZ1UBALLにピンヘッダをはんだ付けします

AZ1UBALLの下の基板にピンヘッダをはんだ付けします。
メイン基板にAZ1UBALL用のピンソケットをはんだ付けします

AZ1UBALLをマスキングテープでメイン基板に固定し、メイン基板を裏返してピンソケットをはんだ付けします。写真はピンソケットをはんだ付けし、AZ1UBALLをいったん取り外した後の状態です。AZ1UBALLはこのあたりで組み立てておきましょう。
スイッチソケットをメイン基板にはんだ付けします

はんだ付けの方法は「キースイッチソケット(MX) | Daily Craft Keyboard」と「キースイッチソケット(Choc) | Daily Craft Keyboard」を参考にしてください。写真ではCherry MX用とChoc用の両方のスイッチソケットをはんだ付けしていますが、使うキースイッチの種類がどちらか一方なら、それに合わせたスイッチソケットだけはんだ付けしましょう。キーボードの完成後に、もう一方のスイッチソケットをはんだ付けすることも可能です。
タクトスイッチをメイン基板にはんだ付けします

タクトスイッチはリセットスイッチとして機能します。メイン基板にタクトスイッチを差し込む際の表と裏を間違えなければピンの向きは任意です。写真では足を伸ばしたままはんだ付けしていますが、足を折り曲げてからはんだ付けするのが望ましいです。
トラックボールユニットとキースイッチとキーキャップとPro Microを装着して、ボトムプレートをねじ止めします

まずトラックボールユニットをメイン基板に装着します。次にキースイッチを、ピンの向きがメイン基板の穴に合うよう注意しながらスイッチプレートの四隅に装着します。メイン基板にスイッチプレートを重ね、4つのスイッチを差し込みます。これでスイッチプレートとメイン基板がずれなくなります。すべてのキースイッチとキーキャップを装着したらPro Microをメイン基板に装着します。続いてトッププレートにスペーサをねじ止めし、ボトムプレートを穴からタクトスイッチを押せる向きでねじ止めします。これで完成です。お好みで裏面にすべり止め用の小さいゴム足をつけてもよいでしょう。

ファームウェアの書き込み

ThumbShift5-15TBの標準ファームウェアを以下からダウンロードします。

以下は過去のファームウェアです。

Pro Micro Web Updaterのページへアクセスします。

以下の記事の「2.Pro Micro Web Updaterを開く」以降に従い、ThumbShift5-15TBのファームウェアを指定してflashします。「4.書き込み」の「キーボードをPCと接続します」の部分は、キーボードをすでにPCに接続していればキーボードのタクトスイッチ(=リセットスイッチです)を押すのでもかまいません。

標準ファームウェアでは以下のキーアサインとなっています。


キーアサインの変更

ファームウェアのソースリストは準備中です。後日追記します

キーアサインを変更するにはファームウェアのソースリストのうち、キーアサインが定義されているファイル「keymap.c」の内容をテキストエディタで書き換え、QMK MSYSでコンパイルとキーボードへの書き込みを行います。(標準ファームウェアは現在、VialRemapには非対応です)

QMK MSYSのインストールは以下を参考にしてください。

「thumbshift515tb」という名前でキーボードを追加します。QMK MSYSで以下のコマンドを入力します。

qmk new-keymap -kb thumbshift515tb

「thumbshift515tb」フォルダが、「qmk_firmware」-「keyboards」フォルダ内に作られます。ThumbShift5-15TBのファームウェアのソースリストを「thumbshift515tb」フォルダ内に上書きします。

「keymap.c」を編集してキーアサインを変更したら、QMK MSYSで以下のコマンドを入力します。

qmk flash -kb thumbshift515tb -km default

ファームウェアコンパイルについてのメッセージに続いて「Waiting for USB serial port - reset your controller now (Ctrl+C to cancel)」と表示され、続いてピリオドがポツポツ出始めたらキーボードのリセットスイッチ(タクトスイッチ)を押します。

これで新しいキーアサインでThumbShift5-15TBを使うことができます。

現在の問題点

親指シフト入力はソフトウェア側で

ThumbShift5-15TBは親指シフト入力を想定したキーボードですが、このキーボード単体では現状、親指シフト入力はできません。作者はWindowsでは「やまぶきR」を使って親指シフト入力しているものの、これは最新のMicrosoft IMEで正しく動作しません。

将来的には「QMKで自作キーボードを親指シフト/薙刀式へ拡張する - weblog.sy」を参考にするなどして、このキーボードをどんなデバイスに接続しても親指シフト入力できるようにしたいです。

AZ1UBALLの動作

現在のファームウェアでは、AZ1UBALLが正しく動作しません。マウスポインタが90度ずれて動くため、トラックボールを上へ転がすと右へ、右へ転がすと下へマウスポインタが移動します。

QMK Firmwareには「マウスポインタの移動方向を90度回転させる」というコマンド「POINTING_DEVICE_ROTATION_90」もありますが、これをyesにしても状態は変わらず原因が不明です。

AZ1UBALLの初期不良の可能性もゼロではありませんが検証できていません。

将来的には「トラックボール付き自作キーボードをさらに使いやすくするファームウェア 【Keyball】【cocot46plus】」を参考に、トラックボールを少し動かすと特定のキーがマウスボタンになる機能を実装したいです。