forked from mirrors/qmk_firmware
Crawlpad refactor (#4854)
* Crawlpad: delete kbfirmware JSON file * Crawlpad: refactor - config.h and crawlpad.h updated to use #pragma once method - layout macro renamed from KEYMAP to LAYOUT_ortho_4x4 - default keymap now uses #include QMK_KEYBOARD_H - deleted deprecated action_get_macro function - cleanup rules.mk file - add LAYOUTS = ortho_4x4 to rules.mk * Crawlpad: Configurator support * Crawlpad: readme update - update image link to direct link - fully update Docs link line - delete reference to deleted kbfirmware JSON file
This commit is contained in:
parent
57fbf072f1
commit
6630e4bb41
7 changed files with 68 additions and 46 deletions
|
@ -1,5 +1,4 @@
|
||||||
#ifndef CONFIG_H
|
#pragma once
|
||||||
#define CONFIG_H
|
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
|
@ -46,4 +45,3 @@
|
||||||
#define RGBLED_NUM 3
|
#define RGBLED_NUM 3
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
|
@ -1,9 +1,8 @@
|
||||||
#ifndef KB_H
|
#pragma once
|
||||||
#define KB_H
|
|
||||||
|
|
||||||
#include "quantum.h"
|
#include "quantum.h"
|
||||||
|
|
||||||
#define KEYMAP( \
|
#define LAYOUT_ortho_4x4( \
|
||||||
K00, K01, K02, K03, \
|
K00, K01, K02, K03, \
|
||||||
K10, K11, K12, K13, \
|
K10, K11, K12, K13, \
|
||||||
K20, K21, K22, K23, \
|
K20, K21, K22, K23, \
|
||||||
|
@ -15,4 +14,3 @@
|
||||||
{ K30, K31, K32, K33 } \
|
{ K30, K31, K32, K33 } \
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
|
File diff suppressed because one or more lines are too long
29
keyboards/crawlpad/info.json
Normal file
29
keyboards/crawlpad/info.json
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
{
|
||||||
|
"keyboard_name": "Crawlpad",
|
||||||
|
"url": "",
|
||||||
|
"maintainer": "colemarkham",
|
||||||
|
"width": 4,
|
||||||
|
"height": 4,
|
||||||
|
"layouts": {
|
||||||
|
"LAYOUT_ortho_4x4": {
|
||||||
|
"layout": [
|
||||||
|
{"label":"7", "x":0, "y":0},
|
||||||
|
{"label":"8", "x":1, "y":0},
|
||||||
|
{"label":"9", "x":2, "y":0},
|
||||||
|
{"label":"+", "x":3, "y":0},
|
||||||
|
{"label":"4", "x":0, "y":1},
|
||||||
|
{"label":"5", "x":1, "y":1},
|
||||||
|
{"label":"6", "x":2, "y":1},
|
||||||
|
{"label":"-", "x":3, "y":1},
|
||||||
|
{"label":"1", "x":0, "y":2},
|
||||||
|
{"label":"2", "x":1, "y":2},
|
||||||
|
{"label":"3", "x":2, "y":2},
|
||||||
|
{"label":"*", "x":3, "y":2},
|
||||||
|
{"label":"Fn", "x":0, "y":3},
|
||||||
|
{"label":"0", "x":1, "y":3},
|
||||||
|
{"label":".", "x":2, "y":3},
|
||||||
|
{"label":"Enter", "x":3, "y":3}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
#include "../../crawlpad.h"
|
#include QMK_KEYBOARD_H
|
||||||
|
|
||||||
enum custom_keycodes {
|
enum custom_keycodes {
|
||||||
BL1 = SAFE_RANGE,
|
BL1 = SAFE_RANGE,
|
||||||
|
@ -11,17 +11,19 @@ const uint8_t LED_PINS[] = LED_ROW_PINS;
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
|
||||||
KEYMAP(
|
[0] = LAYOUT_ortho_4x4(
|
||||||
KC_P7, KC_P8, KC_P9, KC_PPLS,
|
KC_P7, KC_P8, KC_P9, KC_PPLS,
|
||||||
KC_P4, KC_P5, KC_P6, KC_PMNS,
|
KC_P4, KC_P5, KC_P6, KC_PMNS,
|
||||||
KC_P1, KC_P2, KC_P3, KC_PAST,
|
KC_P1, KC_P2, KC_P3, KC_PAST,
|
||||||
MO(1), KC_P0, KC_PDOT, KC_ENT),
|
MO(1), KC_P0, KC_PDOT, KC_ENT
|
||||||
|
),
|
||||||
|
|
||||||
KEYMAP(
|
[1] = LAYOUT_ortho_4x4(
|
||||||
KC_NLCK, BL1, KC_TRNS, KC_PSLS,
|
KC_NLCK, BL1, KC_TRNS, KC_PSLS,
|
||||||
RESET, BL2, KC_TRNS, KC_TRNS,
|
RESET, BL2, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, BL3, KC_TRNS, KC_TRNS,
|
KC_TRNS, BL3, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, BL4, KC_TRNS, KC_TRNS),
|
KC_TRNS, BL4, KC_TRNS, KC_TRNS
|
||||||
|
),
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -35,19 +37,6 @@ void set_led(int idx, bool enable) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
|
|
||||||
return MACRO_NONE ;
|
|
||||||
}
|
|
||||||
|
|
||||||
void matrix_init_user(void) {
|
|
||||||
/* set LED row pins to output and low */
|
|
||||||
DDRB |= (1 << 4) | (1 << 5) | (1 << 6) | (1 << 7);
|
|
||||||
PORTB &= ~(1 << 4) & ~(1 << 5) & ~(1 << 6) & ~(1 << 7);
|
|
||||||
}
|
|
||||||
|
|
||||||
void matrix_scan_user(void) {
|
|
||||||
}
|
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||||
switch (keycode) {
|
switch (keycode) {
|
||||||
case BL1:
|
case BL1:
|
||||||
|
@ -82,6 +71,15 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void matrix_init_user(void) {
|
||||||
|
/* set LED row pins to output and low */
|
||||||
|
DDRB |= (1 << 4) | (1 << 5) | (1 << 6) | (1 << 7);
|
||||||
|
PORTB &= ~(1 << 4) & ~(1 << 5) & ~(1 << 6) & ~(1 << 7);
|
||||||
|
}
|
||||||
|
|
||||||
|
void matrix_scan_user(void) {
|
||||||
|
}
|
||||||
|
|
||||||
void led_set_user(uint8_t usb_led) {
|
void led_set_user(uint8_t usb_led) {
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_NUM_LOCK)) {
|
if (usb_led & (1 << USB_LED_NUM_LOCK)) {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# Crawlpad
|
# Crawlpad
|
||||||
|
|
||||||
![Crawlpad](https://imgur.com/8BnztWo)
|
![Crawlpad](https://i.imgur.com/8BnztWo.jpg)
|
||||||
|
|
||||||
A 4x4 macropad/numpad, exclusively availabe at Keycrawl events.
|
A 4x4 macropad/numpad, exclusively availabe at Keycrawl events.
|
||||||
|
|
||||||
|
@ -12,6 +12,4 @@ Make example for this keyboard (after setting up your build environment):
|
||||||
|
|
||||||
make crawlpad:default
|
make crawlpad:default
|
||||||
|
|
||||||
See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information.
|
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
||||||
|
|
||||||
For those that prefer a GUI tool, the crawlpad.json file in this repo can be used on [kbfirmware.com](http://kbfirmware.com).
|
|
||||||
|
|
|
@ -44,13 +44,15 @@ OPT_DEFS += -DBOOTLOADER_SIZE=4096
|
||||||
# Build Options
|
# Build Options
|
||||||
# comment out to disable the options.
|
# comment out to disable the options.
|
||||||
#
|
#
|
||||||
BOOTMAGIC_ENABLE ?= no # Virtual DIP switch configuration(+1000)
|
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
|
||||||
MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700)
|
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
|
||||||
EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450)
|
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
|
||||||
CONSOLE_ENABLE ?= no # Console for debug(+400)
|
CONSOLE_ENABLE = no # Console for debug(+400)
|
||||||
COMMAND_ENABLE ?= no # Commands for debug and configuration
|
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||||
SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend
|
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
||||||
NKRO_ENABLE ?= yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||||
BACKLIGHT_ENABLE ?= no # [Crawlpad] Custom backlighting code is used, so this should not be enabled
|
BACKLIGHT_ENABLE = no # [Crawlpad] Custom backlighting code is used, so this should not be enabled
|
||||||
AUDIO_ENABLE ?= no # [Crawlpad] This can be enabled if a speaker is connected to the expansion port. Not compatible with RGBLIGHT below
|
AUDIO_ENABLE = no # [Crawlpad] This can be enabled if a speaker is connected to the expansion port. Not compatible with RGBLIGHT below
|
||||||
RGBLIGHT_ENABLE ?= no # [Crawlpad] This can be enabled if a ws2812 strip is connected to the expansion port.
|
RGBLIGHT_ENABLE = no # [Crawlpad] This can be enabled if a ws2812 strip is connected to the expansion port.
|
||||||
|
|
||||||
|
LAYOUTS = ortho_4x4
|
||||||
|
|
Loading…
Reference in a new issue