LoginSignup
1
0

DALL·E Jan 19 Sketch.png

まとめ

  • Chrysalis → Kaleidoscope の順がおすすめ
  • Kaleidoscope は Arduino IDE → CLI の順がおすすめ
  • Chrysalis → Kaleidoscope に移行するときEEPROM を削除する

はじめに

Keyboardio は、とてもユニークなキーボードをつくっています。かれらが販売している Atreusは超コンパクトな44キーのキーボード。

わずか44キーながら、レイヤー切り替えによってフルサイズキーボードの機能を完全にカバーしています。とても小型のため、持ち運びも容易です。rebuild.fmの宮川さんや、gofujita先生なども利用されているそうです。

e621c03fa31981a655060e363e02de16_original.jpeg

キーマップのカスタマイズには、ChrysalisまたはKalaidoscopeが利用できます。しばらくChrysalisをつかっていましたが、Kaleidoscopeに切り替えました。

想定読者

  • Atreus、Model 100などの、Keyboardioのキーボードのユーザ
  • ErgoDox EZ、OLKB Planckなど、Kaleidoscope対応キーボードのユーザ
  • Chrysalisのカスタマイズでは機能が足りなくなったユーザ

まずはChrysalisがオススメ

Kaleidoscope をつかうまえに、まずは Chrysalis でカスタマイズをするのがオススメです。

Chrysalis は Kaleidoscope をかんたんに使えるようにするためのアプリです。Kaleidoscope の全機能はカバーしていませんが、主要な機能はカバーしており、コードを書くことなく、マウスをぽちぽちしてキーマップをカスタマイズできます。

ほとんどのカスタマイズは Chrysalis で事足りる印象があります。わたしの場合も rev29 まではChrysalis で実施していました。

しかしながら、下記の機能はどうしても Chrysalis で実現できず、Kaleidoscope に切り替えることを決めました。

  • 左Fnキーを、短押し→英数、長押し→レイヤー移動にしたい
  • 左Fnキーを、短押し→かな、長押し→レイヤー移動にしたい
  • aキーを、短押し→a、長押し→ctrlにしたい
  • zキーを、短押し→z、長押し→shiftにしたい

前者ふたつは Chrysalis 未対応。後者ふたつは対応はしているのですが、微妙な設定が Chrysalis ではやり切れませんでした。

Kaleidoscopeを使用するまで

Kaleidoscopeの公式ページ に解説があるとおり、Arduino IDEを用いる方法と、git cloneしてセットアップする方法があります。

どちらを選ぶかは、経験に大きく左右されると思います。わたしはファームウェアをコンパイルしてインストールするのは初めてでした。

その立場からのオススメは、まずArduino IDEをドキュメントどおりにインストールし、最新版のデフォルトファームウェアのコンパイルとインストールまでは実施すること。

そして、概要がつかめたあとは、git cloneしてコマンドラインから操作するほうがシンプルで見通しが良いように感じました。

ChrysailsからKaleidoscopeへの移行のハマりどころ

Arduino IDEかコマンドラインか

上述のとおり、経験に左右されると思いますが、もし初めての場合は、まずはArduino IDE、次にgit cloneしてコマンドライン、をオススメします。

EEPROM

まずはArduino IDE でファームウェアをコンパイルしてインストールしても、キーマップが変わりませんでした。この現象でいちばん悩みました。

結論は、Chrysalis のPreference > My Keyboard > Advanced Tools & Preferences > RESET EEPROM TO FACTORY DEFAULTS ボタンを押して、EEPROMを消去する。消去後に、ファームウェアをインストールすると、設定が反映されるようになります。

ChrysalisとKaleidoscopeの、EEPROMの取り合い

EEPROMとは、書き込み可能で、電源を切っても消えない記憶領域。Chrysailsは、ファームウェアはなるべくいじらず、EEPROM領域にキーマップを書き込むことでカスタマイズをおこないます。
Kaleidoscopeはキーボードにファームウェアを書き込みます。ファームウェアは、EEPROMが空いていれば使いますが、もし既に書き込まれている場合、遠慮してつかわない判断をします。
したがって、ChrysalisをつかったあとにKaleidoscopeでファームウェアをインストールすると、キーマップが変わっていないように見えてしまいます。

