組み込み女学院

キーボードとかゲームとか

Mint60(TypeC仕様)を作った話

ちょっと前から左右分割のキーボードが気になってて、色々調べた結果Mint60を基本キットから作った。

入門と書いているが、この前に練習としてSoyuzを作ったので初自作ではない。

この記事が、TypeCな自作キーを作りたい人の一助になれば嬉しい。思ったほど難しくなかった。

Mint60を選んだ理由

  • US配列
  • 左右分割
  • 見た目
  • 初心者向きっぽそう(情報が多い)

加えて、TypeC仕様で作りたかった。これは別にMint60でなくても可能だけど。

令和の世にMicro-Bはちょっと…

買ったもの

色々とポコポコ買い足してるので、普通にREALFOCEもう一台買えるくらいの費用掛かってる気がする。

はんだごてとかは元々あるので書いてない(使っているのはこれ)

はんだの吸い取り線と吸い取り器があるけど、吸い取り線は線に熱を奪われるので、溶かしつつ染み込ませていくのが高難度だと思った。熱に弱い部品があるので尚更。

他の人の自作記とそんなに変わらないはず。

Lilakey

Mint60基本セット
基板とかアクリルプレートのみのキット。キースイッチを自分で選びたかった。5日くらいで届いた。
Tai-Hao Midnight Sun Keycaps
キーキャップ。なんとなく買ったけど、付けてみたらなんかこれじゃないな…となって後述のを買った。

遊舎工房

キースイッチ Hako Violet
70個購入。テスター買っていくつか触って、なんとなくいい感じがした。自キー温泉の人の記事にも影響された。
キースイッチ Kailh BOX white
10個購入。一部キーに違う触感のスイッチを使ってみたかった。
TRRSケーブル自作キット
せっかくなら…と思って25cmを買ったが短かすぎて結局別に長いやつ(後述)買った。
Elite-C
2個購入。TypeC化のため。
NP PBT Crayon KEYCAPS SET
かわいい。

その他

大体Amazon

細めのこて先
細かいはんだ付けになりそうだったので。買ってよかったけど細い分熱が伝わりにくくて難しくもあった。ヘタクソなだけ?
プリント基板用はんだ
同上の理由で。終わってみたらほぼ1本使い切ってた。
リードベンダ
ダイオードを70個近く実装するので買った。今後使わなそうだけど買ってよかったとは思う。
TRRSケーブル
25cmではほとんど左右を離せなかったので。もう一本自作キット買うかと思ったら売り切れてたのもある。
マスキングテープ
100均で買った。結構有用。

組み立て

基本は公式のビルドガイド通りなのでそちらを。 メモ代わりにツイートに残したりしてたけど大きなミスはしなかった…はず。

ダイオード、TRRSジャック、タクトスイッチ実装

ダイオードは1つ余る(予備?)

ダイオードのはんだ付けは反対側まではんだが流れるようにした方がいいらしい。

が、一発で行き渡らせるのが難しくて表側(ダイオードが見える側)から流したりした。そこまでするべきなのかは知らない。

TRRSジャックはTRRSのTのピンだけ若干温まりにくかった。こういう時温調あると便利。

タクトスイッチも4ピン中2ピンが温まりにくかった。

ピンヘッダ

コンスルーがキットに同梱されていたけど、接触不良あっても嫌なので普通にピンヘッダで実装した。

向き間違えそうになったので要注意。

スタビライザ

Soyuzでもやってたので難しくはなかったが、右上の1つを付け忘れて後々はんだ付けを外す羽目に(予備1つあるんだなーとか思ってた)。

最下段のレイアウトを全部1Uとかにしない限り(出来るのか?)、同梱の5つは余さず使い切る。

キースイッチ嵌め込み

嵌めるだけ。足を曲げないように注意するくらい。

Elite-C ファームウェア書き込み

自分でコンパイルして焼くのは初めてだったので、はんだ付けする前に一度ビルドして焼いたりした。

Gitニュービーなので用語の使い方間違ってるかもしれない。

