12
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

うすい30パーセントキーボードをつくってみた【キーマップ作成】2019/09/16

Last updated at Posted at 2019-09-16

##前説
既存のキーマップを参照してもいいと思ったのですが、まずは単機能で理解しないといけないかなと思い、新規にキーマップを作成してみました。
QMKの環境は立ち上がっているので、そのあたりはすっ飛ばした記載となってます。

##新規キーマップ作成
new_keyboard.shでデフォルトのツリーを作成でき、対話形式に従ったら新規キーマップ作成用のツリーが生成されます。

$ ./util/new_keyboard.sh
Generating a new QMK keyboard directory

Keyboard Name: sosuu31
Keyboard Type [avr]:
Your Name: qzi00173

Copying base template files... done
Copying avr template files... done
Renaming keyboard files... done
Replacing %YEAR% with 2019... done
Replacing %KEYBOARD% with sosuu31... done
Replacing %YOUR_NAME% with qzi00173... done

Created a new keyboard called sosuu31.

To start working on things, cd into keyboards/sosuu31,
or open the directory in your favourite text editor.

##キーボードのマトリクス設定
./config.hを編集して、マトリクスの設定を行います。

  • マトリクスの行列数を記載する。
/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 6
  • 割り当てたピン名※順番通りに記述する。

2019/9/21 最終版の回路ではF6,F7を入れ替えてたので修正。
印刷してたのが最終と思ってたのが間違えのもと。データでちゃんと確認しよう。

#define MATRIX_ROW_PINS \
    { F5, F7, F6, F4, B1, B3 }
#define MATRIX_COL_PINS \
    { B4, E6, D7, C6, D4, B5 }

修正前

#define MATRIX_ROW_PINS \
    { F5, F6, F7, F4, B1, B3 }
#define MATRIX_COL_PINS \
    { B4, E6, D7, C6, D4, B5 }
  • ソフトウェアシリアルは使わないので、コメントアウトする。
//#define SOFT_SERIAL_PIN D0  // or D1, D2, D3, E6

##コンパイルルールの変更

./rules.mkを編集して、BOOTLOADERはpicomicroを使うので、caterinaに変更する。

BOOTLOADER = caterina

##キーマトリクスの定義
./sosuu31.hを編集して、キーマトリクスの定義を決めます。
物理的には311のマトリクスとしていますが、マイコン的には66としていますが、キーマップをいろいろ見てるとこうした方がマイコンへの本数を減らせそうなのでこの方法を採用しました。
余ったピンはワイヤーで引き出したりしてキラキラさせたい:sparkler:

//3*11の配列を真ん中で折り返しているので、実際には6*6のマトリクスで再現される
\#define LAYOUT( \
  L00, L01, L02, L03, L04, L05, L06, L07, L08, L09,     \
  L10, L11, L12, L13, L14, L15  L16, L17, L18, L19,     \
  L20, L21, L22, L23, L24, L25, L26, L27, L28  L29, L2A \
  ) \
  { \
    { L00, L01, L02, L03, L04, KC_NO }, \
    { L10, L11, L12, L13, L14, KC_NO }, \
    { L20, L21, L22, L23, L24, KC_NO }, \
    { L05, L06, L07, L08, L09, KC_NO }, \
    { L15, L16, L17, L18, L19, KC_NO }, \
    { L25, L26, L27, L28, L29, L2A   }, \
  }

折り返して配列を構成しているのは**marksardさん作のstonehenge30**を穴が開くくらい見させていただきました。

##キーマップ
sosuu31-keyboard-layout.png
お試しなのでfoobarとほぼ同じに。使っていってブラッシュアップすればいいかなと。
右下は何にしよう:thinking:

##つづき
はんだ付けをしてあげないといつまでもキーボードにならない:frowning2:
続き

12
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?