1
0
Fork 0
forked from forks/qmk_firmware

[Keyboard] Clean up contra & move to data-driven (#19973)

Co-authored-by: Joel Challis <git@zvecr.com>
This commit is contained in:
Albert Y 2023-03-02 01:53:31 +08:00 committed by GitHub
parent f6390892e3
commit 80c6fbad1c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 135 additions and 73 deletions

View file

@ -1,15 +0,0 @@
#pragma once
/* key matrix pins */
#define MATRIX_ROW_PINS { F6, B3, B2, B6 }
#define MATRIX_COL_PINS { F4, F5, B5, B4, E6, D7, C6, D4, D0, D1, D2, D3 }
/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

View file

@ -1 +0,0 @@
#include "contra.h"

View file

@ -1,27 +0,0 @@
#pragma once
#include "quantum.h"
#define LAYOUT_ortho_4x12( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B \
) { \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B } \
}
#define LAYOUT_planck_mit( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \
k30, k31, k32, k33, k34, k35, k37, k38, k39, k3A, k3B \
) { \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \
{ k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3A, k3B } \
}

View file

@ -3,6 +3,12 @@
"manufacturer": "Cartel",
"url": "",
"maintainer": "qmk",
"features": {
"bootmagic": true,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"usb": {
"vid": "0x4354",
"pid": "0x0001",
@ -10,14 +16,122 @@
},
"processor": "atmega32u4",
"bootloader": "caterina",
"diode_direction": "COL2ROW",
"matrix_pins": {
"cols": ["F4", "F5", "B5", "B4", "E6", "D7", "C6", "D4", "D0", "D1", "D2", "D3"],
"rows": ["F6", "B3", "B2", "B6"]
},
"community_layouts": ["planck_mit", "ortho_4x12"],
"layouts": {
"LAYOUT_ortho_4x12": {
"layout": [{"label":"Tab", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Back Space", "x":11, "y":0}, {"label":"Esc", "x":0, "y":1}, {"label":"A", "x":1, "y":1}, {"label":"S", "x":2, "y":1}, {"label":"D", "x":3, "y":1}, {"label":"F", "x":4, "y":1}, {"label":"G", "x":5, "y":1}, {"label":"H", "x":6, "y":1}, {"label":"J", "x":7, "y":1}, {"label":"K", "x":8, "y":1}, {"label":"L", "x":9, "y":1}, {"label":";", "x":10, "y":1}, {"label":"'", "x":11, "y":1}, {"label":"Shift", "x":0, "y":2}, {"label":"Z", "x":1, "y":2}, {"label":"X", "x":2, "y":2}, {"label":"C", "x":3, "y":2}, {"label":"V", "x":4, "y":2}, {"label":"B", "x":5, "y":2}, {"label":"N", "x":6, "y":2}, {"label":"M", "x":7, "y":2}, {"label":",", "x":8, "y":2}, {"label":".", "x":9, "y":2}, {"label":"/", "x":10, "y":2}, {"label":"Return", "x":11, "y":2}, {"x":0, "y":3}, {"label":"Ctrl", "x":1, "y":3}, {"label":"Alt", "x":2, "y":3}, {"label":"Super", "x":3, "y":3}, {"label":"&dArr;", "x":4, "y":3}, {"x":5, "y":3}, {"x":6, "y":3}, {"label":"&uArr;", "x":7, "y":3}, {"label":"&larr;", "x":8, "y":3}, {"label":"&darr;", "x":9, "y":3}, {"label":"&uarr;", "x":10, "y":3}, {"label":"&rarr;", "x":11, "y":3}]
"layout": [
{"label":"Tab", "matrix": [0, 0], "x":0, "y":0},
{"label":"Q", "matrix": [0, 1], "x":1, "y":0},
{"label":"W", "matrix": [0, 2], "x":2, "y":0},
{"label":"E", "matrix": [0, 3], "x":3, "y":0},
{"label":"R", "matrix": [0, 4], "x":4, "y":0},
{"label":"T", "matrix": [0, 5], "x":5, "y":0},
{"label":"Y", "matrix": [0, 6], "x":6, "y":0},
{"label":"U", "matrix": [0, 7], "x":7, "y":0},
{"label":"I", "matrix": [0, 8], "x":8, "y":0},
{"label":"O", "matrix": [0, 9], "x":9, "y":0},
{"label":"P", "matrix": [0, 10], "x":10, "y":0},
{"label":"BackSpace", "matrix": [0, 11], "x":11, "y":0},
{"label":"Esc", "matrix": [1, 0], "x":0, "y":1},
{"label":"A", "matrix": [1, 1], "x":1, "y":1},
{"label":"S", "matrix": [1, 2], "x":2, "y":1},
{"label":"D", "matrix": [1, 3], "x":3, "y":1},
{"label":"F", "matrix": [1, 4], "x":4, "y":1},
{"label":"G", "matrix": [1, 5], "x":5, "y":1},
{"label":"H", "matrix": [1, 6], "x":6, "y":1},
{"label":"J", "matrix": [1, 7], "x":7, "y":1},
{"label":"K", "matrix": [1, 8], "x":8, "y":1},
{"label":"L", "matrix": [1, 9], "x":9, "y":1},
{"label":";", "matrix": [1, 10], "x":10, "y":1},
{"label":"'", "matrix": [1, 11], "x":11, "y":1},
{"label":"Shift", "matrix": [2, 0], "x":0, "y":2},
{"label":"Z", "matrix": [2, 1], "x":1, "y":2},
{"label":"X", "matrix": [2, 2], "x":2, "y":2},
{"label":"C", "matrix": [2, 3], "x":3, "y":2},
{"label":"V", "matrix": [2, 4], "x":4, "y":2},
{"label":"B", "matrix": [2, 5], "x":5, "y":2},
{"label":"N", "matrix": [2, 6], "x":6, "y":2},
{"label":"M", "matrix": [2, 7], "x":7, "y":2},
{"label":",", "matrix": [2, 8], "x":8, "y":2},
{"label":".", "matrix": [2, 9], "x":9, "y":2},
{"label":"/", "matrix": [2, 10], "x":10, "y":2},
{"label":"Return", "matrix": [2, 11], "x":11, "y":2},
{"matrix": [3, 0], "x":0, "y":3},
{"label":"Ctrl", "matrix": [3, 1], "x":1, "y":3},
{"label":"Alt", "matrix": [3, 2], "x":2, "y":3},
{"label":"Super", "matrix": [3, 3], "x":3, "y":3},
{"label":"&dArr;", "matrix": [3, 4], "x":4, "y":3},
{"matrix": [3, 5], "x":5, "y":3},
{"matrix": [3, 6], "x":6, "y":3},
{"label":"&uArr;", "matrix": [3, 7], "x":7, "y":3},
{"label":"&larr;", "matrix": [3, 8], "x":8, "y":3},
{"label":"&darr;", "matrix": [3, 9], "x":9, "y":3},
{"label":"&uarr;", "matrix": [3, 10], "x":10, "y":3},
{"label":"&rarr;", "matrix": [3, 11], "x":11, "y":3}
]
},
"LAYOUT_planck_mit": {
"layout": [{"label":"Tab", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Back Space", "x":11, "y":0}, {"label":"Esc", "x":0, "y":1}, {"label":"A", "x":1, "y":1}, {"label":"S", "x":2, "y":1}, {"label":"D", "x":3, "y":1}, {"label":"F", "x":4, "y":1}, {"label":"G", "x":5, "y":1}, {"label":"H", "x":6, "y":1}, {"label":"J", "x":7, "y":1}, {"label":"K", "x":8, "y":1}, {"label":"L", "x":9, "y":1}, {"label":";", "x":10, "y":1}, {"label":"'", "x":11, "y":1}, {"label":"Shift", "x":0, "y":2}, {"label":"Z", "x":1, "y":2}, {"label":"X", "x":2, "y":2}, {"label":"C", "x":3, "y":2}, {"label":"V", "x":4, "y":2}, {"label":"B", "x":5, "y":2}, {"label":"N", "x":6, "y":2}, {"label":"M", "x":7, "y":2}, {"label":",", "x":8, "y":2}, {"label":".", "x":9, "y":2}, {"label":"/", "x":10, "y":2}, {"label":"Return", "x":11, "y":2}, {"x":0, "y":3}, {"label":"Ctrl", "x":1, "y":3}, {"label":"Alt", "x":2, "y":3}, {"label":"Super", "x":3, "y":3}, {"label":"&dArr;", "x":4, "y":3}, {"x":5, "y":3, "w":2}, {"label":"&uArr;", "x":7, "y":3}, {"label":"&larr;", "x":8, "y":3}, {"label":"&darr;", "x":9, "y":3}, {"label":"&uarr;", "x":10, "y":3}, {"label":"&rarr;", "x":11, "y":3}]
"layout": [
{"label":"Tab", "matrix": [0, 0], "x":0, "y":0},
{"label":"Q", "matrix": [0, 1], "x":1, "y":0},
{"label":"W", "matrix": [0, 2], "x":2, "y":0},
{"label":"E", "matrix": [0, 3], "x":3, "y":0},
{"label":"R", "matrix": [0, 4], "x":4, "y":0},
{"label":"T", "matrix": [0, 5], "x":5, "y":0},
{"label":"Y", "matrix": [0, 6], "x":6, "y":0},
{"label":"U", "matrix": [0, 7], "x":7, "y":0},
{"label":"I", "matrix": [0, 8], "x":8, "y":0},
{"label":"O", "matrix": [0, 9], "x":9, "y":0},
{"label":"P", "matrix": [0, 10], "x":10, "y":0},
{"label":"BackSpace", "matrix": [0, 11], "x":11, "y":0},
{"label":"Esc", "matrix": [1, 0], "x":0, "y":1},
{"label":"A", "matrix": [1, 1], "x":1, "y":1},
{"label":"S", "matrix": [1, 2], "x":2, "y":1},
{"label":"D", "matrix": [1, 3], "x":3, "y":1},
{"label":"F", "matrix": [1, 4], "x":4, "y":1},
{"label":"G", "matrix": [1, 5], "x":5, "y":1},
{"label":"H", "matrix": [1, 6], "x":6, "y":1},
{"label":"J", "matrix": [1, 7], "x":7, "y":1},
{"label":"K", "matrix": [1, 8], "x":8, "y":1},
{"label":"L", "matrix": [1, 9], "x":9, "y":1},
{"label":";", "matrix": [1, 10], "x":10, "y":1},
{"label":"'", "matrix": [1, 11], "x":11, "y":1},
{"label":"Shift", "matrix": [2, 0], "x":0, "y":2},
{"label":"Z", "matrix": [2, 1], "x":1, "y":2},
{"label":"X", "matrix": [2, 2], "x":2, "y":2},
{"label":"C", "matrix": [2, 3], "x":3, "y":2},
{"label":"V", "matrix": [2, 4], "x":4, "y":2},
{"label":"B", "matrix": [2, 5], "x":5, "y":2},
{"label":"N", "matrix": [2, 6], "x":6, "y":2},
{"label":"M", "matrix": [2, 7], "x":7, "y":2},
{"label":",", "matrix": [2, 8], "x":8, "y":2},
{"label":".", "matrix": [2, 9], "x":9, "y":2},
{"label":"/", "matrix": [2, 10], "x":10, "y":2},
{"label":"Return", "matrix": [2, 11], "x":11, "y":2},
{"matrix": [3, 0], "x":0, "y":3},
{"label":"Ctrl", "matrix": [3, 1], "x":1, "y":3},
{"label":"Alt", "matrix": [3, 2], "x":2, "y":3},
{"label":"Super", "matrix": [3, 3], "x":3, "y":3},
{"label":"&dArr;", "matrix": [3, 4], "x":4, "y":3},
{"matrix": [3, 5], "x":5, "y":3},
{"label":"&uArr;", "matrix": [3, 7], "x":7, "y":3},
{"label":"&larr;", "matrix": [3, 8], "x":8, "y":3},
{"label":"&darr;", "matrix": [3, 9], "x":9, "y":3},
{"label":"&uarr;", "matrix": [3, 10], "x":10, "y":3},
{"label":"&rarr;", "matrix": [3, 11], "x":11, "y":3}
]
}
}
}

View file

@ -1,3 +1,6 @@
// Copyright QMK Community
// SPDX-License-Identifier: GPL-2.0+
#pragma once

View file

@ -1,16 +1,21 @@
CONTRA
======
# Contra
![CONTRA](https://cartel.ltd/wp-content/uploads/2018/01/img_3209.jpg)
Contra is a low cost 40% keyboard.
A 40% keyboard by [CARTEL](https://cartel.ltd/)
Keyboard Maintainer: The QMK Community
Hardware Supported: CONTRA
Hardware Availability: [CARTEL](https://cartel.ltd/projects/contra/)
* Keyboard Maintainer: The QMK Community
* Hardware Supported: [Contra](https://github.com/ai03-2725/Contra)
* Hardware Availability: PCB sold by various vendors
Make example for this keyboard (after setting up your build environment):
make contra:dana
make contra: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).
## Bootloader
Enter the bootloader in 3 ways:
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is configured.
* **Physical reset button**: Briefly press the reset button soldered on the PCB.
* **Bootmagic reset**: Hold down the top left key and plug in the controller.

View file

@ -1,18 +1 @@
# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
LAYOUTS_HAS_RGB = no
# Disable unsupported hardware
RGBLIGHT_SUPPORTED = no
AUDIO_SUPPORTED = no
BACKLIGHT_SUPPORTED = no
# This file intentionally left blank