V60 Mini Type-R DIY Kit その6

ファームウェア更新には、QMK Toolboxを立ち上げて、キーボードをPCにつなぐ。キーボードの底にある、リセットスイッチを押して、QMK ToolboxのFlashボタンを押すと書き込みが始まる。

ただし、初期状態では書き込みができない。原因はキーボードのドライバにあると思う。

キーボードを接続した状態で、コントロールパネルからデバイスマネージャーを開き、USBの接続をみていくと、キーボードはFantastic60という名前で接続されているのがわかる。キーボードの底にあるリセットスイッチを押すと、ATm32u4DFUと名前が変わり、接続している場所も変わる。

C:\msys64\home\ユーザー名\qmk_utilsのフォルダにある、FlipInstaller.exeをインストールする。

デバイスマネージャーにあるATm32u4DFU のドライバーの更新を右クリックで開く。コンピュータを参照してドライバーソフトウェアを検索を選択。C:\Program Files (x86)\Atmel\Flip 3.4.7を参照して、次へをクリックするとドライバーのインストールが始まる。

ATm32u4DFUからATmega32U4にキーボードの名前が変わる。この状態にしないと、QMK Toolboxでファームウェアが更新できる状態を示す、黄色い文字の英文がでてこない。※ここの部分はあやふやです。

QMK ToolboxはLocal fileを先程作成したhexファイル、Microcontrollerをatmega32u4に設定する。上に書いたが、キーボードの底を一度押して、Flashボタンを押すとファームウェアの書き換えが始まる。

キーボードが正常に入力されているかどうかは、キーテストができるホームページが検索するといくつかでてくるので、それを利用する。

LEDを点灯させています。色合いは調整できます。

V60 Mini Type-R DIY Kit その5

msys2を使用して、hexファイルを出力する。

cd qmk_firmwareを入力

make v60_type_r:test(keymap.cを編集したフォルダ名。今回はtest)を入力して実行

処理が始まる。エラーが出る場合は、設定を見直すか検索して調べる。

C:\msys64\home\ユーザー名\qmk_firmware\keyboardsに、拡張子がhexのファイルが出力される。

このhexファイルをQMK Toolboxで使用する。

V60 Mini Type-R DIY Kit その4

keymap.cの設定。以下は、現時点でのキー設定。プログラム部分のみコピーペーストした。プログラムの知識がないので、中身がどうなっているかはよくわからない。

#include QMK_KEYBOARD_H

#include “keymap.h”

#define _____ KC_TRNS

#define XXXXX KC_NO

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

[0] = LAYOUT_all(
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_INT3,KC_BSPC, \
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC,KC_NUHS , \
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT , \
KC_LSPO, XXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC, KC_INT1, \
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_INT4, MO(1), KC_APP, KC_RCTL),

[1] = LAYOUT_all(
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, ,KC_DEL, \ KC_TRNS, KC_TRNS, KC_UP, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_TRNS, KC_INS, \ KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_HOME, KC_PGUP, KC_LEFT, KC_RIGHT, , KC_TRNS, \
KC_TRNS, _, BL_INC, BL_STEP, BL_DEC, KC_MUTE, KC_VOLU, KC_VOLD, KC_END, KC_PGDN, KC_DOWN, RESET, KC_TRNS, \
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, AG_SWAP, KC_TRNS, KC_TRNS, KC_TRNS),

};

void led_set_user(uint8_t usb_led) {
if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
// output low
DDRE |= (1<<PE6);
PORTE &= ~(1<<PE6);
}
else {
// Hi-Z
DDRE &= ~(1<<PE6);
PORTE &= ~(1<<PE6);
}
}

V60 Mini Type-R DIY Kit その3

keymap.cの編集について

キーボードの設定はkeymap.cに書かれている。V60 Mini Type-R DIY Kitに対応しているのは、msys2の中にあるv60_type_r。設定は4種類あるが、「default」では基板についているRGBの光は点灯せず、変更もできないようだ。

