1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

DJMAX RESPECT V 用コントローラーを作成する Pt.2

Posted at

基板とケースの確認

発注した基板とケースが届いたら、寸法などが間違っていないかを確認します。
今回は、基板にスタビライザーの穴開け加工をしなかったので、アクリル板に少し余計な穴が開いていますが、まあ良しとします。
基板は、念のためテスターで確認しておくといいと思います。
F3C04E5C-3D8B-49EA-BD45-CBE4BFBCFE48.jpeg
56BC0926-28D8-4410-A1EB-377BF1D76642.jpeg

はんだ付け

キーソケットとProMicroをはんだ付けします。
画像は発注ミスした基板で練習したものです。
DB2A7CBF-90BD-43D9-A8A5-343D1FFFA24B.jpeg
ProMicroは結構高いので、慎重にはんだ付けすることをオススメします。

キーマッピング

QMK Firmwareについては以下を参照しました。

▷QMK MSYSで新規のキーボードファイルを作成

qmk new-keyboard

コマンドを実行すると、以下のようにキーボードの名前やMCUの種類等色々と質問されますが、適当に進めていいです。
image.png

このようにqmk_firmware/keyboardsにフォルダが作成されます。
image.png

image.png

今回はtestフォルダ中のkeyboard.jsonと、keymap.cのソースファイルをVSCODEで編集します。

▷keyboard.jsonの編集
matrix_pinsとlayoutを編集していきます。
matrix_pinsはPt.1で作成した回路図のProMicroの端子番号を指定します。
layoutはKeyboard Layout Editorで生成されたRaw dataを以下のConvert KLE raw to QMK info.jsonでコンバートし、順にペーストしていきます。

keyboard.json
{
    "manufacturer": "",
    "keyboard_name": "test",
    "maintainer": "",
    "bootloader": "atmel-dfu",
    "diode_direction": "COL2ROW",
    "features": {
        "bootmagic": true,
        "command": false,
        "console": false,
        "extrakey": true,
        "mousekey": true,
        "nkro": true
    },
    "matrix_pins": {
        "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"],
        "rows": ["D1", "D0", "D4", "C6"]
    },
    "processor": "atmega32u4",
    "url": "",
    "usb": {
        "device_version": "1.0.0",
        "pid": "0x0000",
        "vid": "0xFEED"
    },
    "layouts": {
        "LAYOUT": {
            "layout": [
            {"matrix": [0, 0], "label":"1", "x":0, "y":0}, 
            {"matrix": [0, 1], "label":"2", "x":1, "y":0, "w":1.25}, 
            {"matrix": [0, 6], "label":"3", "x":9.75, "y":0, "w":1.25}, 
            {"matrix": [0, 7], "label":"4", "x":11, "y":0}, 
            {"matrix": [1, 0], "label":"7", "x":2.5, "y":0.5}, 
            {"matrix": [1, 1], "label":"10", "x":8.5, "y":0.5}, 
            {"matrix": [1, 2], "label":"5", "x":0, "y":1}, 
            {"matrix": [1, 3], "label":"6", "x":1.5, "y":1}, 
            {"matrix": [1, 4], "label":"8", "x":3.5, "y":1}, 
            {"matrix": [1, 5], "label":"9", "x":7.5, "y":1}, 
            {"matrix": [1, 6], "label":"11", "x":9.5, "y":1}, 
            {"matrix": [1, 7], "label":"12", "x":11, "y":1}, 
            {"matrix": [2, 0], "label":"13", "x":0, "y":2}, 
            {"matrix": [2, 1], "label":"14", "x":1, "y":2}, 
            {"matrix": [2, 2], "label":"15", "x":2, "y":2}, 
            {"matrix": [2, 3], "label":"16", "x":4, "y":2, "w":1.5}, 
            {"matrix": [2, 4], "label":"17", "x":6.5, "y":2, "w":1.5}, 
            {"matrix": [2, 5], "label":"18", "x":9, "y":2}, 
            {"matrix": [2, 6], "label":"19", "x":10, "y":2}, 
            {"matrix": [2, 7], "label":"20", "x":11, "y":2}, 
            {"matrix": [3, 0], "label":"21", "x":0, "y":3}, 
            {"matrix": [3, 1], "label":"22", "x":1, "y":3}, 
            {"matrix": [3, 2], "label":"23", "x":2, "y":3}, 
            {"matrix": [3, 3], "label":"24", "x":3, "y":3, "w":2}, 
            {"matrix": [3, 4], "label":"25", "x":7, "y":3, "w":2}, 
            {"matrix": [3, 5], "label":"26", "x":9, "y":3}, 
            {"matrix": [3, 6], "label":"27", "x":10, "y":3}, 
            {"matrix": [3, 7], "label":"28", "x":11, "y":3}
            ]
        }
    }
}

▷keymap.cの編集
配列にキーコードを入力します。
キーコードについては以下を参照してください。

keymap.c
// Copyright 2023 QMK
// SPDX-License-Identifier: GPL-2.0-or-later

#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
   
    [0] = LAYOUT(
        KC_ESC,   KC_2,                                  KC_DEL,   KC_BSPC,
        KC_TAB,   KC_A,   KC_S,   KC_D,   KC_L,   KC_P,   KC_COLN,   KC_ENT,
        KC_LSFT,   KC_P2,   KC_P3,   KC_C,   KC_COMM,   KC_P4,   KC_UP,   KC_RSFT,
        KC_1,   KC_LCTL, KC_PENT, KC_SPC,   KC_SPC,   KC_LEFT,   KC_DOWN,   KC_RIGHT
    )
};

▷ビルドと書き込み
QMK MSYSで以下のコマンドでまずはビルドします。

make test:default

ビルドに成功したら、書き込み先のProMicroをPCに接続して、 以下のコマンドで書き込みます。

make test:default:avrdude

リセットの指示が出たら、ProMicroの RST ピンと GND ピンをショートさせ、リセットします。

以上

1
1
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
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?