From 2f8f26b1e0b538bf407dc71efc1dc80bd10ab206 Mon Sep 17 00:00:00 2001 From: MechMerlin <30334081+mechmerlin@users.noreply.github.com> Date: Mon, 25 Jun 2018 08:11:29 -0700 Subject: [PATCH] Add QMK Configurator Support for ORG60 (#3228) * Add additional readme notes on how to fix the flickering backlight issue * Add QMK Configurator support --- keyboards/org60/info.json | 12 ++++++++++++ keyboards/org60/keymaps/boardy/keymap.c | 6 +++--- keyboards/org60/keymaps/default/keymap.c | 6 +++--- keyboards/org60/org60.h | 2 +- keyboards/org60/readme.md | 8 +++++++- 5 files changed, 26 insertions(+), 8 deletions(-) create mode 100644 keyboards/org60/info.json diff --git a/keyboards/org60/info.json b/keyboards/org60/info.json new file mode 100644 index 0000000000..79449baa05 --- /dev/null +++ b/keyboards/org60/info.json @@ -0,0 +1,12 @@ +{ + "keyboard_name": "", + "url": "", + "maintainer": "qmk", + "width": 15, + "height": 5, + "layouts": { + "LAYOUT": { + "layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":2.75}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}] + } + } +} \ No newline at end of file diff --git a/keyboards/org60/keymaps/boardy/keymap.c b/keyboards/org60/keymaps/boardy/keymap.c index 635838f6cf..43994f189f 100644 --- a/keyboards/org60/keymaps/boardy/keymap.c +++ b/keyboards/org60/keymaps/boardy/keymap.c @@ -1,4 +1,4 @@ -#include "org60.h" +#include QMK_KEYBOARD_H #include "action_layer.h" // Keyboard Layers @@ -9,7 +9,7 @@ enum keyboard_layers { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = KEYMAP( + [_BASE] = LAYOUT( /* 0: Base Layer .--------------------------------------------------------------------------------------------------------------------------------------. @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //--------------------------------------------------------------------------------------------------------------------------------------' - [_FUNCTION] = KEYMAP( + [_FUNCTION] = LAYOUT( /* 1: Function Layer .--------------------------------------------------------------------------------------------------------------------------------------. diff --git a/keyboards/org60/keymaps/default/keymap.c b/keyboards/org60/keymaps/default/keymap.c index 9d18d50e31..ebb377d1dd 100644 --- a/keyboards/org60/keymaps/default/keymap.c +++ b/keyboards/org60/keymaps/default/keymap.c @@ -1,10 +1,10 @@ -#include "org60.h" +#include QMK_KEYBOARD_H #include "action_layer.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // 0: Base Layer - KEYMAP( + LAYOUT( KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC , KC_NO, \ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT, \ @@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, F(0), KC_LEFT, KC_DOWN, KC_RIGHT), // 1: Function Layer - KEYMAP( + LAYOUT( RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, \ KC_NO, KC_WH_U, KC_UP, KC_WH_D, KC_BSPC,KC_HOME,KC_CALC,KC_NO, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, \ KC_NO, KC_LEFT, KC_DOWN, KC_RIGHT,KC_DEL, KC_END, KC_PGDN,KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, \ diff --git a/keyboards/org60/org60.h b/keyboards/org60/org60.h index 7c10043429..372fba4403 100644 --- a/keyboards/org60/org60.h +++ b/keyboards/org60/org60.h @@ -20,7 +20,7 @@ inline void org60_caps_led_off(void) { DDRB &= ~(1<<2); PORTB &= ~(1<<2); } inline void org60_bl_led_off(void) { DDRF &= ~(1<<5); PORTF &= ~(1<<5); } /* Org60 Keymap Definition Macro */ -#define KEYMAP( \ +#define LAYOUT( \ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K49, \ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, \ diff --git a/keyboards/org60/readme.md b/keyboards/org60/readme.md index 1a9599c8d8..98a1e0315d 100644 --- a/keyboards/org60/readme.md +++ b/keyboards/org60/readme.md @@ -6,16 +6,22 @@ ## Quantum MK Firmware For the full Quantum feature list, see [the parent readme.md](/readme.md). - ## Additional Notes + +### GH60 Variant The Org60 seems to be a variant of the XD60 (which is essentially a GH60 rev. C, with support for a right-hand arrow cluster), which has USB-C and built-in RGB underlighting. Compatibility with GH60 expansion boards is unknown. +### Support Board also supports in-switch LEDs (two-pin, single colour), as well as WS2182 LED strips for underglow lighting. Default keymap included, matching configuration on sale page. +### Backlight Issues +Taken from [r/mk](https://www.reddit.com/r/MechanicalKeyboards/comments/6xsd5c/modification_discovered_the_org60_pcb_has_a/) + +MOSFET that drives the in switch LEDs is not connected to a PWM pin. (It is connected to pin F5). Fix mentioned in reddit post re-routes to pin B5. You will have to change the pin to B5 in `config.h` ## Build To build the default keymap, simply run `make org60:default`. \ No newline at end of file