EEPROM のリセットの前には、かならずキーマップのバックアップをお取りください。

Chrysalis は Backup & Restore > Export でファイルにバックアップし、Importでファイルから読み込んで復元できます。

Kaleidoscope の git clone

公式ページの Use git to check out a copy of Kaleidoscope に書いてある通りですが、~/git にインストールするとして、

$ mkdir ${HOME}/git
$ cd ${HOME}/git

$ git clone https://github.com/keyboardio/Kaleidoscope

$ cd ${HOME}/git/Kaleidoscope
$ make setup

でインストール。

$ export KALEIDOSCOPE_DIR=${HOME}/git/Kaleidoscope

$ echo "export KALEIDOSCOPE_DIR=${HOME}/git/Kaleidoscope" >> ${HOME}/.bash_profile

などとして環境変数を設定します(上記はbashの場合)。

Kaleidoscopeでの作業

キーボードは Atreus で、git clone先が~/gitだと仮定します。作業は ~/git/Kaleidoscope/examples/Devices/Keyboardio/Atreus でおこないます。

$ ls
Atreus.ino  Makefile    sketch.json sketch.yaml

の4つのファイルがあり、このうち Atreus.ino を編集します。

$ make compile でコンパイル。
$ make flash でコンパイルして Atreus にファームウェアをインストールします。

$ make flash
Using Kaleidoscope from /Users/user/git/Kaleidoscope
Building in quiet mode. For a lot more information, add 'VERBOSE=1' to the beginning of your call to /Applications/Xcode.app/Contents/Developer/usr/bin/make
最大28672バイトのフラッシュメモリのうち、スケッチが24520バイト(85%)を使っています。
最大2560バイトのRAMのうち、グローバル変数が983バイト(38%)を使っていて、ローカル変数で1577バイト使うことができます。

Used library                            Version Path
Used platform  Version Path
keyboardio:avr 1.6.11  /Users/user/git/Kaleidoscope/.arduino/user/hardware/keyboardio/avr

(中略)

To update your keyboard's firmware, hold down the key in the lower left corner of your Atreus.

When you're ready to proceed, press 'Enter'.

インストールする際には上記のようなメッセージが出ます。そこで、キーボードの左下のキーを押しながら enter を押下します。enter キーを押したあとも、左下キーはもうしばらく押しておきます。

左下キーを押下すると、キーボードがいわば「ファームウェア受入れモード」になります

参考リンク

Chrysalis と Kaleidoscope の EEPROM 問題について:

Keymap 作成にあたって:

下記、ご参考まで、わたしのinoファイル。

Atreus.ino · GitHub

おわりに

Keyboardio の Atreus キーボードのカスタマイズに関する基本的なガイドラインをご紹介しました。Chrysalis と Kaleidoscope を利用することで、キーボードの体験を改善できます。

ファームウェアのコンパイルとインストールは初めての経験でした。なんだかすこし、禁断の領域に足を踏み入れたようなドキドキ感がありました。なんとはなく手を出してはいけない領域だとおもっていたようなのです。しかしこの領域は、キーボードカスタマイズにおいて重要そうです。

キーボードは、ユーザーがデジタル世界を操るための貴重な道具です。『ハリー・ポッター』シリーズでハリーの杖は、かれの特異な能力と運命を象徴し、かれの魔法の発現に不可欠なものでした。おなじように、カスタマイズされたキーボードは、単なる入力デバイス以上のものであり、わたしたちの能力や創造性を発揮するためのツールです。ハリーの杖がかれにとって特別であったように、よく手入れされたキーボードは、わたしたちにとって特別な存在なのかもしれません。

この記事が、そんなキーボード環境構築の一助となることを願っております。

環境

  • Kaleidoscope v1.99.8
  • Chrysalis 0.13.3
  • Keyboardio Atreus
  • macOS Sonoma 14.2.1(23C71)
  • MacBook Pro (14-inch, 2021)
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0