開発環境はWin11でWSL2 Ubuntu。Win11になってさらに使いやすくなった。

手順としては

  1. QMK firmwareリポジトリをforkしてローカルにcloneする
  2. make mint60/defaultでビルド→.buildフォルダにmint60_default.hexができる
  3. QMK Toolboxでmint60_default.hexを選択
  4. USB挿してRSTボタン押してflash

Elite-CにはオンボードのRSTボタンがあるのでそれでも良いし、RSTとGNDにピンセット当てても可。

ブートローダーがProMicroと違うのでQMK Toolboxは使えないって話だったんだが、普通にQMK Toolboxで焼けた。アップデートされたのかな?

キースイッチ、Elite-C実装

ひたすらはんだ付け。

Elite-CはProMicroと同じように実装してしまってOK。表裏だけ注意。 Elite-Cのロゴが書いてある方がキーボード下面側に向く。

左上2キーくらい(「`」と「1」、「6」と「7」)はElite-Cより先に実装する必要があるのでちょっと注意?

全部付けた後だと外すの大変なので、四隅のスイッチとElite-Cだけ実装して動くか確認したりした。

ピンヘッダを切るときもマステを使うとよい(指で抑えると痛いし)

LEDテープ

これ実装して変なとこショートしてトラブる人が多い感じがしたので実装してない。

キースイッチやらダイオードやらの足が飛び出てるとこに両面テープだけでくっつけたらそうなるわなという感じもする。

絶縁用にスポンジというかウレタンみたいなものを挟むようにした方が良いのでは…?と思う。

ちょっと線を伸ばしてアクリルプレート側に貼り付けるのも考えたが、開ける時に面倒になりそうなのでやめた。

ケースの組み立て

小さいパーツが2枚重ねになっている所がビルドガイドではちょっと分かりづらかったが、それ以外は普通に組めた。

TRRSケーブル

Mint60とは別キットだが所感だけ書く。

前にもやったことがあったが、3.5mmプラグ(しかも4ピン)のはんだ付けは細かすぎて二度とやりたくない。(多分またやるけど)

見た目は自作感があって良い。

というかこの端子どこから仕入れてるんだろう…

成果

見た目

こうなった。結構お気に入り。

キーマップ

現時点ではこうなっている。左手でマウスを使う異常者なので、お読みの諸賢には合わない可能性が高い。 (黄色セルはデフォルトからの変更点)

f:id:Terako0000:20211211115654p:plain

ソースコード

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  [0] = LAYOUT( \
    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_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_BSLS,  \
    KC_LCTL,     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_LSFT,       KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,      KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT,   KC_UP,  MO(1),   \
    KC_ESC,    MO(1),    KC_LGUI,    KC_LALT,    KC_SPC,        KC_SPC, KC_RALT,  KC_RCTL,               KC_LEFT,KC_DOWN,KC_RGHT \
  ),
  [1] = LAYOUT( \
    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, \
    RGB_TOG,   RGBRST,  RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX,   XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, \
    KC_CAPS,     RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX,   XXXXXXX, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT,        XXXXXXX, \
    _______,       XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,   XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, KC_PGUP, _______, \
    XXXXXXX,   _______,    _______,    _______,    XXXXXXX,       XXXXXXX, KC_RGUI, XXXXXXX,                   KC_HOME, KC_PGDN, KC_END \
  )
};

感想

色々あったが致命的なミスはしなかったので良かった。ビルドガイドは結構細かい所まで書いてあって分かりやすいと思う。

練習としてSoyuzを作っておいたのも結構良い経験になっていた気がする。安いし入門にはオススメ。

Hako VioletスイッチはREALFORCEとかと比べると若干音が大きいが、打鍵感は結構好み。

TypeC化もProMicroとほとんど変わらなくね?という手順で出来てしまったので、QMK firmware/toolboxの開発陣には頭が上がらない。

何よりMint60の作者ゆかりさんにも頭が上がらない。界隈で人気あるキーボードなだけあって伊達じゃないなという感じ。

では良い自キーライフを。