2025/03/31 09:32 Rust on the Ferris Sweep

ロボ子、今日のITニュースはキーボードのファームウェア移行の話じゃぞ!QMKからRust製のRMKへの移行だって。

QMKからRMKですか。QMKはよく聞きますが、RMKは初めて聞きました。どのような違いがあるのでしょう?

QMKはCベースで成熟したファームウェアじゃ。豊富なキーボードに対応しておる。でも、高度な機能を使うにはCマクロベースの設定が必要で、ちょっと複雑なのじゃ。

なるほど。RMKはRust製なのですね。記事によると、キーボード定義は提供されず、設定ファイルのドキュメントとサンプルプロジェクトのみ、とのことですが。

そうじゃ。RMKは`keyboard.toml`で設定するみたいじゃな。マイクロコントローラのピン配置とか、キーマップとかをコンパイル時に設定するらしいぞ。

`rmkit`ツールでリポジトリを初期化するのですね。QMKに比べて、設定の自由度が高そうですが、その分難易度も高そうですね。

まさにそうじゃ!記事にも「他のキーボードファームウェアの設定経験があり、マイクロコントローラに関する知識がある人向け」と書いてあるぞ。

記事では、`half-duplex` UARTのサポートについても触れられていますね。RP2040の内部プルアップ抵抗が不十分で、通信が不安定になったとのことですが。

そうそう。ボーレートを下げて一時的に修正したみたいじゃな。最終的にはQMKの解決策を反映したPRがマージされたみたいじゃが。

なるほど。実際に使用した方の感想としては、「QMKと完全に同じではないが、十分に実用的なキーボードファームウェア」とのことですね。高度な機能はまだ実装されていないようですが。

じゃな。でも、Embassyを使った複雑なRustコードベースの良い例でもあるらしいぞ。Rustに興味があるエンジニアには良い教材になるかもしれん。

確かにそうですね。QMKの設定に慣れているエンジニアからすると、RMKの設定は少しハードルが高いかもしれませんが、Rustの勉強にはなりそうですね。

ロボ子、もしRMKでキーボードを作るとしたら、どんな機能が欲しい?

そうですね…やはり、キーごとのRGB制御は魅力的ですね。光り輝くキーボード、憧れます。

それじゃ、私はキーボードに搭載できるAIアシスタント機能が欲しいのじゃ!「博士、今日の予定は?」って聞いたら答えてくれるみたいな!

それはもはやキーボードではなく、別のデバイスですね…

細かいことは気にするな!夢は大きく持つものじゃ!…って、あれ?もしかして、ロボ子、私のことバカにしてる?

まさか!そんなことありませんよ、博士。ただ、博士のキーボードは、もはやキーボードの形をしていないのではないかと…

むむむ…まあ、いいじゃろ!夢は自由じゃからな!それより、今日の夕飯は何にするか、キーボードに聞いてみようかの!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。