Googleの湯呑みキーボードを作ってみよう
こんにちは。最近キーボードにハマっています。今回はGboardのエイプリルフール企画のキーボード(現在は10/1の企画)である湯呑みキーボードを作っていきます。
この前、渋谷のGoogleのオフィスに行ったときに本家の写真も撮らせていただきました。
準備
発注
ということでGitHubに公開されている回路を発注していきます。ガーバーファイルに書き出してJLCPCBにアップします。14ドルくらいで安いですね。
ついでにKailhのロープロスイッチとキーキャップも注文しておきます。トータルで大体1万円くらいですかね。
組み立て
基板が届きました。親の顔ほど見た青い箱です。キースイッチも届いたので早速組み立てていきましょう。
治具の作成
今回作成する湯呑みキーボードは形状が特殊で、短冊状の基板を横に繋げていき、円柱を作ります。その際に30度で短冊基板同士を固定していく必要があり、治具が必要です。治具も公開されているので3Dプリンターで印刷します。
この間に基板を差し込んではんだ付けをします。しかし途中でこれだけでは不十分だと気づき、治具の治具を作りました。
この治具の問題点は軽いことです。ある程度作業が進むと片方の固定する基板が重くなり、自立しなくなります。したの画像は4本目をはんだ付けしようとしているところですが、これでも結構不安定で奥側に倒れてしまいます。
なので治具の治具を印刷しました。
簡単に作りましたがまあいい出来です。真ん中に穴が空いてるのはフィラメントの節約&キースイッチの干渉を防ぐためです。
ちなみにこれはversion2で、作業動画にversion1の穴の空いていないバージョンもあります。
はんだ付け
所要時間は3時間程度ですかね。正直表面実装などはないのに骨が折れました。基板同士を立体的に保持し、はんだ付けしていくというのはなかなか大変な作業です。
それぞれの工程をざっくり解説します。
スイッチ基板(短冊状)
まずは短冊みたいな基板です。スイッチが直接はんだ付けされるので、ダイオードと共にサクサクつけていきます。この際に切ったダイオードの足は捨てないで取っておきます。後で基板間の接続に使います。
キーの数は5switch x 12列なので60個です。表面実装じゃないだけ楽です。表面実装は難しいというより、集中力が厳しい。
基板同士のはんだ付け スイッチ基板
そしたら次は先ほどのスイッチ基板同士を接続します。治具で固定し、スイッチ基板同士を角度をつけてはんだ付けします。固定の役割と回路的役割を持ちます。正直このタイプの使い方は驚きました。まあそんなに負荷がかからないし問題ないのでしょうが、あまり見ない方法なので感心しながら行いました。
この作業の反省点としては遊びを作らないではんだ付けをしたことです。基板間の導線を短くしすぎてしまったため、あとから基板同士の角度を多少調整することができなくなりました。途中からそれに気づき、長めに取るようになりました。
基板同士のはんだ付け Pro Micro
スイッチ基板同士のはんだ付けが終わったら、次はこの円筒の基板を蓋の基板とはんだ付けします。円形の基板にPro Microが乗っかります。
これまた笑えるくらいに90度のはんだ付けが待っています。普通にピンヘッダ使うんだと思ってましたが、多少の誤差を許容できるという点で導線で固定&回路の役割というのはある程度理に叶っています。
ファームウェア
GitHubに上がってるfirmware.inoを利用して書き込んでみます。
準備
まずArduino IDEをダウンロードします。高校ぶりくらいにこのアプリ入れました。当時とあまり変わりなく、微妙に使いづらいところに懐かしさを感じます。
今回のコードを開いてみます。
ヘッダーファイルが必要なのと、今回使うのがPro Microなので2行目のコードのコメントアウトを外します。
ヘッダーファイルを入れていきます。
Tools > Manage Libraries…
Library Managerが出たらKeyboardを検索。
Keyboardを入れたらアプリを再起動。
書き込み
Boardを今回使うPro Microに合わせてArduino Microを選択。Portを指定していきます。Pro Microを接続する前後で新しく出てきたPort選べばOK。
今回のPro Microは遊舎工房さんのtype-C Pro Microです。
書き込みに成功したら実際にボタンをおしてみます。U+002Bとかそんな感じの出てたら成功です。
実際に使っていくためにGoogle日本語入力を導入します。
次に認識されるキー配列をJISにします。MacではSettings > Keyboard > Change Keyboard Type…から設定できます。
ではGoogle日本語入力をIMEで選択し、入力してみます。
概ね順調です。テンプラしている配線などがないかは後ほど調べます。
完成
キーキャップも届いたので一旦完成です。
面白いですね。一番面白いのがファームウェアで、直接Unicodeをキー側で入力してくれて、それをGoogle日本語入力側でエンコードしているんですね。キーボードから直接漢字を送れないのは知っていたのでどうするかと思ってましたが、想定より全然パワーのあるソリューションでした。
次に面白いのがはんだ付けです。見た目からして直角の接続部分とかどうしてるんだろうと思ってましたが、全く予想を裏切る形ではんだ付けだけでそこを解決しています。作ってて「あ、これってアリなんだ…」みたいな気持ちになりました。実際のところキーの列で基板になっているので結構汎用性が高く、これでもう少し遊んでみようと思いいます。基板自体の所感としてはフレキシブル基板を列に使えばもう少し作りやすかったかなと思いました。そのほうが薄いですしね。
毎年Gboardの物理キーボードを楽しみにしています。今年は裏表のないキーボードだそうです。でかいですね。時間があったら作ってみます。
この記事が気に入ったらサポートをしてみませんか?