詩と創作・思索のひろば

ドキドキギュンギュンダイアリーです!!!

meishi2キーボードを作った

新卒のころから使っていた Happy Hacking Keyboard が壊れた(アンチポップさんにもらったやつ。ありがとうございます)。とくにメンテもせずに、もう10年以上使えていたので感謝の気持ちとともに新しいキーボードに買い換えることにする。Macbook Pro の内蔵キーボードはチャタリングするんでちょっとしんどい。

少し悩んで、せっかくなので自作キーボードに挑戦してみることにした。はんだ付けは小学生のときに工作教室でほんのちょっと触ったか? くらいである。「自作キーボード 入門」で検索して出てきたこれを買うことにする。見た目のかわいい ErgoDash。工具セットも買った。

で、届いたんだけど、どうも圧倒されてしまう感覚がある。自分が何をすることになっているのか全然わからない状態。

考えてみれば自作キーボードの入門セットであって、電子工作の入門セットではなかった。このまま突入しても壊してしまうだけだなと思って、小さい自作キーボードで練習することにした。

練習用と思ってこれを買う。他にも初心者向けちびキーボードはあるっぽいが、ビルドガイドがはてなブログだったので迷わず meishi2 にした。私も使ってます。

はんだ付けはうまくいってるのかいってないのかわからないまま終わり、ついにファームウェアの書き込みだ! という段階まで来たのだけど、これがなんかうまくいかない。リセットスイッチを2回クリックしても変化がない。

Waiting for USB serial port - reset your controller now (Ctrl+C to cancel)..............................................................................................................^Cmake[1]: *** [avrdude] Interrupt: 2 

QMKファームウェアの書き込みができない – 遊舎工房サポートサイト にしたがって、Pro Micro(キーボードにつけるマイコン)だけを取り外してリセットしてみようとしたが、本来なら RST と GND をショートさせるべきところを RAW と GND をショートさせてしまっていて、そして Pro Micro のランプが光らなくなった……。

あっけない死。えっ何が起きたの? こうやって金を無駄にしたのおれは? とショックを受けていたのだが、ちょさんに回路図を交えて教えてもらった。どうもヒューズを飛ばしてしまったらしい。そして時間が経ったら回復してるのでは……とのことなので改めて確かめてみるとちゃんと動いた。よかった。

その後 USB ケーブルをいくつか試したら、ちゃんとファームウェアの書き込みも成功した。データ通信できない USB ケーブルってなんだよ。ちなみにちゃんとした USB ケーブルで Pro Micro をつなぐと、macOS ならキーボード設定アシスタントが開くようだ。Windows のように接続音がしないのでどうも繋がってるのかどうか不安になるんだけど、ioreg -p IOUSB というコマンドで確認できる:

+-o Root  <class IORegistryEntry, id 0x100000100, retain 22>
  [...]
+-o AppleUSBXHCI Root Hub Simulation@14000000  <class AppleUSBRootHubDevice, id 0x100001b02, registered, matched, active, busy 0 (2 ms), retain 13>
  | +-o USB2.0 Hub@14200000  <class AppleUSBDevice, id 0x100007398, registered, matched, active, busy 0 (0 ms), retain 16>
  | | +-o USB-C Digital AV Multiport Adapter@14220000  <class AppleUSBDevice, id 0x1000073af, registered, matched, active, busy 0 (0 ms), retain 13>
  | +-o Arduino Micro@14400000  <class AppleUSBDevice, id 0x10000a833, registered, matched, active, busy 0 (2 ms), retain 19>
  +-o AppleUSBXHCI Root Hub Simulation@01000000  <class AppleUSBRootHubDevice, id 0x100001b59, registered, matched, active, busy 0 (1 ms), retain 12>
    +-o USB3.0 Hub@01100000  <class AppleUSBDevice, id 0x100007384, registered, matched, active, busy 0 (0 ms), retain 15>

この Arduino Micro というのが Pro Micro やね。ファームウェア書き込み後は meishi2 という名前になる。

というわけで完成です。長くなったのでカスタマイズは次回。

ちなみに本命の ErgoDash は作るの時間かかるな、とわかったのでその後 HHKB も買ってしまった。

はてなで一緒に働きませんか?