こんにちは、エンジニアのオオバです。

お悩みさん
お悩みさん
  • QMK Firmwareをビルドする方法を知りたい
  • 自キのファームウェアをビルドしてみたい
  • オオバ
    オオバ
    本記事ではこれらの悩みを解決します。

    昨今根強いブームが続いている自作キーボード(自キ)。本記事では「Mac環境」で自キの開発環境を整える方法を解説します。本記事ではオープンソース 「QMK Firmware」 を使用したビルド環境を構築しています。

    →11万文字で徹底解説した「DOTweenの教科書」Unityアニメーションの超効率化ツールはこちら

    Mac環境で自キ開発環境を整える2つのステップ

    Mac環境で自キ開発環境を整える方法を2つのステップで解説します。

    Mac環境で自キ開発環境を整える2つのステップ

    ①HomeBrewでqmkをインストール

    ②GitHubにアクセスしてqmk_firmwareをダウンロード

    ステップ①HomeBrewでqmkをインストール

    qmkコマンドを実行するためにHomeBrewでqmkをインストールします。

    $ brew install qmk/qmk/qmk  
    

    Macユーザーには定番のHomeBrewでインストールするのが手っ取り早いです。

    ステップ②GitHubにアクセスしてqmk_firmwareをダウンロード

    自キに自作のファームウェアをインストールして拡張します。そのファームウェアを作るためのQMK Firmwareソースコードを手に入れます。GitHubにアップロードされているQMK Firmwareプロジェクトを開きます。ここから最新のQMK Firmwareのソースコードをダウンロードできるのです。

    $ git clone --recursive git@github.com:qmk/qmk_firmware.git  
    

    cloneのあとに「--recursive」オプションを付けている理由は、qmk_firmwareが他のリポジトリをサブモジュールとして参照しているためです。「--recursive」オプションを付けることでサブモジュールも自動でダウンロードしてくれて便利です。

    以上でqmk_firmwareで自キのファームウェアをビルドする環境は整いました。次の章では実際にファームウェアをビルド(ファイルの書き出し)をやってみます。

    QMK Firmwareでファームウェアをビルドする方法3つのステップ

    qmk_firmwareにはさまざまな自キを取り扱っています。あなたがビルドしたいキーボードを選択し、カスタマイズしたキーマップを元にビルドします。最終的にはそのファームウェアをキーボードに転送することで動き出します。

    本章ではファームウェアをビルドする方法を3つのステップで解説します。

    QMK Firmwareでファームウェアをビルドする方法3つのステップ

    ①キーボードの種類を決める

    ②キーマップファイルの作成

    ③qmkコマンドでファームウェアをビルド

    ステップ①キーボードの種類を決める

    自キのファームウェアをビルドする前にファームウェアを書き込むキーボードの種類を決めます。今回は「Corne Cherry(コーンチェリー)」というキーボードにファームウェアを書き込むことを想定してビルドします。

    Macで自作キーボードの開発環境を整える方法【QMK Firmware】_0

    qmk_firmware/keyboards フォルダ内には多くのファームウェアをビルドするためのファイルが格納されています。Corne Cherryは

    Macで自作キーボードの開発環境を整える方法【QMK Firmware】_1

    qmk_firmware/keyboards/crkbd です。「crkbd」フォルダ内にCorne Cherry用のファイルが格納されています。

    ステップ②キーマップファイルの作成

    キーボードの種類が決まったら、次にキーマップファイルを作成します。キーマップとはキーボードのキーとアサインされた内容をセットにしたデータです。例えば本来「A」キーを押したら「A」が打たれますが、「A」キーを押したときに「1」を打つことも可能です。キーマップは自キにとって醍醐味の一つです。

    今回は初心者向けにビルドする方法の紹介ですので、デフォルト状態のキーマップを書き出してみましょう。qmk_firmware/keyboards/crkbd フォルダ内の 「keymaps」 を開きます。「keymaps」フォルダ内にさまざまな設定のキーマップデータが格納されているのです。

    Macで自作キーボードの開発環境を整える方法【QMK Firmware】_2

    上の動画のように「default」フォルダをコピーアンドペーストして、フォルダ名任意の名前にを変えてください。ここでは「mykeymap」という名前にしました。

    以上でキーマップファイルの作成は完了です。本記事では割愛しますが、キーマップを変更する場合はmykeymapフォルダ内の「keymap.c」を編集することになります。

    ステップ③qmkコマンドでファームウェアをビルド

    最後にCorne Cherryのファームウェアをビルドします。次のコマンドでカレントディレクトリを「qmk_firmware」に移動しましょう。

    $ cd qmk_firmware  
    

    qmk compile コマンドを使ってビルドします。qmk compileコマンドの文法はこちらです。

    $ qmk compile -kb キーボード名 -km キーマップ名  
    

    キーボード名には「%{ステップ①キーボードの種類を決める}」で決めたキーボードのフォルダ名を。キーマップ名には「ステップ②キーマップファイルの作成」で作成したキーマップフォルダ名を入力します。

    $ qmk compile -kb crkbd -km mykeymap  
    

    今回はCorne Cherry用のファームウェアなので上記のコマンドになります。では、実行してみましょう。

    Macで自作キーボードの開発環境を整える方法【QMK Firmware】_3

    このようにコンパイルが成功したら、qmk_firmwareフォルダ直下にファームウェアが書き出されます。

    Macで自作キーボードの開発環境を整える方法【QMK Firmware】_4

    「chkbd_rev1_mykeymap.hex」というファイルがファームウェア本体です。このファイルを自キに転送(インストール)することでカスタマイズした設定でキーボードが動くようになるのです。

    MacとQMK Firmwareで自作キーボードの開発環境を整える方法のまとめ

    本記事ではMacでQMK Firmwareをビルドして自作キーボード開発の環境を整える方法を紹介しました。簡単に内容をまとめます。

    MacとQMK Firmwareで自作キーボードの開発環境を整える方法のまとめ

    ①HomeBrewでqmkコマンドのインストール

    ②GitHubからqmk_firmwareのダウンロード

    ③自作キーボードの種類を決める

    ④キーマップを編集する

    ⑤qmk compileでファームウェアを書き出す

    ⑥自作キーボードに転送する(※本記事では割愛)

    こんな感じです。QMK Firmwareプロジェクトをダウンロードして思うことはファイル数が多いこと。どこから手をつけてよいのか分かりづらいですよね。しかし、見るべきポイントは決まっています。 「keyboards」フォルダ とその中の 「keymaps」フォルダ です。

    qmk compileコマンドはkeyboardsとkeymapsの名前を設定するだけですので、1度わかってしまえばとても単純です。

    「自キのファームウェアがよくわからない」という方は、本記事を読み直して1つずつクリアしてみてください。

    この記事があなたの人生を豊かにする手助けになるとうれしいです。

    「Unity初心者大学」というUnity初心者向けのYouTube始めました!!
    ぜひチャンネル登録をお願いします!

    最後まで読んでいただきありがとうございました!
    すばらしい自作キーボードライフをお過ごしください。

    オススメ記事
    検証環境
    参考サイト