From e27e858e421a5b36efcd0af2edf31ad7311ef717 Mon Sep 17 00:00:00 2001 From: Steven Karrmann Date: Sat, 9 Oct 2021 19:06:43 -0400 Subject: [PATCH 01/12] Define Horizon keyboard --- keyboards/horizon/config.h | 46 +++++++++++++++ keyboards/horizon/horizon.c | 17 ++++++ keyboards/horizon/horizon.h | 41 ++++++++++++++ keyboards/horizon/info.json | 65 ++++++++++++++++++++++ keyboards/horizon/keymaps/default/keymap.c | 47 ++++++++++++++++ keyboards/horizon/readme.md | 19 +++++++ keyboards/horizon/rules.mk | 32 +++++++++++ 7 files changed, 267 insertions(+) create mode 100644 keyboards/horizon/config.h create mode 100644 keyboards/horizon/horizon.c create mode 100644 keyboards/horizon/horizon.h create mode 100644 keyboards/horizon/info.json create mode 100644 keyboards/horizon/keymaps/default/keymap.c create mode 100644 keyboards/horizon/readme.md create mode 100644 keyboards/horizon/rules.mk diff --git a/keyboards/horizon/config.h b/keyboards/horizon/config.h new file mode 100644 index 000000000000..8abc3b131b3b --- /dev/null +++ b/keyboards/horizon/config.h @@ -0,0 +1,46 @@ +/* +Copyright 2021 Steven Karrmann + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x0000 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Steven Karrmann +#define PRODUCT Horizon + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 14 + +#define MATRIX_ROW_PINS { D3, D2, D1, F4 } +#define MATRIX_COL_PINS { F5, F6, F7, B1, B3, B2, B6, B5, B4, E6, D7, C6, D4, D0 } +#define UNUSED_PINS { } + +#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 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION diff --git a/keyboards/horizon/horizon.c b/keyboards/horizon/horizon.c new file mode 100644 index 000000000000..08360325ec04 --- /dev/null +++ b/keyboards/horizon/horizon.c @@ -0,0 +1,17 @@ +/* Copyright 2021 Steven Karrmann + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "horizon.h" diff --git a/keyboards/horizon/horizon.h b/keyboards/horizon/horizon.h new file mode 100644 index 000000000000..01d168257e88 --- /dev/null +++ b/keyboards/horizon/horizon.h @@ -0,0 +1,41 @@ +/* Copyright 2021 Steven Karrmann + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ + +#define LAYOUT( \ + 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, k2c, k2d, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d \ +) \ +{ \ + { k00, k01, k02, k03, k04, k05, KC_NO, KC_NO, k06, k07, k08, k09, k0a, k0b }, \ + { k10, k11, k12, k13, k14, k15, KC_NO, KC_NO, k16, k17, k18, k19, k1a, k1b }, \ + { k20, k21, k22, k23, k24, k25, k26 , k27 , k28, k29, k2a, k2b, k2c, k2d }, \ + { k30, k31, k32, k33, k34, k35, k36 , k37 , k38, k39, k3a, k3b, k3c, k3d } \ +} diff --git a/keyboards/horizon/info.json b/keyboards/horizon/info.json new file mode 100644 index 000000000000..675933a5aac7 --- /dev/null +++ b/keyboards/horizon/info.json @@ -0,0 +1,65 @@ +{ + "keyboard_name": "Horizon", + "url": "https://github.com/skarrmann/horizon", + "maintainer": "Steven Karrmann", + "width": 14, + "height": 4, + "layouts": { + "LAYOUT": { + "layout": [ + { "w": 1, "x": 0, "y": 0 }, + { "w": 1, "x": 1, "y": 0 }, + { "w": 1, "x": 2, "y": 0 }, + { "w": 1, "x": 3, "y": 0 }, + { "w": 1, "x": 4, "y": 0 }, + { "w": 1, "x": 5, "y": 0 }, + { "w": 1, "x": 8, "y": 0 }, + { "w": 1, "x": 9, "y": 0 }, + { "w": 1, "x": 10, "y": 0 }, + { "w": 1, "x": 11, "y": 0 }, + { "w": 1, "x": 12, "y": 0 }, + { "w": 1, "x": 13, "y": 0 }, + { "w": 1, "x": 0, "y": 1 }, + { "w": 1, "x": 1, "y": 1 }, + { "w": 1, "x": 2, "y": 1 }, + { "w": 1, "x": 3, "y": 1 }, + { "w": 1, "x": 4, "y": 1 }, + { "w": 1, "x": 5, "y": 1 }, + { "w": 1, "x": 8, "y": 1 }, + { "w": 1, "x": 9, "y": 1 }, + { "w": 1, "x": 10, "y": 1 }, + { "w": 1, "x": 11, "y": 1 }, + { "w": 1, "x": 12, "y": 1 }, + { "w": 1, "x": 13, "y": 1 }, + { "w": 1, "x": 0, "y": 2 }, + { "w": 1, "x": 1, "y": 2 }, + { "w": 1, "x": 2, "y": 2 }, + { "w": 1, "x": 3, "y": 2 }, + { "w": 1, "x": 4, "y": 2 }, + { "w": 1, "x": 5, "y": 2 }, + { "w": 1, "x": 6, "y": 2 }, + { "w": 1, "x": 7, "y": 2 }, + { "w": 1, "x": 8, "y": 2 }, + { "w": 1, "x": 9, "y": 2 }, + { "w": 1, "x": 10, "y": 2 }, + { "w": 1, "x": 11, "y": 2 }, + { "w": 1, "x": 12, "y": 2 }, + { "w": 1, "x": 13, "y": 2 }, + { "w": 1, "x": 0, "y": 3 }, + { "w": 1, "x": 1, "y": 3 }, + { "w": 1, "x": 2, "y": 3 }, + { "w": 1, "x": 3, "y": 3 }, + { "w": 1, "x": 4, "y": 3 }, + { "w": 1, "x": 5, "y": 3 }, + { "w": 1, "x": 6, "y": 3 }, + { "w": 1, "x": 7, "y": 3 }, + { "w": 1, "x": 8, "y": 3 }, + { "w": 1, "x": 9, "y": 3 }, + { "w": 1, "x": 10, "y": 3 }, + { "w": 1, "x": 11, "y": 3 }, + { "w": 1, "x": 12, "y": 3 }, + { "w": 1, "x": 13, "y": 3 } + ] + } + } +} diff --git a/keyboards/horizon/keymaps/default/keymap.c b/keyboards/horizon/keymaps/default/keymap.c new file mode 100644 index 000000000000..3ea3fe073923 --- /dev/null +++ b/keyboards/horizon/keymaps/default/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2021 Steven Karrmann + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _SYMBOL, + _FUNCTION +}; + +#define MO_SYMB MO(_SYMBOL) +#define MO_FUNC MO(_FUNCTION) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( + KC_GRV , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_MINS, + KC_EQL , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_ESC , KC_ENT , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, + KC_LCTL, KC_LALT, KC_LGUI, KC_APP , KC_DEL , KC_TAB , MO_SYMB, MO_FUNC, KC_SPC , KC_BSPC, KC_APP , KC_RGUI, KC_RALT, KC_RCTL + ), + [_SYMBOL] = LAYOUT( + KC_TILD, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_UNDS, + KC_PLUS, KC_EXLM, KC_LPRN, KC_RPRN, KC_DLR , KC_AMPR, KC_PIPE, KC_EQL , KC_LCBR, KC_RCBR, KC_COLN, KC_DQUO, + _______, KC_AT , KC_LBRC, KC_RBRC, KC_HASH, KC_PERC, _______, _______, KC_CIRC, KC_ASTR, KC_LABK, KC_RABK, KC_QUES, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_FUNCTION] = LAYOUT( + _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_PSCR, KC_SLCK, KC_HOME, KC_PGDN, KC_PGUP, KC_END , _______, + _______, KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_INS , KC_CLCK, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, _______, + _______, KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, EEP_RST, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; \ No newline at end of file diff --git a/keyboards/horizon/readme.md b/keyboards/horizon/readme.md new file mode 100644 index 000000000000..51b13c3266f5 --- /dev/null +++ b/keyboards/horizon/readme.md @@ -0,0 +1,19 @@ +# Horizon + +![Horizon](https://i.imgur.com/zR0wnA6.jpg) + +A simple 52-key (14x4) ortholinear keyboard, powered by an Arduino Pro Micro. + +* Keyboard Maintainer: [Steven Karrmann](https://github.com/skarrmann) +* Hardware Supported: Horizon PCBs +* Hardware Availability: [Horizon GitHub repository](https://github.com/skarrmann/horizon) + +Make example for this keyboard (after setting up your build environment): + + make horizon:default + +Flashing example for this keyboard: + + make horizon:default:flash + +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). diff --git a/keyboards/horizon/rules.mk b/keyboards/horizon/rules.mk new file mode 100644 index 000000000000..79f2fe9210f7 --- /dev/null +++ b/keyboards/horizon/rules.mk @@ -0,0 +1,32 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +# Teensy halfkay +# Pro Micro caterina +# Atmel DFU atmel-dfu +# LUFA DFU lufa-dfu +# QMK DFU qmk-dfu +# ATmega32A bootloadHID +# ATmega328P USBasp +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +COMMAND_ENABLE = no # Commands for debug and configuration +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE = no # USB Nkey Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +BLUETOOTH_ENABLE = no # Enable Bluetooth +AUDIO_ENABLE = no # Audio output +OLED_DRIVER_ENABLE = no # OLED screen + +# Debugging +CONSOLE_ENABLE = yes From deebd7c11c837168abcf61c636869505e60e7ece Mon Sep 17 00:00:00 2001 From: Steven Karrmann Date: Sat, 9 Oct 2021 19:25:53 -0400 Subject: [PATCH 02/12] Set indentation according to QMK coding convention --- keyboards/horizon/horizon.h | 16 ++++----- keyboards/horizon/keymaps/default/keymap.c | 42 +++++++++++----------- 2 files changed, 29 insertions(+), 29 deletions(-) diff --git a/keyboards/horizon/horizon.h b/keyboards/horizon/horizon.h index 01d168257e88..99577ebf9105 100644 --- a/keyboards/horizon/horizon.h +++ b/keyboards/horizon/horizon.h @@ -28,14 +28,14 @@ */ #define LAYOUT( \ - 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, k2c, k2d, \ - k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d \ + 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, k2c, k2d, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d \ ) \ { \ - { k00, k01, k02, k03, k04, k05, KC_NO, KC_NO, k06, k07, k08, k09, k0a, k0b }, \ - { k10, k11, k12, k13, k14, k15, KC_NO, KC_NO, k16, k17, k18, k19, k1a, k1b }, \ - { k20, k21, k22, k23, k24, k25, k26 , k27 , k28, k29, k2a, k2b, k2c, k2d }, \ - { k30, k31, k32, k33, k34, k35, k36 , k37 , k38, k39, k3a, k3b, k3c, k3d } \ + { k00, k01, k02, k03, k04, k05, KC_NO, KC_NO, k06, k07, k08, k09, k0a, k0b }, \ + { k10, k11, k12, k13, k14, k15, KC_NO, KC_NO, k16, k17, k18, k19, k1a, k1b }, \ + { k20, k21, k22, k23, k24, k25, k26 , k27 , k28, k29, k2a, k2b, k2c, k2d }, \ + { k30, k31, k32, k33, k34, k35, k36 , k37 , k38, k39, k3a, k3b, k3c, k3d } \ } diff --git a/keyboards/horizon/keymaps/default/keymap.c b/keyboards/horizon/keymaps/default/keymap.c index 3ea3fe073923..b7581db2c328 100644 --- a/keyboards/horizon/keymaps/default/keymap.c +++ b/keyboards/horizon/keymaps/default/keymap.c @@ -17,31 +17,31 @@ #include QMK_KEYBOARD_H enum layer_names { - _BASE, - _SYMBOL, - _FUNCTION + _BASE, + _SYMBOL, + _FUNCTION }; #define MO_SYMB MO(_SYMBOL) #define MO_FUNC MO(_FUNCTION) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT( - KC_GRV , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_MINS, - KC_EQL , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, - KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_ESC , KC_ENT , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, - KC_LCTL, KC_LALT, KC_LGUI, KC_APP , KC_DEL , KC_TAB , MO_SYMB, MO_FUNC, KC_SPC , KC_BSPC, KC_APP , KC_RGUI, KC_RALT, KC_RCTL - ), - [_SYMBOL] = LAYOUT( - KC_TILD, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_UNDS, - KC_PLUS, KC_EXLM, KC_LPRN, KC_RPRN, KC_DLR , KC_AMPR, KC_PIPE, KC_EQL , KC_LCBR, KC_RCBR, KC_COLN, KC_DQUO, - _______, KC_AT , KC_LBRC, KC_RBRC, KC_HASH, KC_PERC, _______, _______, KC_CIRC, KC_ASTR, KC_LABK, KC_RABK, KC_QUES, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), - [_FUNCTION] = LAYOUT( - _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_PSCR, KC_SLCK, KC_HOME, KC_PGDN, KC_PGUP, KC_END , _______, - _______, KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_INS , KC_CLCK, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, _______, - _______, KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, EEP_RST, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ) + [_BASE] = LAYOUT( + KC_GRV , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_MINS, + KC_EQL , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_ESC , KC_ENT , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, + KC_LCTL, KC_LALT, KC_LGUI, KC_APP , KC_DEL , KC_TAB , MO_SYMB, MO_FUNC, KC_SPC , KC_BSPC, KC_APP , KC_RGUI, KC_RALT, KC_RCTL + ), + [_SYMBOL] = LAYOUT( + KC_TILD, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_UNDS, + KC_PLUS, KC_EXLM, KC_LPRN, KC_RPRN, KC_DLR , KC_AMPR, KC_PIPE, KC_EQL , KC_LCBR, KC_RCBR, KC_COLN, KC_DQUO, + _______, KC_AT , KC_LBRC, KC_RBRC, KC_HASH, KC_PERC, _______, _______, KC_CIRC, KC_ASTR, KC_LABK, KC_RABK, KC_QUES, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_FUNCTION] = LAYOUT( + _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_PSCR, KC_SLCK, KC_HOME, KC_PGDN, KC_PGUP, KC_END , _______, + _______, KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_INS , KC_CLCK, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, _______, + _______, KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, EEP_RST, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) }; \ No newline at end of file From 7fa80961dd1b86b7e71ba3f6d6a0b4eadb5dc927 Mon Sep 17 00:00:00 2001 From: Steven Karrmann Date: Sat, 9 Oct 2021 19:36:49 -0400 Subject: [PATCH 03/12] Update horizon keyboard readme to satisfy current QMK template --- keyboards/horizon/readme.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/keyboards/horizon/readme.md b/keyboards/horizon/readme.md index 51b13c3266f5..185530c8c490 100644 --- a/keyboards/horizon/readme.md +++ b/keyboards/horizon/readme.md @@ -5,7 +5,7 @@ A simple 52-key (14x4) ortholinear keyboard, powered by an Arduino Pro Micro. * Keyboard Maintainer: [Steven Karrmann](https://github.com/skarrmann) -* Hardware Supported: Horizon PCBs +* Hardware Supported: Horizon PCBs, Arduino Pro Micro * Hardware Availability: [Horizon GitHub repository](https://github.com/skarrmann/horizon) Make example for this keyboard (after setting up your build environment): @@ -17,3 +17,11 @@ Flashing example for this keyboard: make horizon:default:flash 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: + +* **Bootmagic reset**: Hold down the top left key and plug in the keyboard. +* **Physical reset button**: Briefly press the button on the top center of the PCB. +* **Keycode in layout**: Press the key mapped to `RESET` if it is available. \ No newline at end of file From ea94563a0d238f67830c53f07d6a4df5a57926a2 Mon Sep 17 00:00:00 2001 From: Steven Karrmann Date: Sun, 10 Oct 2021 12:38:37 -0400 Subject: [PATCH 04/12] Use row-column order in horizon readme --- keyboards/horizon/readme.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/horizon/readme.md b/keyboards/horizon/readme.md index 185530c8c490..7999503fb521 100644 --- a/keyboards/horizon/readme.md +++ b/keyboards/horizon/readme.md @@ -2,7 +2,7 @@ ![Horizon](https://i.imgur.com/zR0wnA6.jpg) -A simple 52-key (14x4) ortholinear keyboard, powered by an Arduino Pro Micro. +A simple 52-key (4x14) ortholinear keyboard, powered by an Arduino Pro Micro. * Keyboard Maintainer: [Steven Karrmann](https://github.com/skarrmann) * Hardware Supported: Horizon PCBs, Arduino Pro Micro @@ -24,4 +24,4 @@ Enter the bootloader in 3 ways: * **Bootmagic reset**: Hold down the top left key and plug in the keyboard. * **Physical reset button**: Briefly press the button on the top center of the PCB. -* **Keycode in layout**: Press the key mapped to `RESET` if it is available. \ No newline at end of file +* **Keycode in layout**: Press the key mapped to `RESET` if it is available. From ad2e03a985fb523532af8d6f280f73a8036da614 Mon Sep 17 00:00:00 2001 From: Steven Karrmann Date: Mon, 11 Oct 2021 05:09:42 +0000 Subject: [PATCH 05/12] Update keyboards/horizon/rules.mk Co-authored-by: Drashna Jaelre --- keyboards/horizon/rules.mk | 7 ------- 1 file changed, 7 deletions(-) diff --git a/keyboards/horizon/rules.mk b/keyboards/horizon/rules.mk index 79f2fe9210f7..fcf40feff821 100644 --- a/keyboards/horizon/rules.mk +++ b/keyboards/horizon/rules.mk @@ -2,13 +2,6 @@ MCU = atmega32u4 # Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp BOOTLOADER = caterina # Build Options From c947207452086117c53fd060378b8e03e33aff9c Mon Sep 17 00:00:00 2001 From: Steven Karrmann Date: Mon, 11 Oct 2021 05:09:49 +0000 Subject: [PATCH 06/12] Update keyboards/horizon/rules.mk Co-authored-by: Drashna Jaelre --- keyboards/horizon/rules.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/horizon/rules.mk b/keyboards/horizon/rules.mk index fcf40feff821..078b76dca847 100644 --- a/keyboards/horizon/rules.mk +++ b/keyboards/horizon/rules.mk @@ -7,7 +7,7 @@ BOOTLOADER = caterina # Build Options # change yes to no to disable # -BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite MOUSEKEY_ENABLE = yes # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control COMMAND_ENABLE = no # Commands for debug and configuration From 160df635977f3b09dc7db88b15ea0831337f201b Mon Sep 17 00:00:00 2001 From: Steven Karrmann Date: Mon, 11 Oct 2021 05:17:56 +0000 Subject: [PATCH 07/12] Update keyboards/horizon/rules.mk Co-authored-by: Drashna Jaelre --- keyboards/horizon/rules.mk | 1 - 1 file changed, 1 deletion(-) diff --git a/keyboards/horizon/rules.mk b/keyboards/horizon/rules.mk index 078b76dca847..7d8e3cf2928c 100644 --- a/keyboards/horizon/rules.mk +++ b/keyboards/horizon/rules.mk @@ -19,7 +19,6 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow BLUETOOTH_ENABLE = no # Enable Bluetooth AUDIO_ENABLE = no # Audio output -OLED_DRIVER_ENABLE = no # OLED screen # Debugging CONSOLE_ENABLE = yes From cb2587aac57b5c8d102e587a683b5d8b78af592c Mon Sep 17 00:00:00 2001 From: Steven Karrmann Date: Mon, 11 Oct 2021 06:20:04 +0000 Subject: [PATCH 08/12] Update keyboards/horizon/rules.mk Co-authored-by: Ryan --- keyboards/horizon/rules.mk | 1 - 1 file changed, 1 deletion(-) diff --git a/keyboards/horizon/rules.mk b/keyboards/horizon/rules.mk index 7d8e3cf2928c..2291747ba4ab 100644 --- a/keyboards/horizon/rules.mk +++ b/keyboards/horizon/rules.mk @@ -17,7 +17,6 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend NKRO_ENABLE = no # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow -BLUETOOTH_ENABLE = no # Enable Bluetooth AUDIO_ENABLE = no # Audio output # Debugging From 68977d6b7d2002cfed154f003705ee96db4a9d19 Mon Sep 17 00:00:00 2001 From: Steven Karrmann Date: Mon, 11 Oct 2021 06:20:10 +0000 Subject: [PATCH 09/12] Update keyboards/horizon/rules.mk Co-authored-by: Ryan --- keyboards/horizon/rules.mk | 3 --- 1 file changed, 3 deletions(-) diff --git a/keyboards/horizon/rules.mk b/keyboards/horizon/rules.mk index 2291747ba4ab..0f0185715fd4 100644 --- a/keyboards/horizon/rules.mk +++ b/keyboards/horizon/rules.mk @@ -18,6 +18,3 @@ NKRO_ENABLE = no # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output - -# Debugging -CONSOLE_ENABLE = yes From 0b38fc4f0967d5de05f968c7452affc8080ddf6c Mon Sep 17 00:00:00 2001 From: Steven Karrmann Date: Mon, 11 Oct 2021 06:21:05 +0000 Subject: [PATCH 10/12] Update keyboards/horizon/rules.mk Co-authored-by: Ryan --- keyboards/horizon/rules.mk | 1 + 1 file changed, 1 insertion(+) diff --git a/keyboards/horizon/rules.mk b/keyboards/horizon/rules.mk index 0f0185715fd4..b484be6c0075 100644 --- a/keyboards/horizon/rules.mk +++ b/keyboards/horizon/rules.mk @@ -11,6 +11,7 @@ BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite MOUSEKEY_ENABLE = yes # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control COMMAND_ENABLE = no # Commands for debug and configuration +CONSOLE_ENABLE = yes # Console for debug # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend # if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work From 8ff6943273292e56347c8693217937aca76d3c9f Mon Sep 17 00:00:00 2001 From: Steven Karrmann Date: Mon, 11 Oct 2021 06:21:50 +0000 Subject: [PATCH 11/12] Update keyboards/horizon/info.json Co-authored-by: Ryan --- keyboards/horizon/info.json | 2 -- 1 file changed, 2 deletions(-) diff --git a/keyboards/horizon/info.json b/keyboards/horizon/info.json index 675933a5aac7..e648e3f15171 100644 --- a/keyboards/horizon/info.json +++ b/keyboards/horizon/info.json @@ -2,8 +2,6 @@ "keyboard_name": "Horizon", "url": "https://github.com/skarrmann/horizon", "maintainer": "Steven Karrmann", - "width": 14, - "height": 4, "layouts": { "LAYOUT": { "layout": [ From 06886d8f8fb5c449a0f189b97104cbc2cee841d6 Mon Sep 17 00:00:00 2001 From: Steven Karrmann Date: Mon, 11 Oct 2021 06:26:26 +0000 Subject: [PATCH 12/12] Update keyboards/horizon/info.json Co-authored-by: Ryan --- keyboards/horizon/info.json | 104 ++++++++++++++++++------------------ 1 file changed, 52 insertions(+), 52 deletions(-) diff --git a/keyboards/horizon/info.json b/keyboards/horizon/info.json index e648e3f15171..ea5f9cb034ec 100644 --- a/keyboards/horizon/info.json +++ b/keyboards/horizon/info.json @@ -5,58 +5,58 @@ "layouts": { "LAYOUT": { "layout": [ - { "w": 1, "x": 0, "y": 0 }, - { "w": 1, "x": 1, "y": 0 }, - { "w": 1, "x": 2, "y": 0 }, - { "w": 1, "x": 3, "y": 0 }, - { "w": 1, "x": 4, "y": 0 }, - { "w": 1, "x": 5, "y": 0 }, - { "w": 1, "x": 8, "y": 0 }, - { "w": 1, "x": 9, "y": 0 }, - { "w": 1, "x": 10, "y": 0 }, - { "w": 1, "x": 11, "y": 0 }, - { "w": 1, "x": 12, "y": 0 }, - { "w": 1, "x": 13, "y": 0 }, - { "w": 1, "x": 0, "y": 1 }, - { "w": 1, "x": 1, "y": 1 }, - { "w": 1, "x": 2, "y": 1 }, - { "w": 1, "x": 3, "y": 1 }, - { "w": 1, "x": 4, "y": 1 }, - { "w": 1, "x": 5, "y": 1 }, - { "w": 1, "x": 8, "y": 1 }, - { "w": 1, "x": 9, "y": 1 }, - { "w": 1, "x": 10, "y": 1 }, - { "w": 1, "x": 11, "y": 1 }, - { "w": 1, "x": 12, "y": 1 }, - { "w": 1, "x": 13, "y": 1 }, - { "w": 1, "x": 0, "y": 2 }, - { "w": 1, "x": 1, "y": 2 }, - { "w": 1, "x": 2, "y": 2 }, - { "w": 1, "x": 3, "y": 2 }, - { "w": 1, "x": 4, "y": 2 }, - { "w": 1, "x": 5, "y": 2 }, - { "w": 1, "x": 6, "y": 2 }, - { "w": 1, "x": 7, "y": 2 }, - { "w": 1, "x": 8, "y": 2 }, - { "w": 1, "x": 9, "y": 2 }, - { "w": 1, "x": 10, "y": 2 }, - { "w": 1, "x": 11, "y": 2 }, - { "w": 1, "x": 12, "y": 2 }, - { "w": 1, "x": 13, "y": 2 }, - { "w": 1, "x": 0, "y": 3 }, - { "w": 1, "x": 1, "y": 3 }, - { "w": 1, "x": 2, "y": 3 }, - { "w": 1, "x": 3, "y": 3 }, - { "w": 1, "x": 4, "y": 3 }, - { "w": 1, "x": 5, "y": 3 }, - { "w": 1, "x": 6, "y": 3 }, - { "w": 1, "x": 7, "y": 3 }, - { "w": 1, "x": 8, "y": 3 }, - { "w": 1, "x": 9, "y": 3 }, - { "w": 1, "x": 10, "y": 3 }, - { "w": 1, "x": 11, "y": 3 }, - { "w": 1, "x": 12, "y": 3 }, - { "w": 1, "x": 13, "y": 3 } + { "x": 0, "y": 0 }, + { "x": 1, "y": 0 }, + { "x": 2, "y": 0 }, + { "x": 3, "y": 0 }, + { "x": 4, "y": 0 }, + { "x": 5, "y": 0 }, + { "x": 8, "y": 0 }, + { "x": 9, "y": 0 }, + { "x": 10, "y": 0 }, + { "x": 11, "y": 0 }, + { "x": 12, "y": 0 }, + { "x": 13, "y": 0 }, + { "x": 0, "y": 1 }, + { "x": 1, "y": 1 }, + { "x": 2, "y": 1 }, + { "x": 3, "y": 1 }, + { "x": 4, "y": 1 }, + { "x": 5, "y": 1 }, + { "x": 8, "y": 1 }, + { "x": 9, "y": 1 }, + { "x": 10, "y": 1 }, + { "x": 11, "y": 1 }, + { "x": 12, "y": 1 }, + { "x": 13, "y": 1 }, + { "x": 0, "y": 2 }, + { "x": 1, "y": 2 }, + { "x": 2, "y": 2 }, + { "x": 3, "y": 2 }, + { "x": 4, "y": 2 }, + { "x": 5, "y": 2 }, + { "x": 6, "y": 2 }, + { "x": 7, "y": 2 }, + { "x": 8, "y": 2 }, + { "x": 9, "y": 2 }, + { "x": 10, "y": 2 }, + { "x": 11, "y": 2 }, + { "x": 12, "y": 2 }, + { "x": 13, "y": 2 }, + { "x": 0, "y": 3 }, + { "x": 1, "y": 3 }, + { "x": 2, "y": 3 }, + { "x": 3, "y": 3 }, + { "x": 4, "y": 3 }, + { "x": 5, "y": 3 }, + { "x": 6, "y": 3 }, + { "x": 7, "y": 3 }, + { "x": 8, "y": 3 }, + { "x": 9, "y": 3 }, + { "x": 10, "y": 3 }, + { "x": 11, "y": 3 }, + { "x": 12, "y": 3 }, + { "x": 13, "y": 3 } ] } }