/Kermite

自作キーボードのためのソフトウェアプラットフォームです。

Primary LanguageTypeScriptMIT LicenseMIT

Kermite

概要

自作キーボード用のソフトウェアです。MCU上で動くファームウェアと、キーマッピングを設定するためのユーティリティソフトがあります。ProMicro(マイコンボード)を使用した自作キーボードに対応しています。

機能

キーマッピングの変更

ユーティリティソフトを使用してキーマッピングを視覚的に変更できます。キーマッピングはMCU内蔵のデータ保存領域に格納されます。

ファームウェアの書き込み

ユーティリティソフトに、MCUにファームウェアを書き込む機能があります。対応キーボードのファームウェアは事前にビルドされたものを利用できます。

レイヤ状態のリアルタイム表示

使用しているキーボードのレイヤ状態をリアルタイムに表示する機能があります。文字入力時に、画面を見て現在アクティブなレイヤ上のキーマッピングを確認できます。

動作環境

ハードウェア/ファームウェア

  • ProMicroやATMega32u4,RP2040を使用しているキーボード
  • キーボードのモデル毎に対応ファームウェアの実装が必要です

ユーティリティソフト

  • Mac OS 10.15 Catalina
  • Windows 10

フォルダ構成

./firmware ...ファーウェアです。

./software ...PC上で動作するユーティリティソフトです。デバイスがなくても配列の検討などに利用できます。

開発環境

ファームウェア

  • AVR ATMega32u4, Raspberry Pi RP2040
  • C言語, avr-gcc, arm-none-eabi-gcc, GNU Make

ユーティリティソフト

  • Electron
  • Typescript

導入方法

現在安定版の正式なリリースはまだありません。

開発中のアルファ版を公開しています。機能の評価やデバッグにご協力いただける方は、こちらからインストーラをダウンロードしてご利用ください。概ね毎週末に更新しています。

使い方は以下のドキュメントを参照してください。

ユーティリティソフトの使い方

開発状況

キー入力やレイヤなどの基本的な機能は実装がおおよそ固まりました。現在周辺部品(LCD,RGBLEDなど)の対応を進めています。またユーティリティソフトの改修を行っています。2021年の夏頃にリリースする予定です。

その他

KermiteServer プロファイルを投稿できるサーバーです。(試験運用中)

Firmwave Build Status 対応ファームウェアのビルド状況です

Project Id Generator ファームウェアを新しく作る際に必要なProjectIdのジェネレータです

連絡先

https://discord.gg/PNpEn3Z2kT

Discordのサーバです。バグ報告や機能の相談などはこちらでご相談ください。

(2021/7/25 更新) Discordの招待のリンクが一時的なものになっていたため、リンクを作り直しました。

ライセンス

MITライセンスです。