TOTEM(自作キーボード)を作ってみた
TOTEMとは、BT対応の分割自作キーボード。ミニマルなワイヤレスキーボードを探し求めている諸氏にはピッタリ!(なはず)
自作キーボードでもケーブリングからの解放!…が手軽に実現できてしまう逸品です。
重さは2台あわせて221g。スタイリッシュなデザインで、ポケットに入れようと思えば入るぐらいの薄さです。
ケース裏はキーソケットが露出している分薄くなっており、キースイッチがきちんと差し込めているかのチェックもしやすくなっています。
その分デリケートな作りであり、キッズのポケモンキーボードに対するような取り扱いをしようものなら、早晩寿命を迎えるでしょう。
130mAhのリチウムポリマーバッテリーを内蔵しており、概ね一週間程度はもつ感じです。USB-Cで充電できます。工夫すればもう少し容量の大きいバッテリーを積むこともできそうです。
BTは左右の電源を入れて、左側と端末をペアリングすれば、右側は勝手に左側と繋がるようです。マルチポイントで5台まで同時接続できます。
これ一台あれば、スマホ、タブレット、ノートPCを持ち歩いて、出先で使用したいときも手元の操作一発(物理キー)で端末の切り替えができてしまいます。BTで接続していても、キー入力の遅延は全く感じられません。
端末切り替えもほぼ一瞬!
こちらの動画を見れば、製作の大まかな流れやサイズ感、使用感などざっくり把握できるはず。
製作に必要な部品たち
XIAO BLE というマイコンを利用して、BT接続やUSB-Cでの充電を比較的シンプルに実現しています。
XIAO BLE Senseという1000円ほどお高い製品もあり、どちらを使うべきか迷ったりもするのですが、無印(XIAO BLE)の方でOKです。
キットを購入すると、マイコンも2つ同梱されているのですが、ケースとあわせて$250ぐらい。別途キーキャップとキースイッチが必要となり、思ったより高価です。※現在のレートで概ね3.8万円ぐらい。
海外のこの手のプロダクトは、PCBやケースのデータや必要部品の型番等々、製作に必要な部品が全て公開されていることが多いようです。太っ腹ですね。
部品等を自前で調達した場合、1.5万円前後で揃う感じです。自分の場合、基板を安価に譲っていただいたり、ケースやキーキャップを3Dプリンタで造形したので、1万円前後で済みました。
PCBは公開データをそのままJLCPCBに入稿。一番送料を安く設定すると、最低ロットの5枚で$25ぐらいになるようです。5人集めれば安価に基板を調達できます。
ケースのデータも公開されていて、3Dプリンタで造形しました。キートップとの一体型となっており、全体としてとてもスリムな仕上がりです。こちらもJLCPCBの3Dプリントサービス等を使えば$10程度で請け負ってもらえるようです。
リチウムポリマーバッテリーはこちらを二組。
キーソケットはこちらを40個分。
キースイッチはKailhのロープロファイルスイッチをAmazonで購入
3個足りないので、手持ちで余っていたchoc v1スイッチで不足分を補いました。
こちらも候補でした。(キーソケットと同じショップで買えるので)
キーキャップについてはPrintablesという3Dプリンタのデータ共有サイトでよさそうなものを見つけて、造形しました。
作例のままだと多少違和感があったので、親指部分の左右はこれと、反転したものを配置。
親指部分の真ん中はこれ。
残りはリンク先の作例通りです。角度がついていない市販のchoc v1対応キーキャップと比べて、思っていた以上に打ちやすくなりました。
その他、細かい部品はAliexpressで買い集めています。納期が一ヶ月前後かかるものもあるので、とりあえず発注して気長に待つ感じでした。
・SMDダイオード
・スライドスイッチ
・マイクロタッチスイッチ
・スペーサー
組み立て
公式のビルドガイドがかなり丁寧なので、手順通りに作業していけば、特に問題ありませんでした。
チップダイオードの場所がほぼ一箇所に集中しており、自分的には作業しやすい基板です。
苦労しそうだと思っていたXIAO BLE のはんだ付けも、フラックスを塗って、3C型のコテ先にハンダを盛って側面を軽くなでてやるだけで簡単に溶接できてしまいました。
バッテリー接続については、こちらを参考にさせて頂いています。
これも、電極を間違えなければ大丈夫。Lipoバッテリーの充電制御基板などを間に挟む必要もありません。(XIAO BLEに内蔵されています)
以上のように、非常に作りやすい基板にはなっているのですが、Keyballなどと違ってOLEDが搭載されていないため、ハンダ付けが不完全でうまく動かない場合などのデバッグは大変かもしれません。
あと、LEDが一つも搭載されておらず、電源のオンオフは物理スイッチ頼み、BTやバッテリーの状況に至っては接続してみるまで分からない、、という仕様です。初心者にはあまり向いていない自作キーボードではあるのかも知れません。
ZMKの設定など
TOTEMではQMKとZMK、どちらでも使うことができます。ただ、BTを使いたいならZMK一択。
こちらの手順に従ってファームウェアをダウンロードして、TOTEMに書き込みます。
キーマップについては、remapほど便利な環境は整っていませんが、GUIで設定すること自体はできます。
慣れれば操作はそこそこ快適です。ただ、自分のgithubのアカウントと連携する必要があったりはします。
こちらのGUI上でキーマップを保存すると、github上のconfigに上書きされて、数分後に自動でファームウェアが生成されるような仕組みになってます。で、そのファームウェアをTOTEMに書き込むことでキーマップを反映します。
Remapよりもイケてるなーって思うのは、COMBOS(同時打鍵)に対応している点。
BTのプロファイル選択も1-5までこちらで定義していたりします。
自分の場合、Timeoutを32ms(格闘ゲームで言うところの約2F)程度にしておくと、通常打鍵でCOMBOSが誤作動することが、ほぼなくなり快適に使えています。
BT接続
左右のTOTEMの電源を入れた上で、普通にペアリングすればOKです。
基本的に、左TOTEMと端末が接続されます。
※右TOTEMは左と自動で接続するようです。
右の電源を切ったまま左だけをペアリングしてしまうと、その後、右が使える状態に持っていくまで、思いの外苦労する場合があるので注意です。(意外とハマりポイント)
BT接続がうまくいかない場合、設定リセット用のファームウェアを書き込みつつ、再度TOTEMのファームウェアを上書きした上でBT接続を試みると解決する場合があります。※下記を参考にさせて頂きました。
収納方法(おまけ)
多分この収納方法はあんまりよろしくない[※]けど、コンパクトに持ち運べることを重視した結果このように落ち着きました。
※キースイッチのバネが縮んだままになるので、おそらく寿命は短くなってしまうのと、キースイッチがオンになったままなので、電源を入れたままにはできず、運用が少し面倒になります。
やり残したこと
TOTEMではキースイッチが Choc v1のみ対応となっています。Choc v1は薄型かつ安価で入手しやすくはあるのですが、どのスイッチを選んでも正直打鍵感はそこまでよくありません。(好みの問題はあるものの・・・)
同じ薄型のスイッチでこちらのキースイッチ(特にGhost)が界隈で非常に高評価だったりします。
残念ながら規格が違っており(Choc v2に近い規格)、TOTEMでは利用できないのですが、調べてみたところ、どうやらピンの位置は Choc v1とほぼ同じ。ただ、基板側の穴を4.8mmに広げる必要がありそう。
基板の穴(38箇所)にステップドリルを突っ込んで、一つ一つ広げるか、PCBのデータを加工してJLCPCBに入稿するか。。前者は断線するリスクもあるだろうし、後者をやるぐらいなら似たようなオリジナルのキーボードを作りたいなーーとか思ってみたり。
あーーー。ステップドリルで広げたら絶対断線する…。