光るクリスマスツリーキーボードを作ってみた
ふとtwitterを眺めていたら、遊舎工房代表のないんさんがこんな呟きを。
最近、新しいキーボードを買ってなかったのもあって即ポチ。
「1k」というキーが一つしかないキーボードキットですが、見るからにこだわりが凝縮されている。
1キーだけあって組み立てはシンプル。スイッチをはんだ付けして、ねじで留めるだけ。光らせられるということで、透明なハウジングの「Everglide Aqua King」というスイッチを採用。
こんな感じで光らせて遊んでみる。
キーボードなので、キーキャップをつけなくてはと思い、これにクリスマスツリーキーキャップを作って付ければ子供が喜ぶのではと思いつく。そういえば以前、「Z-GLASS」という透明なフィラメントを買って持て余していたが、あれが使えるかもなと思い立つ。ちょっと時間がなかったのでモデリングは諦めてthingiverseさんに頼ることに。良さそげなモデルを見つけたので、こちらを使わせていただくことに。
サイズをなんとなく調整してひとまずモデルどおりプリントしてみる。キーキャップにしたいので、ステムをつけたかったがこのフィラメントだと細かい部分を出すのが困難だと判断し、キースイッチに瞬間接着剤でくっつけるという荒技で凌ぐ。光らせてみるとなかなか良い感じ。先がだいぶ暗いが突貫なのでしょうがない。
子供が帰ってくるまでに完成させドヤ顔で見せたら、ふふーんという感じだったので、自分でデスクで楽しむことに。クリスマス気分が味わえてなかなか良いです。子供はカラフルなChocの詰め合わせにすごい反応していたので、適当なアクリルにはめてあげる予定です。(何故かキーボード好きになってしまっている)
ファームウェアの書き込み
せっかくなので技術的なことをちょろっと。
こちらの「1k」というキーボードは1キー分のサイズに基板を収めるために、MCUにATtiny85というものを使用しているようです。ファームウェアはおなじみQMKですが、書き込みにはmicronucleusというブートローダを使用しているようです。
うちのIntel Macでは下記のように配置してあげると、無事書き込みが行われました。
git clone https://github.com/micronucleus/micronucleus.git
sudo cp micronucleus/commandline/builds/x86_64-apple-darwin/micronucleus /usr/local/bin/
make 1k:default:flash
ファームウェア
デフォルトのファームウェアでは、スイッチを押すたびに色が変化するようになっています。せっかくなので、自動的に色が変化するようにしようとしました。が、こちらのマイコンはかなり容量が限られているため、QMKの機能を利用しようとするとすぐ容量オーバーしてしまいます。
苦肉の策で、こんなコードを書くはめに。普段、そんなにQMKのコードを深くいじったりしないので、多分もっと良い書き方があるのですが、即席で実現させるため・・・良い子は真似しないように!
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
if (record->event.pressed) {
switch (keycode) {
case RGB_HUI:
while (true) {
rgblight_increase_hue();
wait_ms(100);
}
break;
}
}
return true;
}
というわけで、久しぶりに他の人の作ったキーボードをいじってみて楽しかったです!
自作キーボードのオンラインショップをやっています
定型ですいません。キーボードが好きすぎてキーボードショップを開いてしまいました。よかったら覗いて見てください!