ReLow60 ファームウェア v1.8:ノイズフロアの自動キャリブレーションと熱ドリフト補正
概要
ReLow60 L-HE のファームウェアを v1.8 に更新しました。今回の機能更新は、ノイズフロア(rest 基準)の自動キャリブレーションと、それを利用した熱ドリフト補正の2点です。磁気式(ホール効果)キーボード特有の、基準値のずれによる誤動作を抑えます。
背景:なぜキーが暴走するのか
磁気スイッチは、キーの沈み込みをホールセンサーの ADC 値(アナログ値)で読み取り、0〜255 の距離に変換しています。このとき未押下時の基準値(rest)が実測より低くずれていると、何も押していないのに距離が常に少し出てしまいます。
この状態でアクチュエーションポイントやラピッドトリガーを 0.01mm のように極端に浅く設定すると、わずかなずれがしきい値を超え続け、キーが押されっぱなし・連打になって操作不能になることがありました。従来は起動時のキャリブレーションが基準を一方向にしか調整できず、初期値が実測とずれているとこの問題が残っていました。
解決:使用中も基準を取り直す
v1.8 では、キーが十分に離されている間だけ、基準値(rest)をゆっくり実測値へ追従させる仕組みを追加しました。
- 押している間・動いている間は基準を凍結し、打鍵には一切干渉しません
- 追従は非常にゆっくりで、素早いキー操作を追従対象にしません
- 沈み込みの範囲を保ったまま基準だけを動かすため、デッドゾーン(遊び)やヒステリシスを増やしません
これにより、初期値が多少ずれていても起動後すぐに正しい基準へ収束し、浅いアクチュエーション設定でも暴走しなくなりました。
熱ドリフトへの対応
長時間の使用でキーボードが温まると、センサーの値が全体的にドリフトします。これも「基準がゆっくりずれる」現象なので、上で述べた同じ自動追従の仕組みでそのまま吸収されます。温度変化による基準のずれを、使用しながら継続的に補正します。
スイッチ構成に応じた初期値
ReLow60 はストロークの異なる複数のロープロファイル磁気スイッチを混在搭載できます。v1.8 では、コンフィギュレータのスイッチプロファイルで指定したスイッチに応じて、起動時の基準初期値を適切な値から始めるようにしました。これにより初回の収束も速くなります。
ソースコード(GPL-3.0)
ReLow60 のファームウェアは libhmk(GPL-3.0)をベースにしており、対応ソースを公開しています。
ReLow60 L-HE ファームウェア(GPL-3.0)
書き込みは、ReConf のファームウェアアップデート機能(Web DFU)から行えます。
ReLowシリーズ キーボードコンフィギュレータ