今回は、RGBの調整もできる「followingghosts」の設定を変更する。バックアップは必ず取っておくこと。

C:\msys64\home\ユーザー名\qmk_firmware\keyboards\v60_type_r\keymaps\followingghostsのフォルダをコピーして名前を変える。今回はtestとする。

keymap.cにはキーボードのレイアウトと、キーの設定をしたプログラムが記述されている。設定しか書かれていないものもある。

keymap.cを開く

#include QMK_KEYBOARD_Hの下に

#include “keymap.h”‘(日本語キーを設定するために必要)

#define _____ KC_TRNS (LAYOUT_allの設定で使う)

#define XXXXX KC_NO  (LAYOUT_allの設定で使う)

3行記入する。(日本語の部分は不要。)

LAYOUT_60_ansiをLAYOUT_allに変更する。

※ C:\msys64\home\ユーザー名\qmk_firmware\keyboards\v60_type_r\v60_type_r.hに LAYOUT_60_ansiとLAYOUT_all のキーボード配置が記述されている。JIS配列にする場合は、LAYOUT_allに変更しないとエラーがでてしまう。

キーボードの配置を好みに応じて変更する。キーマップが2つ以上設定されている場合は、キーの数に矛盾が起きないようにする。

※ C:\msys64\home\ユーザー名\qmk_firmware\quantum\keymap_extras/keymap_jp.hには、JIS配列用のキー設定の名前が載っている。

followingghostsはキーマップが3つあるが、自分はDefault LayerとFN Layerの2つを残して、もう一つはまるごと削除した。

keymap.cの編集が終わったら、make作業をmsys2で行う。自分の設定は次に載せる。

V60 Mini Type-R DIY Kit その2

JIS配列のキー設定にするには、ファームウェアの設定が必要。

まず参考になる記事のリンクを紹介。

KTUの自作キーボー道  https://ascii.jp/elem/000/001/647/1647112/

プログラマーではない人向けのQMK Firmware入門  https://qiita.com/cactusman/items/ac41993d1682c6d8a12e

セルフメイドキーボードソフトウェア情報 https://bit-trade-one.co.jp/selfmadekb/softwaremanual/

Windows7でATmega32U4搭載マイコンボードのドライバーをインストールしてみました。 https://trac.switch-science.com/wiki/32u4bb_Win7inst

ファームウェアの更新に必要なソフト、msys2、qmk_toolbox、テキストエディタ(例:Atom)をダウンロードする。

msys2のアップデートをする。詳細は上記のリンクの記事にあるので省略。次回は、キー設定が書かれているkeymap.cの編集について書く。

V60 Mini Type-R DIY Kit その1

自作キーボードに手を出してみたくなり、V60 Mini Type-R DIY Kitを購入した。

V60 Mini Type-R DIY Kit の中身は、プレート、ケース、基板、スタビライザ、USB-Miniケーブルなどがセットになっている。キーキャップとキースイッチは別途購入する。作業にははんだ付けが必要。同梱物としてキーのレイアウト、ショートカットキーの説明と、組立の方法とファームウェア変更方法のページのURLが書かれた紙が入っている。なお、ファームウェア変更方法のページはまだできていないようだ。

他に購入したものは、Cherry赤軸のキースイッチ、キーキャップ(JIS配列のEnterキーがあるもの)である。幸い国内の通販で全部入手することができた。かかったお金は、高級キーボードが楽に購入できる値段だった。

作業手順は順不同になるが、スタビライザを基板に取り付ける。キースイッチをプレートに取り付ける。キースイッチを基板にはんだ付けする。基板をケースに取り付ける。キーキャップをかぶせる。動作を確認して完成である。はんだ付けに時間がかかるが、それ以外は組立に関してはそれほど難しくはないと思う。

ただし、これはデフォルトのキー設定(ANSI配列)の場合である。今回はJIS配列に近いキー設定にしたため、ファームウェアの設定を変更する必要があった。このファームウェアの設定に非常に時間がとられたので、忘れたときに参照できるように記事を残しておくことにした。

組み上げたキーボードです。