1
0
Fork 0

SixKeyBoard refactor (#3193)

* Refactor: create matrix macro

* Readme changes

* Configurator support
This commit is contained in:
noroadsleft 2018-06-16 08:02:11 -07:00 committed by Drashna Jaelre
parent 2435a52655
commit eccfb8d55e
4 changed files with 42 additions and 14 deletions

View file

@ -0,0 +1,12 @@
{
"keyboard_name": "Techkeys SixKeyBoard",
"url": "",
"maintainer": "qmk",
"width": 3,
"height": 2,
"layouts": {
"LAYOUT": {
"layout": [{"label":"k00", "x":0, "y":0}, {"label":"k01", "x":1, "y":0}, {"label":"k02", "x":2, "y":0}, {"label":"k10", "x":0, "y":1}, {"label":"k11", "x":1, "y":1}, {"label":"k12", "x":2, "y":1}]
}
}
}

View file

@ -1,12 +1,12 @@
#include "sixkeyboard.h" #include QMK_KEYBOARD_H
#include "matrix.h" #include "matrix.h"
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = { [0] = LAYOUT(
{KC_A, KC_B, KC_C}, KC_A, KC_B, KC_C, \
{KC_D, KC_E, KC_F} KC_D, KC_E, KC_F \
} )
}; };
const uint16_t PROGMEM fn_actions[] = { const uint16_t PROGMEM fn_actions[] = {

View file

@ -1,9 +1,9 @@
Techkeys SixKeyBoard Techkeys SixKeyBoard
=== ===
Keyboard Maintainer: QMK Community Keyboard Maintainer: QMK Community
Hardware Supported: Techkeys SixKeyBoard PCB Hardware Supported: Techkeys SixKeyBoard PCB
Hardware Availability: http://techkeys.us/collections/accessories/products/sixkeyboard Hardware Availability: [Techkeys](http://techkeys.us/collections/accessories/products/sixkeyboard)
Make example for this keyboard (after setting up your build environment): Make example for this keyboard (after setting up your build environment):

View file

@ -3,16 +3,32 @@
#include "quantum.h" #include "quantum.h"
// This macro is an example of using a non-standard row-column matrix. The // This macro is an example of using a non-standard row-column matrix. The
// keyboard in question had 11 rows and 8 columns, but the rows were not all // keyboard in question had 11 rows and 8 columns, but the rows were not all
// horizontal, and the columns were not all vertical. For example, row 2 // horizontal, and the columns were not all vertical. For example, row 2
// contained "Print Screen", "N", "M", ",", ".", "/", "Right Shift", and // contained "Print Screen", "N", "M", ",", ".", "/", "Right Shift", and
// "Left Alt". Column 0 contained "F6", "7", "O", "'", "Q", "D", "B", // "Left Alt". Column 0 contained "F6", "7", "O", "'", "Q", "D", "B",
// "Left Alt", "Up Arrow", and "Down Arrow". // "Left Alt", "Up Arrow", and "Down Arrow".
// //
// The macro makes programming the keys easier and in a more straight-forward // The macro makes programming the keys easier and in a more straight-forward
// manner because it realigns the keys into a 6x15 sensible keyboard layout // manner because it realigns the keys into a 6x15 sensible keyboard layout
// instead of the obtuse 11x8 matrix. // instead of the obtuse 11x8 matrix.
#endif /*
*
* A B C
*
* D E F
*
*/
#define LAYOUT( \
k00, k01, k02, \
k10, k11, k12 \
) { \
{ k00, k01, k02 }, \
{ k10, k11, k12 } \
}
#endif