diff options
author | Drashna Jaelre <drashna@live.com> | 2019-04-09 08:58:11 -0700 |
---|---|---|
committer | Drashna Jaelre <drashna@live.com> | 2019-04-09 08:58:11 -0700 |
commit | b6850bc043b1d129042f47501f0a1dc1e196f962 (patch) | |
tree | a0a772f278c3c494db3bc69103955af5561e1cae /keyboards/minidox | |
parent | 19ed62114a1f5d20aacb9cbe83105e977b9a2971 (diff) |
remove all keyboards but ergodox and planck
Diffstat (limited to 'keyboards/minidox')
43 files changed, 0 insertions, 3333 deletions
diff --git a/keyboards/minidox/config.h b/keyboards/minidox/config.h deleted file mode 100644 index b99180eb1a..0000000000 --- a/keyboards/minidox/config.h +++ /dev/null @@ -1,69 +0,0 @@ -/* -Copyright 2012 Jun Wako <wakojun@gmail.com> - -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 <http://www.gnu.org/licenses/>. -*/ - -#ifndef CONFIG_H -#define CONFIG_H - -#include "config_common.h" - -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x3060 -#define MANUFACTURER That-Canadian -#define PRODUCT MiniDox -#define DESCRIPTION A compact version of the Ergo Dox - -/* key matrix size */ -// Rows are doubled-up -#define MATRIX_ROWS 8 -#define MATRIX_COLS 5 - -/* COL2ROW or ROW2COL */ -#define DIODE_DIRECTION COL2ROW - -/* define if matrix has ghost */ -//#define MATRIX_HAS_GHOST - -/* number of backlight levels */ -// #define BACKLIGHT_LEVELS 3 - -/* Set 0 if debouncing isn't needed */ -#define DEBOUNCING_DELAY 5 - -/* 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 debug print */ -//#define NO_DEBUG - -/* disable print */ -//#define NO_PRINT - -/* disable action features */ -//#define NO_ACTION_LAYER -//#define NO_ACTION_TAPPING -//#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - -#ifdef SUBPROJECT_rev1 - #include "rev1/config.h" -#endif - -#endif diff --git a/keyboards/minidox/eeprom-lefthand.eep b/keyboards/minidox/eeprom-lefthand.eep deleted file mode 100644 index e5a7bc1e57..0000000000 --- a/keyboards/minidox/eeprom-lefthand.eep +++ /dev/null @@ -1,2 +0,0 @@ -:0F000000000000000000000000000000000001F0
-:00000001FF
diff --git a/keyboards/minidox/eeprom-righthand.eep b/keyboards/minidox/eeprom-righthand.eep deleted file mode 100644 index 7ea44f52ef..0000000000 --- a/keyboards/minidox/eeprom-righthand.eep +++ /dev/null @@ -1,2 +0,0 @@ -:0F000000000000000000000000000000000000F1
-:00000001FF
diff --git a/keyboards/minidox/i2c.c b/keyboards/minidox/i2c.c deleted file mode 100644 index 084c890c40..0000000000 --- a/keyboards/minidox/i2c.c +++ /dev/null @@ -1,162 +0,0 @@ -#include <util/twi.h> -#include <avr/io.h> -#include <stdlib.h> -#include <avr/interrupt.h> -#include <util/twi.h> -#include <stdbool.h> -#include "i2c.h" - -#ifdef USE_I2C - -// Limits the amount of we wait for any one i2c transaction. -// Since were running SCL line 100kHz (=> 10μs/bit), and each transactions is -// 9 bits, a single transaction will take around 90μs to complete. -// -// (F_CPU/SCL_CLOCK) => # of μC cycles to transfer a bit -// poll loop takes at least 8 clock cycles to execute -#define I2C_LOOP_TIMEOUT (9+1)*(F_CPU/SCL_CLOCK)/8 - -#define BUFFER_POS_INC() (slave_buffer_pos = (slave_buffer_pos+1)%SLAVE_BUFFER_SIZE) - -volatile uint8_t i2c_slave_buffer[SLAVE_BUFFER_SIZE]; - -static volatile uint8_t slave_buffer_pos; -static volatile bool slave_has_register_set = false; - -// Wait for an i2c operation to finish -inline static -void i2c_delay(void) { - uint16_t lim = 0; - while(!(TWCR & (1<<TWINT)) && lim < I2C_LOOP_TIMEOUT) - lim++; - - // easier way, but will wait slightly longer - // _delay_us(100); -} - -// Setup twi to run at 100kHz -void i2c_master_init(void) { - // no prescaler - TWSR = 0; - // Set TWI clock frequency to SCL_CLOCK. Need TWBR>10. - // Check datasheets for more info. - TWBR = ((F_CPU/SCL_CLOCK)-16)/2; -} - -// Start a transaction with the given i2c slave address. The direction of the -// transfer is set with I2C_READ and I2C_WRITE. -// returns: 0 => success -// 1 => error -uint8_t i2c_master_start(uint8_t address) { - TWCR = (1<<TWINT) | (1<<TWEN) | (1<<TWSTA); - - i2c_delay(); - - // check that we started successfully - if ( (TW_STATUS != TW_START) && (TW_STATUS != TW_REP_START)) - return 1; - - TWDR = address; - TWCR = (1<<TWINT) | (1<<TWEN); - - i2c_delay(); - - if ( (TW_STATUS != TW_MT_SLA_ACK) && (TW_STATUS != TW_MR_SLA_ACK) ) - return 1; // slave did not acknowledge - else - return 0; // success -} - - -// Finish the i2c transaction. -void i2c_master_stop(void) { - TWCR = (1<<TWINT) | (1<<TWEN) | (1<<TWSTO); - - uint16_t lim = 0; - while(!(TWCR & (1<<TWSTO)) && lim < I2C_LOOP_TIMEOUT) - lim++; -} - -// Write one byte to the i2c slave. -// returns 0 => slave ACK -// 1 => slave NACK -uint8_t i2c_master_write(uint8_t data) { - TWDR = data; - TWCR = (1<<TWINT) | (1<<TWEN); - - i2c_delay(); - - // check if the slave acknowledged us - return (TW_STATUS == TW_MT_DATA_ACK) ? 0 : 1; -} - -// Read one byte from the i2c slave. If ack=1 the slave is acknowledged, -// if ack=0 the acknowledge bit is not set. -// returns: byte read from i2c device -uint8_t i2c_master_read(int ack) { - TWCR = (1<<TWINT) | (1<<TWEN) | (ack<<TWEA); - - i2c_delay(); - return TWDR; -} - -void i2c_reset_state(void) { - TWCR = 0; -} - -void i2c_slave_init(uint8_t address) { - TWAR = address << 0; // slave i2c address - // TWEN - twi enable - // TWEA - enable address acknowledgement - // TWINT - twi interrupt flag - // TWIE - enable the twi interrupt - TWCR = (1<<TWIE) | (1<<TWEA) | (1<<TWINT) | (1<<TWEN); -} - -ISR(TWI_vect); - -ISR(TWI_vect) { - uint8_t ack = 1; - switch(TW_STATUS) { - case TW_SR_SLA_ACK: - // this device has been addressed as a slave receiver - slave_has_register_set = false; - break; - - case TW_SR_DATA_ACK: - // this device has received data as a slave receiver - // The first byte that we receive in this transaction sets the location - // of the read/write location of the slaves memory that it exposes over - // i2c. After that, bytes will be written at slave_buffer_pos, incrementing - // slave_buffer_pos after each write. - if(!slave_has_register_set) { - slave_buffer_pos = TWDR; - // don't acknowledge the master if this memory loctaion is out of bounds - if ( slave_buffer_pos >= SLAVE_BUFFER_SIZE ) { - ack = 0; - slave_buffer_pos = 0; - } - slave_has_register_set = true; - } else { - i2c_slave_buffer[slave_buffer_pos] = TWDR; - BUFFER_POS_INC(); - } - break; - - case TW_ST_SLA_ACK: - case TW_ST_DATA_ACK: - // master has addressed this device as a slave transmitter and is - // requesting data. - TWDR = i2c_slave_buffer[slave_buffer_pos]; - BUFFER_POS_INC(); - break; - - case TW_BUS_ERROR: // something went wrong, reset twi state - TWCR = 0; - default: - break; - } - // Reset everything, so we are ready for the next TWI interrupt - TWCR |= (1<<TWIE) | (1<<TWINT) | (ack<<TWEA) | (1<<TWEN); -} -#endif diff --git a/keyboards/minidox/i2c.h b/keyboards/minidox/i2c.h deleted file mode 100644 index c15b6bc506..0000000000 --- a/keyboards/minidox/i2c.h +++ /dev/null @@ -1,49 +0,0 @@ -#ifndef I2C_H -#define I2C_H - -#include <stdint.h> - -#ifndef F_CPU -#define F_CPU 16000000UL -#endif - -#define I2C_READ 1 -#define I2C_WRITE 0 - -#define I2C_ACK 1 -#define I2C_NACK 0 - -#define SLAVE_BUFFER_SIZE 0x10 - -// i2c SCL clock frequency -#define SCL_CLOCK 400000L - -extern volatile uint8_t i2c_slave_buffer[SLAVE_BUFFER_SIZE]; - -void i2c_master_init(void); -uint8_t i2c_master_start(uint8_t address); -void i2c_master_stop(void); -uint8_t i2c_master_write(uint8_t data); -uint8_t i2c_master_read(int); -void i2c_reset_state(void); -void i2c_slave_init(uint8_t address); - - -static inline unsigned char i2c_start_read(unsigned char addr) { - return i2c_master_start((addr << 1) | I2C_READ); -} - -static inline unsigned char i2c_start_write(unsigned char addr) { - return i2c_master_start((addr << 1) | I2C_WRITE); -} - -// from SSD1306 scrips -extern unsigned char i2c_rep_start(unsigned char addr); -extern void i2c_start_wait(unsigned char addr); -extern unsigned char i2c_readAck(void); -extern unsigned char i2c_readNak(void); -extern unsigned char i2c_read(unsigned char ack); - -#define i2c_read(ack) (ack) ? i2c_readAck() : i2c_readNak(); - -#endif diff --git a/keyboards/minidox/keymaps/alairock/config.h b/keyboards/minidox/keymaps/alairock/config.h deleted file mode 100644 index 6b0069f4b2..0000000000 --- a/keyboards/minidox/keymaps/alairock/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -This is the c configuration file for the keymap - -Copyright 2012 Jun Wako <wakojun@gmail.com> -Copyright 2015 Jack Humbert -Copyright 2018 Skyler Lewis - -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 <http://www.gnu.org/licenses/>. -*/ - -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -#define USE_SERIAL - -#define EE_HANDS - -/* ws2812 RGB LED */ -#define RGB_DI_PIN D7 - -#define RGBLED_NUM 8 // Number of LEDs -#define RGBLIGHT_ANIMATIONS -#define RGBLIGHT_HUE_STEP 10 -#define RGBLIGHT_SAT_STEP 17 -#define RGBLIGHT_VAL_STEP 17 -#endif diff --git a/keyboards/minidox/keymaps/alairock/keymap.c b/keyboards/minidox/keymaps/alairock/keymap.c deleted file mode 100644 index c592b1a6a9..0000000000 --- a/keyboards/minidox/keymaps/alairock/keymap.c +++ /dev/null @@ -1,157 +0,0 @@ -// Note: this is a modification of that_canadian's config, albeit heavily modified. -// this layout turns your left thumb cluster into something more familiar. - -#include QMK_KEYBOARD_H - -extern keymap_config_t keymap_config; - -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. -#define _QWERTY 0 -#define _LOWER 1 -#define _RAISE 2 -#define _ADJUST 16 - -enum custom_keycodes { - QWERTY = SAFE_RANGE, - LOWER, - RAISE, - ADJUST, -}; - -// Defines for task manager and such -#define CALTDEL LCTL(LALT(KC_DEL)) -#define TSKMGR LCTL(LSFT(KC_ESC)) - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -/* Qwerty - * - * ,----------------------------------. ,----------------------------------. - * | Q | W | E | R | T | | Y | U | I | O | P | - * |------+------+------+------+------| |------+------+------+------+------| - * | A | S | D | F | G | | H | J | K | L | ; | - * |------+------+------+------+------| |------+------+------+------+------| - * | Z | X | C | V | B | | N | M | , | . | / | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | Shift/Esc | GUI/Tab| | | RAISE| LOWER | - * `-------------|BSpace| |Space |------+------. - * | | | | - * `------' `------' - */ -[_QWERTY] = LAYOUT( \ - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, \ - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, \ - KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, \ - SFT_T(KC_ESC), GUI_T(KC_TAB), KC_BSPC, KC_SPC, RAISE, LOWER \ -), -/* Raise - * - * ,----------------------------------. ,----------------------------------. - * | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - * |------+------+------+------+------| |------+------+------+------+------| - * | Tab | VOLU | VOLD | PLAY | MFFD | | MUTE | - | = | [ | ] | - * |------+------+------+------+------| |------+------+------+------+------| - * | Ctrl| ` | GUI | Alt | MRWD | | | | | \ | ' | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | CTRL | BSPC | | | | | | - * `-------------| Enter| | |------+------. - * | | | | - * `------' `------' - */ -[_RAISE] = LAYOUT( \ - KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, \ - KC_TAB, KC_VOLD, KC_VOLU, KC_MPLY, KC_MFFD, KC_MUTE, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, \ - _______, KC_GRV, KC_LGUI, KC_LALT, KC_MRWD, _______, _______, _______, KC_BSLS, KC_QUOT, \ - KC_LCTRL, KC_BSPC, KC_ENT, _______, _______, _______ \ -), - -/* Lower - * - * ,----------------------------------. ,----------------------------------. - * | ! | @ | # | $ | % | | ^ | & | * | ( | ) | - * |------+------+------+------+------| |------+------+------+------+------| - * | Esc | VOLU | VOLD | PLAY | MFFD | | MUTE | _ | + | { | } | - * |------+------+------+------+------| |------+------+------+------+------| - * | Caps| ~ | | | MRWD | | | | | | | " | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | RAISE | DEL | | | | | | - * `-------------| | | Enter|------+------. - * | | | | - * `------' `------' - */ -[_LOWER] = LAYOUT( \ - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, \ - KC_ESC, KC_VOLD, KC_VOLU, KC_MPLY, KC_MFFD, KC_MUTE, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, \ - KC_CAPS, KC_TILD, _______, _______, KC_MRWD, _______, _______, _______, KC_PIPE, KC_DQT, \ - RAISE, KC_DEL, _______, KC_ENT, _______, _______ \ -), - -/* Adjust (Lower + Raise) - * - * ,----------------------------------. ,----------------------------------. - * | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | Up | F9 | F10 | - * |------+------+------+------+------| |------+------+------+------+------| - * | F11 | F12 | |RGBSAI|RGBSAD| | | Left | Down |Right |caltde| - * |------+------+------+------+------| |------+------+------+------+------| - * | Reset|RGBTOG|RGBMOD|RGBHUI|RGBHUD| |RGBVAI|RGBVAD| F8 |Taskmg| | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | | LOWER| | | | RAISE| | - * `-------------| | | |------+------. - * | | | | - * `------' `------' - */ -[_ADJUST] = LAYOUT( \ - KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_UP, KC_F9, KC_F10, \ - KC_F11, KC_F12, RGB_RMOD, RGB_SAI, RGB_SAD, _______, KC_LEFT, KC_DOWN, KC_RGHT, CALTDEL, \ - RESET, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_VAI, RGB_VAD, KC_F8, TSKMGR, _______, \ - _______, _______, _______, _______, _______, _______ \ -) -}; - - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QWERTY: - if (record->event.pressed) { - set_single_persistent_default_layer(_QWERTY); - } - return false; - break; - case LOWER: - if (record->event.pressed) { - layer_on(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - case RAISE: - if (record->event.pressed) { - layer_on(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - case ADJUST: - if (record->event.pressed) { - layer_on(_ADJUST); - } else { - layer_off(_ADJUST); - } - return false; - break; - } - return true; -} diff --git a/keyboards/minidox/keymaps/alairock/rules.mk b/keyboards/minidox/keymaps/alairock/rules.mk deleted file mode 100644 index ebada165ae..0000000000 --- a/keyboards/minidox/keymaps/alairock/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. -EXTRAKEY_ENABLE = yes diff --git a/keyboards/minidox/keymaps/default/keymap.c b/keyboards/minidox/keymaps/default/keymap.c deleted file mode 100644 index 6cc78cce1d..0000000000 --- a/keyboards/minidox/keymaps/default/keymap.c +++ /dev/null @@ -1,162 +0,0 @@ -#include QMK_KEYBOARD_H - -extern keymap_config_t keymap_config; - -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. -#define _QWERTY 0 -#define _LOWER 1 -#define _RAISE 2 -#define _ADJUST 16 - -enum custom_keycodes { - QWERTY = SAFE_RANGE, - LOWER, - RAISE, - ADJUST, -}; - -// Defines for task manager and such -#define CALTDEL LCTL(LALT(KC_DEL)) -#define TSKMGR LCTL(LSFT(KC_ESC)) - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -/* Qwerty - * - * ,----------------------------------. ,----------------------------------. - * | Q | W | E | R | T | | Y | U | I | O | P | - * |------+------+------+------+------| |------+------+------+------+------| - * | A | S | D | F | G | | H | J | K | L | ; | - * |------+------+------+------+------| |------+------+------+------+------| - * | Z | X | C | V | B | | N | M | , | . | / | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | Ctrl | LOWER| | | | RAISE| Shift| - * `-------------| Space| |BckSpc|------+------. - * | | | | - * `------' `------' - */ -[_QWERTY] = LAYOUT( \ - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, \ - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, \ - KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, \ - KC_LCTL, LOWER, KC_SPC, KC_BSPC, RAISE, OSM(MOD_LSFT) \ -), - -/* Raise - * - * ,----------------------------------. ,----------------------------------. - * | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - * |------+------+------+------+------| |------+------+------+------+------| - * | Tab | Left | Down | Up | Right| | | - | = | [ | ] | - * |------+------+------+------+------| |------+------+------+------+------| - * | Ctrl| ` | GUI | Alt | | | | | | \ | ' | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | | LOWER| | | | RAISE| | - * `-------------| | | |------+------. - * | | | | - * `------' `------' - */ -[_RAISE] = LAYOUT( \ - KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, \ - KC_TAB, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, \ - KC_LCTL, KC_GRV, KC_LGUI, KC_LALT, _______, _______, _______, _______, KC_BSLS, KC_QUOT, \ - _______, _______, _______, _______, _______, _______ \ -), - -/* Lower - * - * ,----------------------------------. ,----------------------------------. - * | ! | @ | # | $ | % | | ^ | & | * | ( | ) | - * |------+------+------+------+------| |------+------+------+------+------| - * | Esc | | | | | | | _ | + | { | } | - * |------+------+------+------+------| |------+------+------+------+------| - * | Caps| ~ | | | | | | | | | | " | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | | LOWER| | | | RAISE| Del | - * `-------------| | | Enter|------+------. - * | | | | - * `------' `------' - */ -[_LOWER] = LAYOUT( \ - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, \ - KC_ESC, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, \ - KC_CAPS, KC_TILD, _______, _______, _______, _______, _______, _______, KC_PIPE, KC_DQT, \ - _______, _______, _______, KC_ENT, _______, KC_DEL \ -), - -/* Adjust (Lower + Raise) - * - * ,----------------------------------. ,----------------------------------. - * | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | - * |------+------+------+------+------| |------+------+------+------+------| - * | F11 | F12 | | | | | | | |Taskmg|caltde| - * |------+------+------+------+------| |------+------+------+------+------| - * | Reset| | | | | | | | | | | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | | LOWER| | | | RAISE| | - * `-------------| | | |------+------. - * | | | | - * `------' `------' - */ -[_ADJUST] = LAYOUT( \ - KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, \ - KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, TSKMGR, CALTDEL, \ - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ - _______, _______, _______, _______, _______, _______ \ -) -}; - -void persistant_default_layer_set(uint16_t default_layer) { - eeconfig_update_default_layer(default_layer); - default_layer_set(default_layer); -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QWERTY: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - PLAY_SONG(tone_qwerty); - #endif - persistant_default_layer_set(1UL<<_QWERTY); - } - return false; - break; - case LOWER: - if (record->event.pressed) { - layer_on(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - case RAISE: - if (record->event.pressed) { - layer_on(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - case ADJUST: - if (record->event.pressed) { - layer_on(_ADJUST); - } else { - layer_off(_ADJUST); - } - return false; - break; - } - return true; -} diff --git a/keyboards/minidox/keymaps/dustypomerleau/README.md b/keyboards/minidox/keymaps/dustypomerleau/README.md deleted file mode 100644 index b2ec771257..0000000000 --- a/keyboards/minidox/keymaps/dustypomerleau/README.md +++ /dev/null @@ -1,28 +0,0 @@ -## dustypomerleau, Minidox layout - -The rationale behind my layout can be summarized as follows: - -- Symmetry is important because use-cases are hard to predict. Whenever possible, modifiers and layer keys should be available from either hand. -- Inward rolls should be leveraged not just for alphas (Colemak DHm), but also for coding/symbols. -- Number order—like alpha order—should be designed to favor use of the strongest fingers. -- One-shot keys can greatly reduce the strain of typing, and should be leveraged. - -Some aspects of my layout are optimized for macOS (order of modifiers, manner of producing en and em dashes, coding of micro-volume adjustments, etc.), but can be easily tweaked for the OS of your choice. - -Shift can be a tricky modifier when used in `MT()` combinations, particularly for fast typists on split boards using serial. This can be partially mitigated with options in `config.h`, but still requires a relatively strict typing style/accuracy from the fast typist. The tendency is for faster typists to combat mod/tap mistakes by using very short intervals for `TAPPING_TERM`, but this can introduce its own set of complications. Shift is also one of the highest-yield opportunities to use `OSM()`. For these reasons, I pulled Shift onto dedicated keys in the thumbs for use during regular typing (the home row Shifts have been left in place for use during selection and keycuts). - -The tapdance code that I used to create mod/tap keys inside my symbol layer allows up to 2 consecutive symbols within `TAPPING_TERM`. If you think you will need to quickly nest more than that, feel free to add more `case`s. - -### Special thanks - -- Everyone on the QMK Discord, for helping me work out the code for mod/tap keys using shifted symbols. -- Everyone on the Colemak Discord, for their initial feedback on the layout. -- @stevep and @DreymaR, for their work on Colemak DH(m), a truly awesome typing experience (and of course Shai Coleman, for starting it all off!). -- @ckofy, for offering a dramatic improvement on Dvorak's original number order. -- u/That-Canadian, for designing this awesome keyboard. - -### Questions or comments? - -- GitHub @dustypomerleau -- Twitter @duspom -- Discord @dusty#8897 diff --git a/keyboards/minidox/keymaps/dustypomerleau/config.h b/keyboards/minidox/keymaps/dustypomerleau/config.h deleted file mode 100644 index b2169947b7..0000000000 --- a/keyboards/minidox/keymaps/dustypomerleau/config.h +++ /dev/null @@ -1,25 +0,0 @@ -// dustypomerleau, Minidox config - -#pragma once - -#define EE_HANDS -#define IGNORE_MOD_TAP_INTERRUPT -#define ONESHOT_TIMEOUT 1000 -#define TAPPING_TERM 200 -#define USE_SERIAL - -// optional configuration: - -// #define CONVERT_TO_PROTON_C -// #define ONESHOT_TAP_TOGGLE 2 // not compatible with TAPPING_FORCE_HOLD -// #define PERMISSIVE_HOLD -// #define TAPPING_FORCE_HOLD // allows rapid mod use after tap event, but sacrifices double-tap to repeat - -// #define MOUSEKEY_DELAY 0 // delay before cursor movement (high feels sluggish, low makes fine movement difficult) -// #define MOUSEKEY_INTERVAL 20 // time between movement reports - low settings feel like high mouse speed -// #define MOUSEKEY_MAX_SPEED 10 -// #define MOUSEKEY_TIME_TO_MAX 60 -// #define MOUSEKEY_WHEEL_DELAY 0 -// #define MOUSEKEY_WHEEL_MAX_SPEED 8 -// #define MOUSEKEY_WHEEL_TIME_TO_MAX 4 - diff --git a/keyboards/minidox/keymaps/dustypomerleau/keymap.c b/keyboards/minidox/keymaps/dustypomerleau/keymap.c deleted file mode 100644 index e93a09f64a..0000000000 --- a/keyboards/minidox/keymaps/dustypomerleau/keymap.c +++ /dev/null @@ -1,434 +0,0 @@ -// Minidox keymap by dustypomerleau -// Thanks for checking out my keymap. The rationale behind the layout is described in the README. - -#include QMK_KEYBOARD_H - -extern keymap_config_t keymap_config; - -enum my_layers { - _CMK_DHM, - _QWERTY, - _SYS, - _NAV, - _NUM_E, - _NUM_N, - _SYM -}; - -enum my_keycodes { - CMK_DHM = SAFE_RANGE, - QWERTY, - SYS, - NAV, - NUM_E, - NUM_N, - SYM -}; - -enum td_keycodes { - ALT_LP, - CTL_RCB, - GUI_RP, - SFT_LCB, - SFT_PLS -}; - -typedef enum { - SINGLE_TAP, - SINGLE_HOLD, - DOUBLE_SINGLE_TAP -} td_state_t; - -static td_state_t td_state; -int cur_dance (qk_tap_dance_state_t *state); -void altlp_finished (qk_tap_dance_state_t *state, void *user_data); -void altlp_reset (qk_tap_dance_state_t *state, void *user_data); -void ctlrcb_finished (qk_tap_dance_state_t *state, void *user_data); -void ctlrcb_reset (qk_tap_dance_state_t *state, void *user_data); -void guirp_finished (qk_tap_dance_state_t *state, void *user_data); -void guirp_reset (qk_tap_dance_state_t *state, void *user_data); -void sftlcb_finished (qk_tap_dance_state_t *state, void *user_data); -void sftlcb_reset (qk_tap_dance_state_t *state, void *user_data); -void sftpls_finished (qk_tap_dance_state_t *state, void *user_data); -void sftpls_reset (qk_tap_dance_state_t *state, void *user_data); - -#define ALT_2 LALT_T(KC_2) -#define ALT_3 LALT_T(KC_3) -#define ALT_8 LALT_T(KC_8) -#define ALT_D LALT_T(KC_D) -#define ALT_E LALT_T(KC_E) -#define ALT_K LALT_T(KC_K) -#define ALT_LB LALT_T(KC_LBRC) -#define ALT_S LALT_T(KC_S) -#define CTRL_2 LCTL_T(KC_2) -#define CTRL_4 LCTL_T(KC_4) -#define CTRL_5 LCTL_T(KC_5) -#define CTRL_9 LCTL_T(KC_9) -#define CTRL_EQ LCTL_T(KC_EQL) -#define CTRL_I LCTL_T(KC_I) -#define CTRL_L LCTL_T(KC_L) -#define CTRL_R LCTL_T(KC_R) -#define CTRL_S LCTL_T(KC_S) -#define GUI_0 LGUI_T(KC_0) -#define GUI_1 LGUI_T(KC_1) -#define GUI_4 LGUI_T(KC_4) -#define GUI_7 LGUI_T(KC_7) -#define GUI_RB LGUI_T(KC_RBRC) -#define GUI_F LGUI_T(KC_F) -#define GUI_J LGUI_T(KC_J) -#define GUI_N LGUI_T(KC_N) -#define GUI_TEA LGUI_T(KC_T) -#define MAC_EM S(LALT(KC_MINS)) -#define MAC_EN LALT(KC_MINS) -#define NAV_BK LT(_NAV, KC_BSPC) -#define NAV_LK TG(_NAV) -#define NUME_SPC LT(_NUM_E, KC_SPC) -#define NUMLK_E TG(_NUM_E) -#define NUMLK_N TG(_NUM_N) -#define NUMN_SPC LT(_NUM_N, KC_SPC) -#define SFT_0 LSFT_T(KC_0) -#define SFT_1 LSFT_T(KC_1) -#define SFT_6 LSFT_T(KC_6) -#define SFT_7 LSFT_T(KC_7) -#define SFT_A LSFT_T(KC_A) -#define SFT_O LSFT_T(KC_O) -#define SFT_OS OSM(MOD_LSFT) -#define SFT_QOT LSFT_T(KC_QUOT) -#define SYM_OS OSL(_SYM) -#define SYS_Z LT(_SYS, KC_Z) -#define VOL_DN S(LALT(KC__VOLDOWN)) -#define VOL_UP S(LALT(KC__VOLUP)) - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -/* Colemak DHm - * - * ,----------------------------------. ,----------------------------------. - * | Q | W | F | P | B | | J | L | U | Y | ' | - * |------+------+------+------+------| |------+------+------+------+------| - * | SFT/A| CTL/R| ALT/S| GUI/T| G | | M | GUI/N| ALT/E| CTL/I| SFT/O| - * |------+------+------+------+------| |------+------+------+------+------| - * | SYS/Z| X | C | D | V | | K | H | , | . | ; | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,--------------------. - * |SFT/OS|NAV/BK| | | |NUM/SP|SFT/OS| - * `------+------|SYM/OS| |SYM/OS|------+------' - * | | | | - * `------' `------' - */ -[_CMK_DHM] = LAYOUT( \ - KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_QUOT, \ - SFT_A, CTRL_R, ALT_S, GUI_TEA, KC_G, KC_M, GUI_N, ALT_E, CTRL_I, SFT_O, \ - SYS_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SCLN, \ - SFT_OS, NAV_BK, SYM_OS, SYM_OS, NUME_SPC, SFT_OS \ -), - -/* QWERTY - * - * ,----------------------------------. ,----------------------------------. - * | Q | W | E | R | T | | Y | U | I | O | P | - * |------+------+------+------+------| |------+------+------+------+------| - * | SFT/A| CTL/S| ALT/D| GUI/F| G | | H | GUI/J| ALT/K| CTL/L| SFT/'| - * |------+------+------+------+------| |------+------+------+------+------| - * | SYS/Z| X | C | V | B | | N | M | , | . | ; | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,--------------------. - * |SFT/OS|NAV/BK| | | |NUM/SP|SFT/OS| - * `------+------|SYM/OS| |SYM/OS|------+------' - * | | | | - * `------' `------' - */ -[_QWERTY] = LAYOUT( \ - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, \ - SFT_A, CTRL_S, ALT_D, GUI_F, KC_G, KC_H, GUI_J, ALT_K, CTRL_L, SFT_QOT, \ - SYS_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SCLN, \ - SFT_OS, NAV_BK, SYM_OS, SYM_OS, NUMN_SPC, SFT_OS \ -), - -/* System, media, and layer lock keys - * If you use QWERTY + the Vanilla numbers primarily, change NUMLK_E to NUMLK_N here. - * - * ,----------------------------------. ,----------------------------------. - * | RESET|DEBUG |QWERTY|CMKDHM| | | | VOL--| VOL++|BRITE-|BRITE+| - * |------+------+------+------+------| |------+------+------+------+------| - * | SHIFT| CTRL | ALT | GUI |NAV LK| | POWER| VOL- | VOL+ | MUTE | MPLY | - * |------+------+------+------+------| |------+------+------+------+------| - * | | |AU OFF| AU ON| | | |NUM LK| MRWD | MFFD | | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | | | | | | | | - * `-------------| | | |------+------. - * | | | | - * `------' `------' - */ -[_SYS] = LAYOUT( \ - RESET, DEBUG, QWERTY, CMK_DHM, _______, _______, KC_VOLD, KC_VOLU, KC_BRID, KC_BRIU, \ - KC_LSFT, KC_LCTL, KC_LALT, KC_LGUI, NAV_LK, KC_POWER, VOL_DN, VOL_UP, KC__MUTE, KC_MPLY, \ - _______, _______, AU_OFF, AU_ON, _______, _______, NUMLK_E, KC_MRWD, KC_MFFD, _______, \ - _______, _______, _______, _______, _______, _______ \ -), - -/* Navigation + mouse keys - * - * ,----------------------------------. ,----------------------------------. - * | PSCR | | WH U | WH D | | | BSPC | PGDN | PGUP | HOME | END | - * |------+------+------+------+------| |------+------+------+------+------| - * | SHIFT| CTRL | ALT | GUI |NAV LK| | CAPS | LEFT | DOWN | UP | RIGHT| - * |------+------+------+------+------| |------+------+------+------+------| - * | | ACL0 | ACL1 | ACL2 | BTN2 | | BTN1 | MS L | MS D | MS U | MS R | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,--------------------. - * | | | | | | ENTER| | - * `------+------| ESC | | DEL |------+------' - * | | | | - * `------' `------' - */ -[_NAV] = LAYOUT( \ - KC_PSCR, _______, KC_WH_U, KC_WH_D, _______, KC_BSPC, KC_PGDN, KC_PGUP, KC_HOME, KC_END, \ - KC_LSFT, KC_LCTL, KC_LALT, KC_LGUI, NAV_LK, KC_CAPS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, \ - _______, KC_ACL0, KC_ACL1, KC_ACL2, KC_BTN2, KC_BTN1, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, \ - _______, _______, KC_ESC, KC_DEL, KC_ENT, _______ \ -), - -/* Number + function keys (ergonomic number order - default pairing with Colemak) - * - * ,----------------------------------. ,----------------------------------. - * | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | - * |------+------+------+------+------| |------+------+------+------+------| - * | SFT/7| CTL/5| ALT/3| GUI/1| 9 | | 8 | GUI/0| ALT/2| CTL/4| SFT/6| - * |------+------+------+------+------| |------+------+------+------+------| - * | F11 | F12 | - | SPACE| BSPC | | DEL |NUM LK| | | / | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,--------------------. - * | | TAB | | | | | | - * `------+------| ESC | | |------+------' - * | | | | - * `------' `------' - */ -[_NUM_E] = LAYOUT( \ - KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, \ - SFT_7, CTRL_5, ALT_3, GUI_1, KC_9, KC_8, GUI_0, ALT_2, CTRL_4, SFT_6, \ - KC_F11, KC_F12, KC_MINS, KC_SPC, KC_BSPC, KC_DEL, NUMLK_E, _______, _______, KC_SLSH, \ - _______, KC_TAB, KC_ESC, _______, _______, _______ \ -), - -/* Number + function keys (numeric number order - default pairing with QWERTY) - * - * ,----------------------------------. ,----------------------------------. - * | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | - * |------+------+------+------+------| |------+------+------+------+------| - * | SFT/1| CTL/2| ALT/3| GUI/4| 5 | | 6 | GUI/7| ALT/8| CTL/9| SFT/0| - * |------+------+------+------+------| |------+------+------+------+------| - * | F11 | F12 | - | SPACE| BSPC | | DEL |NUM LK| | | / | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,--------------------. - * | | TAB | | | | | | - * `------+------| ESC | | |------+------' - * | | | | - * `------' `------' - */ -[_NUM_N] = LAYOUT( \ - KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, \ - SFT_1, CTRL_2, ALT_3, GUI_4, KC_5, KC_6, GUI_7, ALT_8, CTRL_9, SFT_0, \ - KC_F11, KC_F12, KC_MINS, KC_SPC, KC_BSPC, KC_DEL, NUMLK_N, _______, _______, KC_SLSH, \ - _______, KC_TAB, KC_ESC, _______, _______, _______ \ -), - - -/* Symbols - * - * ,----------------------------------. ,----------------------------------. - * | ! | @ | # | $ | % | | ^ | & | * | ? | ' | - * |------+------+------+------+------| |------+------+------+------+------| - * | SFT/+| CTL/=| ALT/(| GUI/)| " | | : | GUI/]| ALT/[| CTL/}| SFT/{| - * |------+------+------+------+------| |------+------+------+------+------| - * | < | | | - | > | \ | | ` | _ | / | ~ | ; | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,--------------------. - * | |ENDASH| | | |EMDASH| | - * `------+------| | | |------+------' - * | | | | - * `------' `------' - */ -[_SYM] = LAYOUT( \ - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_QUES, KC_QUOT, \ - TD(SFT_PLS), CTRL_EQ, TD(ALT_LP), TD(GUI_RP), KC_DQT, KC_COLN, GUI_RB, ALT_LB, TD(CTL_RCB), TD(SFT_LCB), \ - KC_LT, KC_PIPE, KC_MINS, KC_GT, KC_BSLS, KC_GRV, KC_UNDS, KC_SLSH, KC_TILD, KC_SCLN, \ - _______, MAC_EN, _______, _______, MAC_EM, _______ \ -) - -}; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case CMK_DHM: - if (record->event.pressed) { - set_single_persistent_default_layer(_CMK_DHM); - } - return false; - case QWERTY: - if (record->event.pressed) { - set_single_persistent_default_layer(_QWERTY); - } - return false; - default: - return true; - } -}; - -int cur_dance (qk_tap_dance_state_t *state) { - if (state->count == 1) { - if (state->interrupted || !state->pressed) return SINGLE_TAP; - else return SINGLE_HOLD; - } - if (state->count == 2) return DOUBLE_SINGLE_TAP; - else return 3; -} - -void altlp_finished (qk_tap_dance_state_t *state, void *user_data) { - td_state = cur_dance(state); - switch (td_state) { - case SINGLE_TAP: - register_code16(KC_LPRN); - break; - case SINGLE_HOLD: - register_mods(MOD_BIT(KC_LALT)); - break; - case DOUBLE_SINGLE_TAP: - tap_code16(KC_LPRN); - register_code16(KC_LPRN); - } -} - -void altlp_reset (qk_tap_dance_state_t *state, void *user_data) { - switch (td_state) { - case SINGLE_TAP: - unregister_code16(KC_LPRN); - break; - case SINGLE_HOLD: - unregister_mods(MOD_BIT(KC_LALT)); - break; - case DOUBLE_SINGLE_TAP: - unregister_code16(KC_LPRN); - } -} - -void ctlrcb_finished (qk_tap_dance_state_t *state, void *user_data) { - td_state = cur_dance(state); - switch (td_state) { - case SINGLE_TAP: - register_code16(KC_RCBR); - break; - case SINGLE_HOLD: - register_mods(MOD_BIT(KC_LCTL)); - break; - case DOUBLE_SINGLE_TAP: - tap_code16(KC_RCBR); - register_code16(KC_RCBR); - } -} - -void ctlrcb_reset (qk_tap_dance_state_t *state, void *user_data) { - switch (td_state) { - case SINGLE_TAP: - unregister_code16(KC_RCBR); - break; - case SINGLE_HOLD: - unregister_mods(MOD_BIT(KC_LCTL)); - break; - case DOUBLE_SINGLE_TAP: - unregister_code16(KC_RCBR); - } -} - -void guirp_finished (qk_tap_dance_state_t *state, void *user_data) { - td_state = cur_dance(state); - switch (td_state) { - case SINGLE_TAP: - register_code16(KC_RPRN); - break; - case SINGLE_HOLD: - register_mods(MOD_BIT(KC_LGUI)); - break; - case DOUBLE_SINGLE_TAP: - tap_code16(KC_RPRN); - register_code16(KC_RPRN); - } -} - -void guirp_reset (qk_tap_dance_state_t *state, void *user_data) { - switch (td_state) { - case SINGLE_TAP: - unregister_code16(KC_RPRN); - break; - case SINGLE_HOLD: - unregister_mods(MOD_BIT(KC_LGUI)); - break; - case DOUBLE_SINGLE_TAP: - unregister_code16(KC_RPRN); - } -} - -void sftlcb_finished (qk_tap_dance_state_t *state, void *user_data) { - td_state = cur_dance(state); - switch (td_state) { - case SINGLE_TAP: - register_code16(KC_LCBR); - break; - case SINGLE_HOLD: - register_mods(MOD_BIT(KC_LSFT)); - break; - case DOUBLE_SINGLE_TAP: - tap_code16(KC_LCBR); - register_code16(KC_LCBR); - } -} - -void sftlcb_reset (qk_tap_dance_state_t *state, void *user_data) { - switch (td_state) { - case SINGLE_TAP: - unregister_code16(KC_LCBR); - break; - case SINGLE_HOLD: - unregister_mods(MOD_BIT(KC_LSFT)); - break; - case DOUBLE_SINGLE_TAP: - unregister_code16(KC_LCBR); - } -} - -void sftpls_finished (qk_tap_dance_state_t *state, void *user_data) { - td_state = cur_dance(state); - switch (td_state) { - case SINGLE_TAP: - register_code16(KC_PLUS); - break; - case SINGLE_HOLD: - register_mods(MOD_BIT(KC_LSFT)); - break; - case DOUBLE_SINGLE_TAP: - tap_code16(KC_PLUS); - register_code16(KC_PLUS); - } -} - -void sftpls_reset (qk_tap_dance_state_t *state, void *user_data) { - switch (td_state) { - case SINGLE_TAP: - unregister_code16(KC_PLUS); - break; - case SINGLE_HOLD: - unregister_mods(MOD_BIT(KC_LSFT)); - break; - case DOUBLE_SINGLE_TAP: - unregister_code16(KC_PLUS); - } -} - -qk_tap_dance_action_t tap_dance_actions[] = { - [ALT_LP] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, altlp_finished, altlp_reset), - [CTL_RCB] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, ctlrcb_finished, ctlrcb_reset), - [GUI_RP] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, guirp_finished, guirp_reset), - [SFT_LCB] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, sftlcb_finished, sftlcb_reset), - [SFT_PLS] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, sftpls_finished, sftpls_reset) -}; diff --git a/keyboards/minidox/keymaps/dustypomerleau/rules.mk b/keyboards/minidox/keymaps/dustypomerleau/rules.mk deleted file mode 100644 index 2a74d95536..0000000000 --- a/keyboards/minidox/keymaps/dustypomerleau/rules.mk +++ /dev/null @@ -1,5 +0,0 @@ -# dustypomerleau, Minidox rules - -EXTRAKEY_ENABLE = yes -MOUSEKEY_ENABLE = yes -TAP_DANCE_ENABLE = yes diff --git a/keyboards/minidox/keymaps/haegin/keymap.c b/keyboards/minidox/keymaps/haegin/keymap.c deleted file mode 100644 index d95243f10b..0000000000 --- a/keyboards/minidox/keymaps/haegin/keymap.c +++ /dev/null @@ -1,86 +0,0 @@ -#include QMK_KEYBOARD_H - -extern keymap_config_t keymap_config; - -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. -#define LETTERS 0 -#define SYMBOLS 1 -#define MEDIA 2 - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -/* Qwerty - * - * ,----------------------------------. ,----------------------------------. - * | Q | W | E | R | T | | Y | U | I | O | P | - * |------+------+------+------+------| |------+------+------+------+------| - * | A | S | D | F | G | | H | J | K | L | ; | - * |------+------+------+------+------| |------+------+------+------+------| - * | Z | X | C | V | B | | N | M | , | . | / | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | Ctrl | LOWER| | | | RAISE| Shift| - * `-------------| Space| |BckSpc|------+------. - * | | | | - * `------' `------' - */ -[LETTERS] = LAYOUT( \ - KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, \ - KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, \ - KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, \ - CTL_T(KC_ESC), SFT_T(KC_BSPC), GUI_T(KC_SPC), LT(SYMBOLS, KC_ENT), LT(MEDIA, KC_TAB), ALT_T(LCTL(KC_B)) \ -), - -/* Raise - * - * ,----------------------------------. ,----------------------------------. - * | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - * |------+------+------+------+------| |------+------+------+------+------| - * | Tab | Left | Down | Up | Right| | | - | = | [ | ] | - * |------+------+------+------+------| |------+------+------+------+------| - * | Ctrl| ` | GUI | Alt | | | | | | \ | ' | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | | LOWER| | | | RAISE| | - * `-------------| | | |------+------. - * | | | | - * `------' `------' - */ -[SYMBOLS] = LAYOUT( \ - KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, \ - KC_TAB, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, \ - KC_LCTL, KC_GRV, KC_LGUI, KC_LALT, _______, _______, _______, _______, KC_BSLS, KC_QUOT, \ - _______, _______, _______, _______, _______, _______ \ -), - -/* Lower - * - * ,----------------------------------. ,----------------------------------. - * | ! | @ | # | $ | % | | ^ | & | * | ( | ) | - * |------+------+------+------+------| |------+------+------+------+------| - * | Esc | | | | | | | _ | + | { | } | - * |------+------+------+------+------| |------+------+------+------+------| - * | Caps| ~ | | | | | | | | | | " | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | | LOWER| | | | RAISE| Del | - * `-------------| | | Enter|------+------. - * | | | | - * `------' `------' - */ -[MEDIA] = LAYOUT( \ - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, \ - KC_ESC, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, \ - KC_CAPS, KC_TILD, _______, _______, _______, _______, _______, _______, KC_PIPE, KC_DQT, \ - _______, _______, _______, KC_ENT, _______, KC_DEL \ -) -}; - -void persistant_default_layer_set(uint16_t default_layer) { - eeconfig_update_default_layer(default_layer); - default_layer_set(default_layer); -} - diff --git a/keyboards/minidox/keymaps/khitsule/config.h b/keyboards/minidox/keymaps/khitsule/config.h deleted file mode 100644 index 645e80ee8f..0000000000 --- a/keyboards/minidox/keymaps/khitsule/config.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#define IGNORE_MOD_TAP_INTERRUPT - -#endif diff --git a/keyboards/minidox/keymaps/khitsule/keymap.c b/keyboards/minidox/keymaps/khitsule/keymap.c deleted file mode 100644 index 1c6b6749f3..0000000000 --- a/keyboards/minidox/keymaps/khitsule/keymap.c +++ /dev/null @@ -1,64 +0,0 @@ -#include QMK_KEYBOARD_H - -extern keymap_config_t keymap_config; - -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. -#define _QWERTY 0 -#define _LOWER 1 -#define _RAISE 2 -#define _ADJUST 16 - -enum custom_keycodes { - QWERTY = SAFE_RANGE, - LOWER, - RAISE, - ADJUST, -}; - -// Defines for task manager and such -#define CALTDEL LCTL(LALT(KC_DEL)) -#define TSKMGR LCTL(LSFT(KC_ESC)) -#define DSK_LFT LGUI(LCTL(KC_LEFT)) -#define DSK_RT LGUI(LCTL(KC_RIGHT)) - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - -[_QWERTY] = LAYOUT( \ - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, \ - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, \ - KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, \ - ALT_T(KC_ENT), LT(_LOWER, KC_TAB), CTL_T(KC_SPC), SFT_T(KC_BSPC), LT(_RAISE, KC_DEL), KC_LGUI \ -), - -[_RAISE] = LAYOUT( \ - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_PLUS, KC_7, KC_8, KC_9, KC_0, \ - KC_CIRC, KC_AMPR, KC_TILD, KC_PIPE, KC_BSLS, KC_MINUS, KC_4, KC_5, KC_6, KC_EQL, \ - KC_DQT, KC_QUOT, KC_UNDS, KC_GRV, _______, KC_ASTR, KC_1, KC_2, KC_3, _______, \ - _______, MO(_ADJUST), _______, _______, _______, _______ \ -), - - -[_LOWER] = LAYOUT( \ - KC_ESC, KC_HOME, KC_UP, KC_END, _______, KC_LPRN, KC_RPRN, _______, _______, _______, - KC_VOLU, KC_LEFT, KC_DOWN, KC_RIGHT, KC_PGUP, KC_LBRC, KC_RBRC, _______, _______, _______, \ - KC_VOLD, KC_MPRV, KC_MPLY, KC_MNXT, KC_PGDN, KC_LCBR, KC_RCBR, _______, _______, _______, \ - _______, _______, _______, _______, MO(_ADJUST), _______ \ -), - - -[_ADJUST] = LAYOUT( \ - KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, \ - _______, DSK_LFT, _______, DSK_RT, _______, TSKMGR, CALTDEL, _______, KC_F11, KC_F12, \ - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ - _______, _______, _______, _______, _______, _______ \ -) -}; - -void persistant_default_layer_set(uint16_t default_layer) { - eeconfig_update_default_layer(default_layer); - default_layer_set(default_layer); -} diff --git a/keyboards/minidox/keymaps/khitsule/readme.md b/keyboards/minidox/keymaps/khitsule/readme.md deleted file mode 100644 index 92e2527942..0000000000 --- a/keyboards/minidox/keymaps/khitsule/readme.md +++ /dev/null @@ -1,24 +0,0 @@ -# Minidox Layout by Khitsule -![Khitsule](https://i.imgur.com/bEdqotb.png) - -[KLE link](http://www.keyboard-layout-editor.com/#/gists/203ed1a6db1997863394e87af8c43bbc) - -## Layers -| Layer | Legend | -| ----- | ------ | -| Base | Top left (black) | -| Lower | Top right (red) | -| Raise | Bottom right (orange) | -| Adjust | Front print | - -## Features -* Raise/lower layers focus first on one-handed use -* Numpad on right hand with raise layer -* Navigation on left hand with lower layer (ESDF) - * D refers to desktop left/right on Win 10 (win+ctrl+left/right) -* Heavy use of hold/tap dual function keys - * Ctrl/Space - * Shift/Backspace - * Alt/Enter - * Lower/Tab - * Raise/Delete
\ No newline at end of file diff --git a/keyboards/minidox/keymaps/that_canadian/config.h b/keyboards/minidox/keymaps/that_canadian/config.h deleted file mode 100644 index b85609127e..0000000000 --- a/keyboards/minidox/keymaps/that_canadian/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -This is the c configuration file for the keymap - -Copyright 2012 Jun Wako <wakojun@gmail.com> -Copyright 2015 Jack Humbert - -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 <http://www.gnu.org/licenses/>. -*/ - -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -#define USE_SERIAL - -#define EE_HANDS - -/* ws2812 RGB LED */ -#define RGB_DI_PIN D7 - -#define RGBLED_NUM 8 // Number of LEDs -#define RGBLIGHT_ANIMATIONS -#define RGBLIGHT_HUE_STEP 10 -#define RGBLIGHT_SAT_STEP 17 -#define RGBLIGHT_VAL_STEP 17 - -#endif
\ No newline at end of file diff --git a/keyboards/minidox/keymaps/that_canadian/keymap.c b/keyboards/minidox/keymaps/that_canadian/keymap.c deleted file mode 100644 index 78ddca30e8..0000000000 --- a/keyboards/minidox/keymaps/that_canadian/keymap.c +++ /dev/null @@ -1,159 +0,0 @@ -#include QMK_KEYBOARD_H - -extern keymap_config_t keymap_config; - -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. -#define _QWERTY 0 -#define _LOWER 1 -#define _RAISE 2 -#define _ADJUST 16 - -enum custom_keycodes { - QWERTY = SAFE_RANGE, - LOWER, - RAISE, - ADJUST, -}; - -// Defines for task manager and such -#define CALTDEL LCTL(LALT(KC_DEL)) -#define TSKMGR LCTL(LSFT(KC_ESC)) - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -/* Qwerty - * - * ,----------------------------------. ,----------------------------------. - * | Q | W | E | R | T | | Y | U | I | O | P | - * |------+------+------+------+------| |------+------+------+------+------| - * | A | S | D | F | G | | H | J | K | L | ; | - * |------+------+------+------+------| |------+------+------+------+------| - * | Z | X | C | V | B | | N | M | , | . | / | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | Shift| LOWER| | | | RAISE| Ctrl | - * `-------------| Space| |BckSpc|------+------. - * | | | | - * `------' `------' - */ -[_QWERTY] = LAYOUT( \ - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, \ - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, \ - KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, \ - OSM(MOD_LSFT), LOWER, KC_SPC, KC_BSPC, RAISE, KC_LCTL \ -), - -/* Raise - * - * ,----------------------------------. ,----------------------------------. - * | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - * |------+------+------+------+------| |------+------+------+------+------| - * | Tab | Left | Down | Up | Right| | | - | = | [ | ] | - * |------+------+------+------+------| |------+------+------+------+------| - * | Ctrl| ` | GUI | Alt | | | | | | \ | ' | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | | LOWER| | | | RAISE| | - * `-------------| | | |------+------. - * | | | | - * `------' `------' - */ -[_RAISE] = LAYOUT( \ - KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, \ - KC_TAB, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, \ - KC_LCTL, KC_GRV, KC_LGUI, KC_LALT, _______, _______, _______, _______, KC_BSLS, KC_QUOT, \ - _______, _______, _______, _______, _______, _______ \ -), - -/* Lower - * - * ,----------------------------------. ,----------------------------------. - * | ! | @ | # | $ | % | | ^ | & | * | ( | ) | - * |------+------+------+------+------| |------+------+------+------+------| - * | Esc | | | | | | | _ | + | { | } | - * |------+------+------+------+------| |------+------+------+------+------| - * | Caps| ~ | | | | | | | | | | " | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | | LOWER| | | | RAISE| Del | - * `-------------| | | Enter|------+------. - * | | | | - * `------' `------' - */ -[_LOWER] = LAYOUT( \ - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, \ - KC_ESC, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, \ - KC_CAPS, KC_TILD, _______, _______, _______, _______, _______, _______, KC_PIPE, KC_DQT, \ - _______, _______, _______, KC_ENT, _______, KC_DEL \ -), - -/* Adjust (Lower + Raise) - * - * ,----------------------------------. ,----------------------------------. - * | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | Up | F9 | F10 | - * |------+------+------+------+------| |------+------+------+------+------| - * | F11 | F12 | |RGBSAI|RGBSAD| | | Left | Down |Right |caltde| - * |------+------+------+------+------| |------+------+------+------+------| - * | Reset|RGBTOG|RGBMOD|RGBHUI|RGBHUD| |RGBVAI|RGBVAD| F8 |Taskmg| | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | | LOWER| | | | RAISE| | - * `-------------| | | |------+------. - * | | | | - * `------' `------' - */ -[_ADJUST] = LAYOUT( \ - KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_UP, KC_F9, KC_F10, \ - KC_F11, KC_F12, _______, RGB_SAI, RGB_SAD, _______, KC_LEFT, KC_DOWN, KC_RGHT, CALTDEL, \ - RESET, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_VAI, RGB_VAD, KC_F8, TSKMGR, _______, \ - _______, _______, _______, _______, _______, _______ \ -) -}; - -void persistant_default_layer_set(uint16_t default_layer) { - eeconfig_update_default_layer(default_layer); - default_layer_set(default_layer); -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QWERTY: - if (record->event.pressed) { - persistant_default_layer_set(1UL<<_QWERTY); - } - return false; - break; - case LOWER: - if (record->event.pressed) { - layer_on(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - case RAISE: - if (record->event.pressed) { - layer_on(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - case ADJUST: - if (record->event.pressed) { - layer_on(_ADJUST); - } else { - layer_off(_ADJUST); - } - return false; - break; - } - return true; -} diff --git a/keyboards/minidox/keymaps/that_canadian/rules.mk b/keyboards/minidox/keymaps/that_canadian/rules.mk deleted file mode 100644 index f1ef68387f..0000000000 --- a/keyboards/minidox/keymaps/that_canadian/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. - diff --git a/keyboards/minidox/keymaps/tomb0y/README.md b/keyboards/minidox/keymaps/tomb0y/README.md deleted file mode 100644 index c00cca1c5b..0000000000 --- a/keyboards/minidox/keymaps/tomb0y/README.md +++ /dev/null @@ -1,49 +0,0 @@ -``` -/* Base layer - workman - * - * ,----------------------------------. ,----------------------------------. - * | q | d | r | w | b | | j | f | u | p | ; | - * |------+------+------+------+------| |------+------+------+------+------| - * | a | s | h | t | g | | y | n | e | o | i | - * |------+------+------+------+------| |------+------+------+------+------| - * | z | x | m | c | v | | k | l | dead | . | / | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,---------------------. - * | tab | esc | enter| |bckspc| space| tab | - * | shift | ctrl | alt | | gui | fn | shift | - * `-------+------+ | | |------+-------. - * `------' `------' - */ - -/* Dead key layer - * - * ,----------------------------------. ,----------------------------------. - * | % | & | ? | + | @ | | $ | _ | [ | ] | ! | - * |------+------+------+------+------| |------+------+------+------+------| - * | # | ( | = | 0 | { | | } | 1 | * | ) | - | - * |------+------+------+------+------| |------+------+------+------+------| - * | 6 | 7 | 8 | 9 | | | | \ | 2 | 3 | 4 | 5 | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,---------------------. - * | tab | esc | comma| |bckspc| comma| tab | - * | shift | ctrl |+enter| | gui |+space| shift | - * `-------+------+ | | |------+-------. - * `------' `------' - */ - -/* Function layer - * - * ,----------------------------------. ,---------------------------------. - * | | del |⌃← | ⌃→ | | | mute | vol- | vol+ | ⌘⌃p | | - * |------+------+------+------+------| |------+------+------+------+------| - * | ` | end | pgup | pgdn | home | | ← | ↓ | ↑ | → | ' | - * |------+------+------+------+------| |------+------+------+------+------| - * | ⌥⇥ | |⇧⌃⇥| ⌃⇥ | | | | br- | , | br+ | ^ | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,---------------------. - * | tab | | enter| |bckspc| | tab | - * | shift | | alt | | gui | | shift | - * `-------+------+ | | |------+-------. - * `------' `------' - */ -``` diff --git a/keyboards/minidox/keymaps/tomb0y/keymap.c b/keyboards/minidox/keymaps/tomb0y/keymap.c deleted file mode 100644 index cb7cd4d0a5..0000000000 --- a/keyboards/minidox/keymaps/tomb0y/keymap.c +++ /dev/null @@ -1,142 +0,0 @@ -#include QMK_KEYBOARD_H - -extern keymap_config_t keymap_config; - -#define _WM 0 -#define _DK 1 -#define _FUN 2 - -#define _DK_ACT 0 -#define _DK_REL 1 -#define _KC_COMS 2 -#define _KC_CENT 3 - -#define DK_ACT M(_DK_ACT) // activate dead key layer -#define DK_REL M(_DK_REL) // release dead key layer -#define KC_COMS M(_KC_COMS) // comma + space -#define KC_CENT M(_KC_CENT) // comma + enter -#define KC_ENOP ALT_T(KC_ENT) // press for enter, hold for option -#define KC_BSCM GUI_T(KC_BSPC) // press for backspace, hold for command -#define KC_CTES CTL_T(KC_ESC) // press for escape, hold for control -#define KC_SHTB SFT_T(KC_TAB) // press for tab, hold for shift -#define KC_SPFN LT(_FUN, KC_SPC) // press for space, hold for function layer (aka spacefn) -#define KC_OPTB RALT(KC_TAB) // option + tab -#define KC_CCSP RGUI(RCTL(KC_P)) // control + command + p -#define KC_CSTB S(RCTL(KC_TAB)) // shift + control + tab -#define KC_C_TB RCTL(KC_TAB) // control + tab -#define KC_C_LF RCTL(KC_LEFT) // control + left -#define KC_C_RT RCTL(KC_RGHT) // control + right -#define KC_BRUP KC_F15 // brightness up on osx -#define KC_BRDN KC_F14 // brightness down on osx - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -/* Base layer - workman - * - * ,----------------------------------. ,----------------------------------. - * | q | d | r | w | b | | j | f | u | p | ; | - * |------+------+------+------+------| |------+------+------+------+------| - * | a | s | h | t | g | | y | n | e | o | i | - * |------+------+------+------+------| |------+------+------+------+------| - * | z | x | m | c | v | | k | l | dead | . | / | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,---------------------. - * | tab | esc | enter| |bckspc| space| tab | - * | shift | ctrl | alt | | gui | fn | shift | - * `-------+------+ | | |------+-------. - * `------' `------' - */ - [_WM] = LAYOUT( \ - KC_Q, KC_D, KC_R, KC_W, KC_B, KC_J, KC_F, KC_U, KC_P, KC_SCLN, \ - KC_A, KC_S, KC_H, KC_T, KC_G, KC_Y, KC_N, KC_E, KC_O, KC_I, \ - KC_Z, KC_X, KC_M, KC_C, KC_V, KC_K, KC_L, DK_ACT, KC_DOT, KC_SLSH, \ - KC_SHTB, KC_CTES, KC_ENOP, KC_BSCM, KC_SPFN, KC_SHTB \ - ), - -/* Dead key layer - * - * ,----------------------------------. ,----------------------------------. - * | % | & | ? | + | @ | | $ | _ | [ | ] | ! | - * |------+------+------+------+------| |------+------+------+------+------| - * | # | ( | = | 0 | { | | } | 1 | * | ) | - | - * |------+------+------+------+------| |------+------+------+------+------| - * | 6 | 7 | 8 | 9 | | | | \ | 2 | 3 | 4 | 5 | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,---------------------. - * | tab | esc | comma| |bckspc| comma| tab | - * | shift | ctrl |+enter| | gui |+space| shift | - * `-------+------+ | | |------+-------. - * `------' `------' - */ - [_DK] = LAYOUT( \ - KC_PERC, KC_AMPR, KC_QUES, KC_PLUS, KC_AT, KC_DLR, KC_UNDS, KC_LBRC, KC_RBRC, KC_EXLM, \ - KC_HASH, KC_LPRN, KC_EQL, KC_0, KC_LCBR, KC_RCBR, KC_1, KC_ASTR, KC_RPRN, KC_MINS, \ - KC_6, KC_7, KC_8, KC_9, KC_PIPE, KC_BSLS, KC_2, DK_REL, KC_4, KC_5, \ - KC_SHTB, KC_CTES, KC_CENT, KC_BSCM, KC_COMS, KC_SHTB \ - ), - -/* Function layer - * - * ,----------------------------------. ,---------------------------------. - * | | del |⌃← | ⌃→ | | | mute | vol- | vol+ | ⌘⌃p | | - * |------+------+------+------+------| |------+------+------+------+------| - * | ` | end | pgup | pgdn | home | | ← | ↓ | ↑ | → | ' | - * |------+------+------+------+------| |------+------+------+------+------| - * | ⌥⇥ | |⇧⌃⇥| ⌃⇥ | | | | br- | , | br+ | ^ | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,---------------------. - * | tab | | enter| |bckspc| | tab | - * | shift | | alt | | gui | | shift | - * `-------+------+ | | |------+-------. - * `------' `------' - */ - [_FUN] = LAYOUT( \ - XXXXXXX, KC_DEL, KC_C_LF, KC_C_RT, XXXXXXX, KC_MUTE, KC_VOLD, KC_VOLU, KC_CCSP, XXXXXXX, \ - KC_GRV, KC_END, KC_PGUP, KC_PGDN, KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_QUOT, \ - KC_OPTB, XXXXXXX, KC_CSTB, KC_C_TB, XXXXXXX, XXXXXXX, KC_BRDN, KC_COMM, KC_BRUP, KC_CIRC, \ - KC_SHTB, XXXXXXX, KC_ENOP, KC_BSCM, _______, KC_SHTB \ - ) -}; - -void persistant_default_layer_set(uint16_t default_layer) { - eeconfig_update_default_layer(default_layer); - default_layer_set(default_layer); -} - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - switch(id) { - case _KC_COMS: - if (record->event.pressed) { - return MACRO(T(COMM), T(SPC), END); // comma + space - } - break; - case _KC_CENT: - if (record->event.pressed) { - return MACRO(T(COMM), T(ENT), END); // comma + enter - } - break; - case _DK_ACT: - if (record->event.pressed) { - if (keyboard_report->mods & MOD_BIT(KC_LSFT) || keyboard_report->mods & MOD_BIT(KC_RSFT)) { // act as comma when shift is pressed (eg <) - register_code(KC_COMM); - } else { // activate oneshot dead key layer otherwise - layer_on(_DK); - set_oneshot_layer(_DK, ONESHOT_START); - } - } else { // make sure to deactive dead key layer on key release - clear_oneshot_layer_state(ONESHOT_PRESSED); - unregister_code(KC_COMM); - } - break; - case _DK_REL: - if (record->event.pressed) { // act as 3 on keypress - register_code(KC_3); - } else { // make sure to deactive dead key layer on key release - clear_oneshot_layer_state(ONESHOT_PRESSED); - unregister_code(KC_3); - } - break; - } - - return MACRO_NONE; -}; diff --git a/keyboards/minidox/keymaps/tw1t611/keymap.c b/keyboards/minidox/keymaps/tw1t611/keymap.c deleted file mode 100644 index e94625516e..0000000000 --- a/keyboards/minidox/keymaps/tw1t611/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -#include QMK_KEYBOARD_H -#include "keymap_german.h" - -extern keymap_config_t keymap_config; - -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. -#define _QWERTZ 0 -#define _LOWER 1 -#define _RAISE 2 -#define _ADJUST 3 - -enum custom_keycodes { - QWERTY = SAFE_RANGE, - LOWER, - RAISE, - ADJUST, -}; - -// macro keys -#define CALTDEL LCTL(LALT(KC_DEL)) // ctrl-alt-del -#define CALTESC LCTL(LSFT(KC_ESC)) // ctrl-alt-esc -#define CALT LCTL(KC_LALT) // ctrl-alt - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -[_QWERTZ] = LAYOUT( \ - DE_Q, DE_W, DE_E, DE_R, DE_T, DE_Z, DE_U, DE_I, DE_O, DE_P, \ - DE_A, DE_S, DE_D, DE_F, DE_G, DE_H, DE_J, DE_K, DE_L, KC_SPC, \ - DE_Y, DE_X, DE_C, DE_V, DE_B, DE_N, DE_M, DE_COMM, DE_DOT, DE_MINS, \ - KC_LCTRL, MO(_LOWER), MO(_RAISE), KC_LGUI, KC_LSFT, KC_LALT \ -), - -[_RAISE] = LAYOUT( \ - DE_EXLM, DE_QST, DE_PARA, DE_DLR, DE_HASH, DE_PLUS, DE_7, DE_8, DE_9, DE_0, \ - DE_CIRC, DE_QUOT, DE_DQOT, DE_GRV, DE_AMPR, DE_ASTR, DE_4, DE_5, DE_6, DE_EQL, \ - DE_SLSH, DE_PIPE, DE_BSLS, DE_AT, DE_EURO, DE_PERC, DE_1, DE_2, DE_3, KC_TAB, \ - _______, _______, _______, _______, _______, _______ \ -), - -[_LOWER] = LAYOUT( \ - KC_AUDIO_MUTE, KC_AUDIO_VOL_DOWN, DE_LBRC, DE_RBRC, KC_AUDIO_VOL_UP, KC_HOME, KC_PGDOWN, KC_PGUP, KC_END, DE_TILD, \ - KC_ESC, DE_LESS, DE_LPRN, DE_RPRN, DE_MORE, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_ENT, \ - KC_BSPC, KC_DEL, DE_LCBR, DE_RCBR, KC_PSCR, _______, DE_AE, DE_OE, DE_UE, DE_SS, \ - _______, _______, _______, _______, MO(_ADJUST), _______ \ -), - -[_ADJUST] = LAYOUT( \ - _______, _______, _______, _______, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, \ - CALTESC, CALTDEL, _______, CALT, _______, _______, KC_F4, KC_F5, KC_F6, KC_F11, \ - RESET, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F12, \ - _______, _______, _______, _______, _______, _______ \ -)}; - -void matrix_init_user(void) { - set_single_persistent_default_layer(_QWERTZ); -}; diff --git a/keyboards/minidox/keymaps/tw1t611/readme.md b/keyboards/minidox/keymaps/tw1t611/readme.md deleted file mode 100644 index 7ab4526fbc..0000000000 --- a/keyboards/minidox/keymaps/tw1t611/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Minidox Layout by tw1t611 -![](https://imgur.com/M95KSke.png) - -This is a german layout with support for umlauts and the euro sign. -You need to set your system layout to german. - -[keyboard-layout-editor.com](http://www.keyboard-layout-editor.com/#/gists/d58a82d8017d0c0cca044ef385def165) - -## Layers -| Layer | Legend | -| ----- | ------ | -| Base | Top left (white) | -| Lower | Top right (organge) | -| Raise | Bottom right (blue) | -| Adjust | Front print (orange + shift) | - -## Features -* German layout with support for umlauts and the euro sign -* Raise/lower layers focus first on one-handed use -* Numpad on right hand with raise layer -* Vim optimized - * Easy reachable Esc - * arrow keys on h, j, k, l diff --git a/keyboards/minidox/keymaps/tw1t611/rules.mk b/keyboards/minidox/keymaps/tw1t611/rules.mk deleted file mode 100644 index fcfd2225bc..0000000000 --- a/keyboards/minidox/keymaps/tw1t611/rules.mk +++ /dev/null @@ -1 +0,0 @@ -EXTRAKEY_ENABLE = yes diff --git a/keyboards/minidox/keymaps/xyverz/config.h b/keyboards/minidox/keymaps/xyverz/config.h deleted file mode 100644 index ae26f94999..0000000000 --- a/keyboards/minidox/keymaps/xyverz/config.h +++ /dev/null @@ -1,42 +0,0 @@ -/* -This is the c configuration file for the keymap - -Copyright 2012 Jun Wako <wakojun@gmail.com> -Copyright 2015 Jack Humbert - -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 <http://www.gnu.org/licenses/>. -*/ - -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -#define USE_SERIAL - -#define EE_HANDS - -/* ws2812 RGB LED */ -#define RGB_DI_PIN D7 - -#define RGBLED_NUM 8 // Number of LEDs -#define RGBLIGHT_ANIMATIONS -#define RGBLIGHT_HUE_STEP 10 -#define RGBLIGHT_SAT_STEP 17 -#define RGBLIGHT_VAL_STEP 17 - -#define IGNORE_MOD_TAP_INTERRUPT -#undef PERMISSIVE_HOLD - -#endif diff --git a/keyboards/minidox/keymaps/xyverz/keymap.c b/keyboards/minidox/keymaps/xyverz/keymap.c deleted file mode 100644 index 4863f4f922..0000000000 --- a/keyboards/minidox/keymaps/xyverz/keymap.c +++ /dev/null @@ -1,232 +0,0 @@ -#include QMK_KEYBOARD_H - -extern keymap_config_t keymap_config; - -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. -#define _DVORAK 0 -#define _QWERTY 1 -#define _COLEMAK 2 -#define _LOWER 3 -#define _RAISE 4 -#define _ADJUST 16 - -enum planck_keycodes { - DVORAK = SAFE_RANGE, - QWERTY, - COLEMAK, - LOWER, - RAISE, - BACKLIT -}; - -// Adding macros to make the keymaps below much easier to read. -#define SFTSCLN SFT_T(KC_SCLN) -#define SFTSLSH SFT_T(KC_SLSH) -#define SFTZED SFT_T(KC_Z) -//#define ALTENT ALT_T(KC_ENT) -//#define ESCTRL CTL_T(KC_ESC) -//#define TABGUI GUI_T(KC_TAB) -#define CTRLQ CTL_T(KC_Q) -#define CTRLV CTL_T(KC_V) -#define ALTJ ALT_T(KC_J) -#define ALTW ALT_T(KC_W) -#define CTRLX CTL_T(KC_X) -#define CTRLDOT CTL_T(KC_DOT) -#define ALTC ALT_T(KC_C) -#define ALTCOMM ALT_T(KC_COMM) -//#define GUIBSPC GUI_T(KC_BSPC) - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -/* Dvorak - * - * ,----------------------------------. ,----------------------------------. - * | ' | , | . | P | Y | | F | G | C | R | L | - * |------+------+------+------+------| |------+------+------+------+------| - * | A | O | E | U | I | | D | H | T | N | S | - * |------+------+------+------+------| |------+------+------+------+------| - * |SFT/ ;|CTL/ Q|ALT/ J| K | X | | B | M |ALT/ W|CTL/ V|SFT/ Z| - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | LOWER| Gui | | | | Ent |RAISE | - * `-------------| BSpc | | Spc |------+------. - * | | | | - * `------' `------' - */ -[_DVORAK] = LAYOUT ( \ - KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, \ - KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, \ - SFTSCLN, CTRLQ, ALTJ, KC_K, KC_X, KC_B, KC_M, ALTW, CTRLV, SFTZED, \ - LOWER, KC_LGUI, KC_BSPC, KC_SPC, KC_ENT, RAISE \ -), - -/* Qwerty - * - * ,----------------------------------. ,----------------------------------. - * | Q | W | E | R | T | | Y | U | I | O | P | - * |------+------+------+------+------| |------+------+------+------+------| - * | A | S | D | F | G | | H | J | K | L | ; | - * |------+------+------+------+------| |------+------+------+------+------| - * |SFT/ Z|CTL/ X|ALT/ C| V | B | | N | M |ALT/ ,|CTL/ .|SFT/ /| - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | LOWER| Gui | | | | Ent |RAISE | - * `-------------| BSpc | | Spc |------+------. - * | | | | - * `------' `------' - */ -[_QWERTY] = LAYOUT ( \ - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, \ - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, \ - SFTZED, CTRLX, ALTC, KC_V, KC_B, KC_N, KC_M, ALTCOMM, CTRLDOT, SFTSLSH, \ - LOWER, KC_LGUI, KC_BSPC, KC_SPC, KC_ENT, RAISE \ -), - -/* Colemak - * - * ,----------------------------------. ,----------------------------------. - * | Q | W | F | P | G | | J | L | U | Y | L | - * |------+------+------+------+------| |------+------+------+------+------| - * | A | R | S | T | D | | H | N | E | I | S | - * |------+------+------+------+------| |------+------+------+------+------| - * |SFT/ Z|CTL/ X|ALT/ C| V | B | | K | M |ALT/ ,|CTL/ .|SFT/ /| - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | LOWER| Gui | | | | Ent |RAISE | - * `-------------| BSpc | | Spc |------+------. - * | | | | - * `------' `------' - */ -[_COLEMAK] = LAYOUT ( \ - KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, \ - KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, \ - SFTZED, CTRLX, ALTC, KC_V, KC_B, KC_K, KC_M, ALTCOMM, CTRLDOT, SFTSLSH, \ - LOWER, KC_LGUI, KC_BSPC, KC_SPC, KC_ENT, RAISE \ -), - -/* Lower - * - * ,----------------------------------. ,----------------------------------. - * | ! | @ | # | $ | % | | ^ | & | * | ( | ) | - * |------+------+------+------+------| |------+------+------+------+------| - * | CAPS | | UP | | Home | | PgDn | + | { | } | _ | - * |------+------+------+------+------| |------+------+------+------+------| - * | ~ | Left | Down | Right| End | | PgUp | Mute | Vol- | Vol+ | / | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | | Del | | | | | | | - * `-------------| Esc | | Tab |------+------. - * | | | | - * `------' `------' - */ -[_LOWER] = LAYOUT ( \ - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, \ - KC_CAPS, _______, KC_UP, _______, KC_HOME, KC_PGUP, KC_PLUS, KC_LCBR, KC_RCBR, KC_UNDS, \ - KC_TILD, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, KC_PGDN, KC_MUTE, KC_VOLD, KC_VOLU, KC_SLSH, \ - _______, KC_DEL, KC_ESC, KC_TAB, KC_PIPE, _______ \ -), - -/* Raise - * - * ,----------------------------------. ,----------------------------------. - * | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - * |------+------+------+------+------| |------+------+------+------+------| - * | CAPS | | UP | | Home | | PgDn | = | [ | ] | - | - * |------+------+------+------+------| |------+------+------+------+------| - * | ` | Left | Down | Right| End | | PgUp | Prev | Play | Next | ? | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | | Del | | | | \ | | - * `-------------| Esc | | Tab |------+------. - * | | | | - * `------' `------' - */ -[_RAISE] = LAYOUT ( \ - KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, \ - KC_CAPS, _______, KC_UP, _______, KC_HOME, KC_PGUP, KC_EQL, KC_LBRC, KC_RBRC, KC_MINS, \ - KC_GRV, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, KC_PGDN, KC_MPRV, KC_MPLY, KC_MNXT, KC_QUES, \ - _______, KC_DEL, KC_ESC, KC_TAB, KC_BSLS, _______ \ -), - -/* Adjust (Lower + Raise) - * - * ,----------------------------------. ,----------------------------------. - * | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | - * |------+------+------+------+------| |------+------+------+------+------| - * | F11 | | | | | | | PrSc | ScLk | Paus | F12 | - * |------+------+------+------+------| |------+------+------+------+------| - * | |QWERTY|COLEMK|DVORAK| | |RESET | | | | | - * `----------------------------------' `----------------------------------' - * ,--------------------. ,------,-------------. - * | | | | | | | | - * `-------------| | | |------+------. - * | | | | - * `------' `------' - */ -[_ADJUST] = LAYOUT ( \ - KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_UP, KC_F9, KC_F10, \ - KC_F11, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_F12, \ - _______, QWERTY, COLEMAK, DVORAK, _______, RESET, _______, _______, _______, _______, \ - _______, _______, _______, _______, _______, _______ \ -) -}; - -void persistent_default_layer_set(uint16_t default_layer) { - eeconfig_update_default_layer(default_layer); - default_layer_set(default_layer); -}; - -void matrix_init_user(void) { - // This will disable the red LEDs on the ProMicros - DDRD &= ~(1<<5); - PORTD &= ~(1<<5); - DDRB &= ~(1<<0); - PORTB &= ~(1<<0); -}; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QWERTY: - if (record->event.pressed) { - persistent_default_layer_set(1UL<<_QWERTY); - } - return false; - break; - case COLEMAK: - if (record->event.pressed) { - persistent_default_layer_set(1UL<<_COLEMAK); - } - return false; - break; - case DVORAK: - if (record->event.pressed) { - persistent_default_layer_set(1UL<<_DVORAK); - } - return false; - break; - case LOWER: - if (record->event.pressed) { - layer_on(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - case RAISE: - if (record->event.pressed) { - layer_on(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - } - return true; -}; diff --git a/keyboards/minidox/keymaps/xyverz/rules.mk b/keyboards/minidox/keymaps/xyverz/rules.mk deleted file mode 100644 index c777cb1b9f..0000000000 --- a/keyboards/minidox/keymaps/xyverz/rules.mk +++ /dev/null @@ -1 +0,0 @@ -RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. diff --git a/keyboards/minidox/matrix.c b/keyboards/minidox/matrix.c deleted file mode 100644 index 27a38dca02..0000000000 --- a/keyboards/minidox/matrix.c +++ /dev/null @@ -1,307 +0,0 @@ -/* -Copyright 2012 Jun Wako <wakojun@gmail.com> - -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 <http://www.gnu.org/licenses/>. -*/ - -/* - * scan matrix - */ -#include <stdint.h> -#include <stdbool.h> -#include <avr/io.h> -#include <avr/wdt.h> -#include <avr/interrupt.h> -#include <util/delay.h> -#include "print.h" -#include "debug.h" -#include "util.h" -#include "matrix.h" -#include "split_util.h" -#include "pro_micro.h" -#include "config.h" - -#ifdef USE_I2C -# include "i2c.h" -#else // USE_SERIAL -# include "serial.h" -#endif - -#ifndef DEBOUNCE -# define DEBOUNCE 5 -#endif - -#define ERROR_DISCONNECT_COUNT 5 - -static uint8_t debouncing = DEBOUNCE; -static const int ROWS_PER_HAND = MATRIX_ROWS/2; -static uint8_t error_count = 0; - -static const uint8_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -static const uint8_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -/* matrix state(1:on, 0:off) */ -static matrix_row_t matrix[MATRIX_ROWS]; -static matrix_row_t matrix_debouncing[MATRIX_ROWS]; - -static matrix_row_t read_cols(void); -static void init_cols(void); -static void unselect_rows(void); -static void select_row(uint8_t row); - - -__attribute__ ((weak)) -void matrix_init_kb(void) { - matrix_init_user(); -} - -__attribute__ ((weak)) -void matrix_scan_kb(void) { - matrix_scan_user(); -} - -__attribute__ ((weak)) -void matrix_init_user(void) { -} - -__attribute__ ((weak)) -void matrix_scan_user(void) { -} - -inline -uint8_t matrix_rows(void) -{ - return MATRIX_ROWS; -} - -inline -uint8_t matrix_cols(void) -{ - return MATRIX_COLS; -} - -void matrix_init(void) -{ - debug_enable = true; - debug_matrix = true; - debug_mouse = true; - // initialize row and col - unselect_rows(); - init_cols(); - - TX_RX_LED_INIT; - - // initialize matrix state: all keys off - for (uint8_t i=0; i < MATRIX_ROWS; i++) { - matrix[i] = 0; - matrix_debouncing[i] = 0; - } - - matrix_init_quantum(); -} - -uint8_t _matrix_scan(void) -{ - // Right hand is stored after the left in the matirx so, we need to offset it - int offset = isLeftHand ? 0 : (ROWS_PER_HAND); - - for (uint8_t i = 0; i < ROWS_PER_HAND; i++) { - select_row(i); - _delay_us(30); // without this wait read unstable value. - matrix_row_t cols = read_cols(); - if (matrix_debouncing[i+offset] != cols) { - matrix_debouncing[i+offset] = cols; - debouncing = DEBOUNCE; - } - unselect_rows(); - } - - if (debouncing) { - if (--debouncing) { - _delay_ms(1); - } else { - for (uint8_t i = 0; i < ROWS_PER_HAND; i++) { - matrix[i+offset] = matrix_debouncing[i+offset]; - } - } - } - - return 1; -} - -#ifdef USE_I2C - -// Get rows from other half over i2c -int i2c_transaction(void) { - int slaveOffset = (isLeftHand) ? (ROWS_PER_HAND) : 0; - - int err = i2c_master_start(SLAVE_I2C_ADDRESS + I2C_WRITE); - if (err) goto i2c_error; - - // start of matrix stored at 0x00 - err = i2c_master_write(0x00); - if (err) goto i2c_error; - - // Start read - err = i2c_master_start(SLAVE_I2C_ADDRESS + I2C_READ); - if (err) goto i2c_error; - - if (!err) { - int i; - for (i = 0; i < ROWS_PER_HAND-1; ++i) { - matrix[slaveOffset+i] = i2c_master_read(I2C_ACK); - } - matrix[slaveOffset+i] = i2c_master_read(I2C_NACK); - i2c_master_stop(); - } else { -i2c_error: // the cable is disconnceted, or something else went wrong - i2c_reset_state(); - return err; - } - - return 0; -} - -#else // USE_SERIAL - -int serial_transaction(void) { - int slaveOffset = (isLeftHand) ? (ROWS_PER_HAND) : 0; - - if (serial_update_buffers()) { - return 1; - } - - for (int i = 0; i < ROWS_PER_HAND; ++i) { - matrix[slaveOffset+i] = serial_slave_buffer[i]; - } - return 0; -} -#endif - -uint8_t matrix_scan(void) -{ - int ret = _matrix_scan(); - - - -#ifdef USE_I2C - if( i2c_transaction() ) { -#else // USE_SERIAL - if( serial_transaction() ) { -#endif - // turn on the indicator led when halves are disconnected - TXLED1; - - error_count++; - - if (error_count > ERROR_DISCONNECT_COUNT) { - // reset other half if disconnected - int slaveOffset = (isLeftHand) ? (ROWS_PER_HAND) : 0; - for (int i = 0; i < ROWS_PER_HAND; ++i) { - matrix[slaveOffset+i] = 0; - } - } - } else { - // turn off the indicator led on no error - TXLED0; - error_count = 0; - } - matrix_scan_quantum(); - return ret; -} - -void matrix_slave_scan(void) { - _matrix_scan(); - - int offset = (isLeftHand) ? 0 : (MATRIX_ROWS / 2); - -#ifdef USE_I2C - for (int i = 0; i < ROWS_PER_HAND; ++i) { - /* i2c_slave_buffer[i] = matrix[offset+i]; */ - i2c_slave_buffer[i] = matrix[offset+i]; - } -#else // USE_SERIAL - for (int i = 0; i < ROWS_PER_HAND; ++i) { - serial_slave_buffer[i] = matrix[offset+i]; - } -#endif -} - -bool matrix_is_modified(void) -{ - if (debouncing) return false; - return true; -} - -inline -bool matrix_is_on(uint8_t row, uint8_t col) -{ - return (matrix[row] & ((matrix_row_t)1<<col)); -} - -inline -matrix_row_t matrix_get_row(uint8_t row) -{ - return matrix[row]; -} - -void matrix_print(void) -{ - print("\nr/c 0123456789ABCDEF\n"); - for (uint8_t row = 0; row < MATRIX_ROWS; row++) { - phex(row); print(": "); - pbin_reverse16(matrix_get_row(row)); - print("\n"); - } -} - -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - -static void init_cols(void) -{ - for(int x = 0; x < MATRIX_COLS; x++) { - _SFR_IO8((col_pins[x] >> 4) + 1) &= ~_BV(col_pins[x] & 0xF); - _SFR_IO8((col_pins[x] >> 4) + 2) |= _BV(col_pins[x] & 0xF); - } -} - -static matrix_row_t read_cols(void) -{ - matrix_row_t result = 0; - for(int x = 0; x < MATRIX_COLS; x++) { - result |= (_SFR_IO8(col_pins[x] >> 4) & _BV(col_pins[x] & 0xF)) ? 0 : (1 << x); - } - return result; -} - -static void unselect_rows(void) -{ - for(int x = 0; x < ROWS_PER_HAND; x++) { - _SFR_IO8((row_pins[x] >> 4) + 1) &= ~_BV(row_pins[x] & 0xF); - _SFR_IO8((row_pins[x] >> 4) + 2) |= _BV(row_pins[x] & 0xF); - } -} - -static void select_row(uint8_t row) -{ - _SFR_IO8((row_pins[row] >> 4) + 1) |= _BV(row_pins[row] & 0xF); - _SFR_IO8((row_pins[row] >> 4) + 2) &= ~_BV(row_pins[row] & 0xF); -} diff --git a/keyboards/minidox/minidox.c b/keyboards/minidox/minidox.c deleted file mode 100644 index b4bffbb3e4..0000000000 --- a/keyboards/minidox/minidox.c +++ /dev/null @@ -1 +0,0 @@ -#include "minidox.h"
\ No newline at end of file diff --git a/keyboards/minidox/minidox.h b/keyboards/minidox/minidox.h deleted file mode 100644 index 6e8add206b..0000000000 --- a/keyboards/minidox/minidox.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef MINIDOX_H -#define MINIDOX_H - -#ifdef KEYBOARD_minidox_rev1 - #include "rev1.h" -#endif - -#include "quantum.h" - -#endif
\ No newline at end of file diff --git a/keyboards/minidox/pro_micro.h b/keyboards/minidox/pro_micro.h deleted file mode 100644 index f9e7ed75d9..0000000000 --- a/keyboards/minidox/pro_micro.h +++ /dev/null @@ -1,362 +0,0 @@ -/* - pins_arduino.h - Pin definition functions for Arduino - Part of Arduino - http://www.arduino.cc/ - - Copyright (c) 2007 David A. Mellis - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General - Public License along with this library; if not, write to the - Free Software Foundation, Inc., 59 Temple Place, Suite 330, - Boston, MA 02111-1307 USA - - $Id: wiring.h 249 2007-02-03 16:52:51Z mellis $ -*/ - -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include <avr/pgmspace.h> - -// Workaround for wrong definitions in "iom32u4.h". -// This should be fixed in the AVR toolchain. -#undef UHCON -#undef UHINT -#undef UHIEN -#undef UHADDR -#undef UHFNUM -#undef UHFNUML -#undef UHFNUMH -#undef UHFLEN -#undef UPINRQX -#undef UPINTX -#undef UPNUM -#undef UPRST -#undef UPCONX -#undef UPCFG0X -#undef UPCFG1X -#undef UPSTAX -#undef UPCFG2X -#undef UPIENX -#undef UPDATX -#undef TCCR2A -#undef WGM20 -#undef WGM21 -#undef COM2B0 -#undef COM2B1 -#undef COM2A0 -#undef COM2A1 -#undef TCCR2B -#undef CS20 -#undef CS21 -#undef CS22 -#undef WGM22 -#undef FOC2B -#undef FOC2A -#undef TCNT2 -#undef TCNT2_0 -#undef TCNT2_1 -#undef TCNT2_2 -#undef TCNT2_3 -#undef TCNT2_4 -#undef TCNT2_5 -#undef TCNT2_6 -#undef TCNT2_7 -#undef OCR2A -#undef OCR2_0 -#undef OCR2_1 -#undef OCR2_2 -#undef OCR2_3 -#undef OCR2_4 -#undef OCR2_5 -#undef OCR2_6 -#undef OCR2_7 -#undef OCR2B -#undef OCR2_0 -#undef OCR2_1 -#undef OCR2_2 -#undef OCR2_3 -#undef OCR2_4 -#undef OCR2_5 -#undef OCR2_6 -#undef OCR2_7 - -#define NUM_DIGITAL_PINS 30 -#define NUM_ANALOG_INPUTS 12 - -#define TX_RX_LED_INIT DDRD |= (1<<5), DDRB |= (1<<0) -#define TXLED0 PORTD |= (1<<5) -#define TXLED1 PORTD &= ~(1<<5) -#define RXLED0 PORTB |= (1<<0) -#define RXLED1 PORTB &= ~(1<<0) - -static const uint8_t SDA = 2; -static const uint8_t SCL = 3; -#define LED_BUILTIN 13 - -// Map SPI port to 'new' pins D14..D17 -static const uint8_t SS = 17; -static const uint8_t MOSI = 16; -static const uint8_t MISO = 14; -static const uint8_t SCK = 15; - -// Mapping of analog pins as digital I/O -// A6-A11 share with digital pins -static const uint8_t ADC0 = 18; -static const uint8_t ADC1 = 19; -static const uint8_t ADC2 = 20; -static const uint8_t ADC3 = 21; -static const uint8_t ADC4 = 22; -static const uint8_t ADC5 = 23; -static const uint8_t ADC6 = 24; // D4 -static const uint8_t ADC7 = 25; // D6 -static const uint8_t ADC8 = 26; // D8 -static const uint8_t ADC9 = 27; // D9 -static const uint8_t ADC10 = 28; // D10 -static const uint8_t ADC11 = 29; // D12 - -#define digitalPinToPCICR(p) ((((p) >= 8 && (p) <= 11) || ((p) >= 14 && (p) <= 17) || ((p) >= A8 && (p) <= A10)) ? (&PCICR) : ((uint8_t *)0)) -#define digitalPinToPCICRbit(p) 0 -#define digitalPinToPCMSK(p) ((((p) >= 8 && (p) <= 11) || ((p) >= 14 && (p) <= 17) || ((p) >= A8 && (p) <= A10)) ? (&PCMSK0) : ((uint8_t *)0)) -#define digitalPinToPCMSKbit(p) ( ((p) >= 8 && (p) <= 11) ? (p) - 4 : ((p) == 14 ? 3 : ((p) == 15 ? 1 : ((p) == 16 ? 2 : ((p) == 17 ? 0 : (p - A8 + 4)))))) - -// __AVR_ATmega32U4__ has an unusual mapping of pins to channels -extern const uint8_t PROGMEM analog_pin_to_channel_PGM[]; -#define analogPinToChannel(P) ( pgm_read_byte( analog_pin_to_channel_PGM + (P) ) ) - -#define digitalPinToInterrupt(p) ((p) == 0 ? 2 : ((p) == 1 ? 3 : ((p) == 2 ? 1 : ((p) == 3 ? 0 : ((p) == 7 ? 4 : NOT_AN_INTERRUPT))))) - -#ifdef ARDUINO_MAIN - -// On the Arduino board, digital pins are also used -// for the analog output (software PWM). Analog input -// pins are a separate set. - -// ATMEL ATMEGA32U4 / ARDUINO LEONARDO -// -// D0 PD2 RXD1/INT2 -// D1 PD3 TXD1/INT3 -// D2 PD1 SDA SDA/INT1 -// D3# PD0 PWM8/SCL OC0B/SCL/INT0 -// D4 A6 PD4 ADC8 -// D5# PC6 ??? OC3A/#OC4A -// D6# A7 PD7 FastPWM #OC4D/ADC10 -// D7 PE6 INT6/AIN0 -// -// D8 A8 PB4 ADC11/PCINT4 -// D9# A9 PB5 PWM16 OC1A/#OC4B/ADC12/PCINT5 -// D10# A10 PB6 PWM16 OC1B/0c4B/ADC13/PCINT6 -// D11# PB7 PWM8/16 0C0A/OC1C/#RTS/PCINT7 -// D12 A11 PD6 T1/#OC4D/ADC9 -// D13# PC7 PWM10 CLK0/OC4A -// -// A0 D18 PF7 ADC7 -// A1 D19 PF6 ADC6 -// A2 D20 PF5 ADC5 -// A3 D21 PF4 ADC4 -// A4 D22 PF1 ADC1 -// A5 D23 PF0 ADC0 -// -// New pins D14..D17 to map SPI port to digital pins -// -// MISO D14 PB3 MISO,PCINT3 -// SCK D15 PB1 SCK,PCINT1 -// MOSI D16 PB2 MOSI,PCINT2 -// SS D17 PB0 RXLED,SS/PCINT0 -// -// Connected LEDs on board for TX and RX -// TXLED D24 PD5 XCK1 -// RXLED D17 PB0 -// HWB PE2 HWB - -// these arrays map port names (e.g. port B) to the -// appropriate addresses for various functions (e.g. reading -// and writing) -const uint16_t PROGMEM port_to_mode_PGM[] = { - NOT_A_PORT, - NOT_A_PORT, - (uint16_t) &DDRB, - (uint16_t) &DDRC, - (uint16_t) &DDRD, - (uint16_t) &DDRE, - (uint16_t) &DDRF, -}; - -const uint16_t PROGMEM port_to_output_PGM[] = { - NOT_A_PORT, - NOT_A_PORT, - (uint16_t) &PORTB, - (uint16_t) &PORTC, - (uint16_t) &PORTD, - (uint16_t) &PORTE, - (uint16_t) &PORTF, -}; - -const uint16_t PROGMEM port_to_input_PGM[] = { - NOT_A_PORT, - NOT_A_PORT, - (uint16_t) &PINB, - (uint16_t) &PINC, - (uint16_t) &PIND, - (uint16_t) &PINE, - (uint16_t) &PINF, -}; - -const uint8_t PROGMEM digital_pin_to_port_PGM[] = { - PD, // D0 - PD2 - PD, // D1 - PD3 - PD, // D2 - PD1 - PD, // D3 - PD0 - PD, // D4 - PD4 - PC, // D5 - PC6 - PD, // D6 - PD7 - PE, // D7 - PE6 - - PB, // D8 - PB4 - PB, // D9 - PB5 - PB, // D10 - PB6 - PB, // D11 - PB7 - PD, // D12 - PD6 - PC, // D13 - PC7 - - PB, // D14 - MISO - PB3 - PB, // D15 - SCK - PB1 - PB, // D16 - MOSI - PB2 - PB, // D17 - SS - PB0 - - PF, // D18 - A0 - PF7 - PF, // D19 - A1 - PF6 - PF, // D20 - A2 - PF5 - PF, // D21 - A3 - PF4 - PF, // D22 - A4 - PF1 - PF, // D23 - A5 - PF0 - - PD, // D24 - PD5 - PD, // D25 / D6 - A7 - PD7 - PB, // D26 / D8 - A8 - PB4 - PB, // D27 / D9 - A9 - PB5 - PB, // D28 / D10 - A10 - PB6 - PD, // D29 / D12 - A11 - PD6 -}; - -const uint8_t PROGMEM digital_pin_to_bit_mask_PGM[] = { - _BV(2), // D0 - PD2 - _BV(3), // D1 - PD3 - _BV(1), // D2 - PD1 - _BV(0), // D3 - PD0 - _BV(4), // D4 - PD4 - _BV(6), // D5 - PC6 - _BV(7), // D6 - PD7 - _BV(6), // D7 - PE6 - - _BV(4), // D8 - PB4 - _BV(5), // D9 - PB5 - _BV(6), // D10 - PB6 - _BV(7), // D11 - PB7 - _BV(6), // D12 - PD6 - _BV(7), // D13 - PC7 - - _BV(3), // D14 - MISO - PB3 - _BV(1), // D15 - SCK - PB1 - _BV(2), // D16 - MOSI - PB2 - _BV(0), // D17 - SS - PB0 - - _BV(7), // D18 - A0 - PF7 - _BV(6), // D19 - A1 - PF6 - _BV(5), // D20 - A2 - PF5 - _BV(4), // D21 - A3 - PF4 - _BV(1), // D22 - A4 - PF1 - _BV(0), // D23 - A5 - PF0 - - _BV(5), // D24 - PD5 - _BV(7), // D25 / D6 - A7 - PD7 - _BV(4), // D26 / D8 - A8 - PB4 - _BV(5), // D27 / D9 - A9 - PB5 - _BV(6), // D28 / D10 - A10 - PB6 - _BV(6), // D29 / D12 - A11 - PD6 -}; - -const uint8_t PROGMEM digital_pin_to_timer_PGM[] = { - NOT_ON_TIMER, - NOT_ON_TIMER, - NOT_ON_TIMER, - TIMER0B, /* 3 */ - NOT_ON_TIMER, - TIMER3A, /* 5 */ - TIMER4D, /* 6 */ - NOT_ON_TIMER, - - NOT_ON_TIMER, - TIMER1A, /* 9 */ - TIMER1B, /* 10 */ - TIMER0A, /* 11 */ - - NOT_ON_TIMER, - TIMER4A, /* 13 */ - - NOT_ON_TIMER, - NOT_ON_TIMER, - NOT_ON_TIMER, - NOT_ON_TIMER, - NOT_ON_TIMER, - NOT_ON_TIMER, - - NOT_ON_TIMER, - NOT_ON_TIMER, - NOT_ON_TIMER, - NOT_ON_TIMER, - NOT_ON_TIMER, - NOT_ON_TIMER, - NOT_ON_TIMER, - NOT_ON_TIMER, - NOT_ON_TIMER, - NOT_ON_TIMER, -}; - -const uint8_t PROGMEM analog_pin_to_channel_PGM[] = { - 7, // A0 PF7 ADC7 - 6, // A1 PF6 ADC6 - 5, // A2 PF5 ADC5 - 4, // A3 PF4 ADC4 - 1, // A4 PF1 ADC1 - 0, // A5 PF0 ADC0 - 8, // A6 D4 PD4 ADC8 - 10, // A7 D6 PD7 ADC10 - 11, // A8 D8 PB4 ADC11 - 12, // A9 D9 PB5 ADC12 - 13, // A10 D10 PB6 ADC13 - 9 // A11 D12 PD6 ADC9 -}; - -#endif /* ARDUINO_MAIN */ - -// These serial port names are intended to allow libraries and architecture-neutral -// sketches to automatically default to the correct port name for a particular type -// of use. For example, a GPS module would normally connect to SERIAL_PORT_HARDWARE_OPEN, -// the first hardware serial port whose RX/TX pins are not dedicated to another use. -// -// SERIAL_PORT_MONITOR Port which normally prints to the Arduino Serial Monitor -// -// SERIAL_PORT_USBVIRTUAL Port which is USB virtual serial -// -// SERIAL_PORT_LINUXBRIDGE Port which connects to a Linux system via Bridge library -// -// SERIAL_PORT_HARDWARE Hardware serial port, physical RX & TX pins. -// -// SERIAL_PORT_HARDWARE_OPEN Hardware serial ports which are open for use. Their RX & TX -// pins are NOT connected to anything by default. -#define SERIAL_PORT_MONITOR Serial -#define SERIAL_PORT_USBVIRTUAL Serial -#define SERIAL_PORT_HARDWARE Serial1 -#define SERIAL_PORT_HARDWARE_OPEN Serial1 - -#endif /* Pins_Arduino_h */ diff --git a/keyboards/minidox/readme.md b/keyboards/minidox/readme.md deleted file mode 100644 index 74afedc18b..0000000000 --- a/keyboards/minidox/readme.md +++ /dev/null @@ -1,75 +0,0 @@ -MiniDox -===== - -![MiniDox](http://i.imgur.com/iWb3yO0.jpg) - -A compact version of the ErgoDox - -Keyboard Maintainer: That-Canadian -Hardware Supported: MiniDox PCB rev1 Pro Micro - -Make example for this keyboard (after setting up your build environment): - - make minidox/rev1: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. - -## Build Guide - -A build guide for putting together the MiniDox v1 can be found here: [MiniDox Build Log / Guide](http://imgur.com/a/vImo6) - -Flashing -------- -Note: Most of this is copied from the Let's Split readme, because it is awesome - -From the root directory run `make PROJECT:KEYMAP:avrdude` for automatic serial port resolution and flashing. -Example: `make minidox/rev1:default:avrdude` - -Choosing which board to plug the USB cable into (choosing Master) --------- -Because the two boards are identical, the firmware has logic to differentiate the left and right board. - -It uses two strategies to figure things out: look at the EEPROM (memory on the chip) or looks if the current board has the usb cable. - -The EEPROM approach requires additional setup (flashing the eeeprom) but allows you to swap the usb cable to either side. - -The USB cable approach is easier to setup and if you just want the usb cable on the left board, you do not need to do anything extra. - -### Setting the left hand as master -If you always plug the usb cable into the left board, nothing extra is needed as this is the default. Comment out `EE_HANDS` and comment out `I2C_MASTER_RIGHT` or `MASTER_RIGHT` if for some reason it was set. - -### Setting the right hand as master -If you always plug the usb cable into the right board, add an extra flag to your `config.h` -``` - #define MASTER_RIGHT -``` - -### Setting EE_hands to use either hands as master -If you define `EE_HANDS` in your `config.h`, you will need to set the -EEPROM for the left and right halves. - -The EEPROM is used to store whether the -half is left handed or right handed. This makes it so that the same firmware -file will run on both hands instead of having to flash left and right handed -versions of the firmware to each half. To flash the EEPROM file for the left -half run: -``` -avrdude -p atmega32u4 -P $(COM_PORT) -c avr109 -U eeprom:w:"./quantum/split_common/eeprom-lefthand.eep" -// or the equivalent in dfu-programmer - -``` -and similarly for right half -``` -avrdude -p atmega32u4 -P $(COM_PORT) -c avr109 -U eeprom:w:"./quantum/split_common/eeprom-righthand.eep" -// or the equivalent in dfu-programmer -``` - -NOTE: replace `$(COM_PORT)` with the port of your device (e.g. `/dev/ttyACM0`) - -After you have flashed the EEPROM, you then need to set `EE_HANDS` in your config.h, rebuild the hex files and reflash. - -Note that you need to program both halves, but you have the option of using -different keymaps for each half. You could program the left half with a QWERTY -layout and the right half with a Colemak layout using bootmagic's default layout option. -Then if you connect the left half to a computer by USB the keyboard will use QWERTY and Colemak when the -right half is connected. diff --git a/keyboards/minidox/rev1/config.h b/keyboards/minidox/rev1/config.h deleted file mode 100644 index b7272bdb05..0000000000 --- a/keyboards/minidox/rev1/config.h +++ /dev/null @@ -1,36 +0,0 @@ -/* -Copyright 2012 Jun Wako <wakojun@gmail.com> - -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 <http://www.gnu.org/licenses/>. -*/ - -#ifndef REV1_CONFIG_H -#define REV1_CONFIG_H - -#include "../config.h" - -#define DEVICE_VER 0x0001 - -// wiring of each half -#define MATRIX_ROW_PINS { B2, B6, B4, B5 } -#define MATRIX_COL_PINS { F4, D3, D2, D1, D4 } - -#define USE_SERIAL - -//#define EE_HANDS - -#define I2C_MASTER_LEFT -//#define I2C_MASTER_RIGHT - -#endif diff --git a/keyboards/minidox/rev1/info.json b/keyboards/minidox/rev1/info.json deleted file mode 100644 index c86e9a0d74..0000000000 --- a/keyboards/minidox/rev1/info.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "keyboard_name": "MiniDox", - "url": "", - "maintainer": "qmk", - "width": 12, - "height": 5.75, - "layouts": { - "LAYOUT": { - "key_count": 36, - "layout": [{"x":0, "y":0.375}, {"x":1, "y":0.125}, {"x":2, "y":0}, {"x":3, "y":0.125}, {"x":4, "y":0.25}, {"x":7, "y":0.25}, {"x":8, "y":0.125}, {"x":9, "y":0}, {"x":10, "y":0.125}, {"x":11, "y":0.375}, {"x":0, "y":1.375}, {"x":1, "y":1.125}, {"x":2, "y":1}, {"x":3, "y":1.125}, {"x":4, "y":1.25}, {"x":7, "y":1.25}, {"x":8, "y":1.125}, {"x":9, "y":1}, {"x":10, "y":1.125}, {"x":11, "y":1.375}, {"x":0, "y":2.375}, {"x":1, "y":2.125}, {"x":2, "y":2}, {"x":3, "y":2.125}, {"x":4, "y":2.25}, {"x":7, "y":2.25}, {"x":8, "y":2.125}, {"x":9, "y":2}, {"x":10, "y":2.125}, {"x":11, "y":2.375}, {"x":2.5, "y":4.75}, {"x":3.5, "y":4.75}, {"x":4.5, "y":3.75, "h":2}, {"x":6.5, "y":3.75, "h":2}, {"x":7.5, "y":4.75}, {"x":8.5, "y":4.75}] - } - } -} diff --git a/keyboards/minidox/rev1/rev1.c b/keyboards/minidox/rev1/rev1.c deleted file mode 100644 index 72b473933e..0000000000 --- a/keyboards/minidox/rev1/rev1.c +++ /dev/null @@ -1 +0,0 @@ -#include "minidox.h" diff --git a/keyboards/minidox/rev1/rev1.h b/keyboards/minidox/rev1/rev1.h deleted file mode 100644 index 99c579d6eb..0000000000 --- a/keyboards/minidox/rev1/rev1.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef REV1_H -#define REV1_H - -#include "../minidox.h" - -//void promicro_bootloader_jmp(bool program); -#include "quantum.h" - -//void promicro_bootloader_jmp(bool program); - -// readability -#define ___ KC_NO - -#define LAYOUT( \ - k01, k02, k03, k04, k05, k45, k44, k43, k42, k41, \ - k11, k12, k13, k14, k15, k55, k54, k53, k52, k51, \ - k21, k22, k23, k24, k25, k65, k64, k63, k62, k61, \ - k33, k34, k35, k75, k74, k73 \ - ) \ - { \ - { k01, k02, k03, k04, k05 }, \ - { k11, k12, k13, k14, k15 }, \ - { k21, k22, k23, k24, k25 }, \ - { ___, ___, k33, k34, k35 }, \ - { k41, k42, k43, k44, k45 }, \ - { k51, k52, k53, k54, k55 }, \ - { k61, k62, k63, k64, k65 }, \ - { ___, ___, k73, k74, k75 } \ - } - -#endif diff --git a/keyboards/minidox/rev1/rules.mk b/keyboards/minidox/rev1/rules.mk deleted file mode 100644 index f845616741..0000000000 --- a/keyboards/minidox/rev1/rules.mk +++ /dev/null @@ -1 +0,0 @@ -BACKLIGHT_ENABLE = no
\ No newline at end of file diff --git a/keyboards/minidox/rules.mk b/keyboards/minidox/rules.mk deleted file mode 100644 index 861976e15b..0000000000 --- a/keyboards/minidox/rules.mk +++ /dev/null @@ -1,73 +0,0 @@ -SRC += matrix.c \ - i2c.c \ - split_util.c \ - serial.c - -# MCU name -#MCU = at90usb1287 -MCU = atmega32u4 - -# Processor frequency. -# This will define a symbol, F_CPU, in all source code files equal to the -# processor frequency in Hz. You can then use this symbol in your source code to -# calculate timings. Do NOT tack on a 'UL' at the end, this will be done -# automatically to create a 32-bit value in your source code. -# -# This will be an integer division of F_USB below, as it is sourced by -# F_USB after it has run through any CPU prescalers. Note that this value -# does not *change* the processor frequency - it should merely be updated to -# reflect the processor speed set externally so that the code can use accurate -# software delays. -F_CPU = 16000000 - -# -# LUFA specific -# -# Target architecture (see library "Board Types" documentation). -ARCH = AVR8 - -# Input clock frequency. -# This will define a symbol, F_USB, in all source code files equal to the -# input clock frequency (before any prescaling is performed) in Hz. This value may -# differ from F_CPU if prescaling is used on the latter, and is required as the -# raw input clock is fed directly to the PLL sections of the AVR for high speed -# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' -# at the end, this will be done automatically to create a 32-bit value in your -# source code. -# -# If no clock division is performed on the input clock inside the AVR (via the -# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. -F_USB = $(F_CPU) - -# Bootloader -# This definition is optional, and if your keyboard supports multiple bootloaders of -# different sizes, comment this out, and the correct address will be loaded -# automatically (+60). See bootloader.mk for all options. -BOOTLOADER = caterina - -# Interrupt driven control endpoint task(+60) -OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT - -# Build Options -# change to "no" to disable the options, or define them in the Makefile in -# the appropriate keymap folder that will get included automatically -# -BOOTMAGIC_ENABLE ?= no # Virtual DIP switch configuration(+1000) -MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700) -EXTRAKEY_ENABLE ?= no # Audio control and System control(+450) -CONSOLE_ENABLE ?= no # Console for debug(+400) -COMMAND_ENABLE ?= yes # Commands for debug and configuration -NKRO_ENABLE ?= no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -BACKLIGHT_ENABLE ?= no # Enable keyboard backlight functionality -MIDI_ENABLE ?= no # MIDI controls -AUDIO_ENABLE ?= no # Audio output on port C6 -UNICODE_ENABLE ?= no # Unicode -BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE ?= no # Enable WS2812 RGB underlight. -USE_I2C ?= no -# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE -SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend - -CUSTOM_MATRIX = yes - -DEFAULT_FOLDER = minidox/rev1
\ No newline at end of file diff --git a/keyboards/minidox/serial.c b/keyboards/minidox/serial.c deleted file mode 100644 index 74bcbb6bf6..0000000000 --- a/keyboards/minidox/serial.c +++ /dev/null @@ -1,228 +0,0 @@ -/* - * WARNING: be careful changing this code, it is very timing dependent - */ - -#ifndef F_CPU -#define F_CPU 16000000 -#endif - -#include <avr/io.h> -#include <avr/interrupt.h> -#include <util/delay.h> -#include <stdbool.h> -#include "serial.h" - -#ifndef USE_I2C - -// Serial pulse period in microseconds. Its probably a bad idea to lower this -// value. -#define SERIAL_DELAY 24 - -uint8_t volatile serial_slave_buffer[SERIAL_SLAVE_BUFFER_LENGTH] = {0}; -uint8_t volatile serial_master_buffer[SERIAL_MASTER_BUFFER_LENGTH] = {0}; - -#define SLAVE_DATA_CORRUPT (1<<0) -volatile uint8_t status = 0; - -inline static -void serial_delay(void) { - _delay_us(SERIAL_DELAY); -} - -inline static -void serial_output(void) { - SERIAL_PIN_DDR |= SERIAL_PIN_MASK; -} - -// make the serial pin an input with pull-up resistor -inline static -void serial_input(void) { - SERIAL_PIN_DDR &= ~SERIAL_PIN_MASK; - SERIAL_PIN_PORT |= SERIAL_PIN_MASK; -} - -inline static -uint8_t serial_read_pin(void) { - return !!(SERIAL_PIN_INPUT & SERIAL_PIN_MASK); -} - -inline static -void serial_low(void) { - SERIAL_PIN_PORT &= ~SERIAL_PIN_MASK; -} - -inline static -void serial_high(void) { - SERIAL_PIN_PORT |= SERIAL_PIN_MASK; -} - -void serial_master_init(void) { - serial_output(); - serial_high(); -} - -void serial_slave_init(void) { - serial_input(); - - // Enable INT0 - EIMSK |= _BV(INT0); - // Trigger on falling edge of INT0 - EICRA &= ~(_BV(ISC00) | _BV(ISC01)); -} - -// Used by the master to synchronize timing with the slave. -static -void sync_recv(void) { - serial_input(); - // This shouldn't hang if the slave disconnects because the - // serial line will float to high if the slave does disconnect. - while (!serial_read_pin()); - serial_delay(); -} - -// Used by the slave to send a synchronization signal to the master. -static -void sync_send(void) { - serial_output(); - - serial_low(); - serial_delay(); - - serial_high(); -} - -// Reads a byte from the serial line -static -uint8_t serial_read_byte(void) { - uint8_t byte = 0; - serial_input(); - for ( uint8_t i = 0; i < 8; ++i) { - byte = (byte << 1) | serial_read_pin(); - serial_delay(); - _delay_us(1); - } - - return byte; -} - -// Sends a byte with MSB ordering -static -void serial_write_byte(uint8_t data) { - uint8_t b = 8; - serial_output(); - while( b-- ) { - if(data & (1 << b)) { - serial_high(); - } else { - serial_low(); - } - serial_delay(); - } -} - -// interrupt handle to be used by the slave device -ISR(SERIAL_PIN_INTERRUPT) { - sync_send(); - - uint8_t checksum = 0; - for (int i = 0; i < SERIAL_SLAVE_BUFFER_LENGTH; ++i) { - serial_write_byte(serial_slave_buffer[i]); - sync_send(); - checksum += serial_slave_buffer[i]; - } - serial_write_byte(checksum); - sync_send(); - - // wait for the sync to finish sending - serial_delay(); - - // read the middle of pulses - _delay_us(SERIAL_DELAY/2); - - uint8_t checksum_computed = 0; - for (int i = 0; i < SERIAL_MASTER_BUFFER_LENGTH; ++i) { - serial_master_buffer[i] = serial_read_byte(); - sync_send(); - checksum_computed += serial_master_buffer[i]; - } - uint8_t checksum_received = serial_read_byte(); - sync_send(); - - serial_input(); // end transaction - - if ( checksum_computed != checksum_received ) { - status |= SLAVE_DATA_CORRUPT; - } else { - status &= ~SLAVE_DATA_CORRUPT; - } -} - -inline -bool serial_slave_DATA_CORRUPT(void) { - return status & SLAVE_DATA_CORRUPT; -} - -// Copies the serial_slave_buffer to the master and sends the -// serial_master_buffer to the slave. -// -// Returns: -// 0 => no error -// 1 => slave did not respond -int serial_update_buffers(void) { - // this code is very time dependent, so we need to disable interrupts - cli(); - - // signal to the slave that we want to start a transaction - serial_output(); - serial_low(); - _delay_us(1); - - // wait for the slaves response - serial_input(); - serial_high(); - _delay_us(SERIAL_DELAY); - - // check if the slave is present - if (serial_read_pin()) { - // slave failed to pull the line low, assume not present - sei(); - return 1; - } - - // if the slave is present syncronize with it - sync_recv(); - - uint8_t checksum_computed = 0; - // receive data from the slave - for (int i = 0; i < SERIAL_SLAVE_BUFFER_LENGTH; ++i) { - serial_slave_buffer[i] = serial_read_byte(); - sync_recv(); - checksum_computed += serial_slave_buffer[i]; - } - uint8_t checksum_received = serial_read_byte(); - sync_recv(); - - if (checksum_computed != checksum_received) { - sei(); - return 1; - } - - uint8_t checksum = 0; - // send data to the slave - for (int i = 0; i < SERIAL_MASTER_BUFFER_LENGTH; ++i) { - serial_write_byte(serial_master_buffer[i]); - sync_recv(); - checksum += serial_master_buffer[i]; - } - serial_write_byte(checksum); - sync_recv(); - - // always, release the line when not in use - serial_output(); - serial_high(); - - sei(); - return 0; -} - -#endif diff --git a/keyboards/minidox/serial.h b/keyboards/minidox/serial.h deleted file mode 100644 index 15fe4db7b4..0000000000 --- a/keyboards/minidox/serial.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef MY_SERIAL_H -#define MY_SERIAL_H - -#include "config.h" -#include <stdbool.h> - -/* TODO: some defines for interrupt setup */ -#define SERIAL_PIN_DDR DDRD -#define SERIAL_PIN_PORT PORTD -#define SERIAL_PIN_INPUT PIND -#define SERIAL_PIN_MASK _BV(PD0) -#define SERIAL_PIN_INTERRUPT INT0_vect - -#define SERIAL_SLAVE_BUFFER_LENGTH MATRIX_ROWS/2 -#define SERIAL_MASTER_BUFFER_LENGTH 1 - -// Buffers for master - slave communication -extern volatile uint8_t serial_slave_buffer[SERIAL_SLAVE_BUFFER_LENGTH]; -extern volatile uint8_t serial_master_buffer[SERIAL_MASTER_BUFFER_LENGTH]; - -void serial_master_init(void); -void serial_slave_init(void); -int serial_update_buffers(void); -bool serial_slave_data_corrupt(void); - -#endif diff --git a/keyboards/minidox/split_util.c b/keyboards/minidox/split_util.c deleted file mode 100644 index 39639c3b4b..0000000000 --- a/keyboards/minidox/split_util.c +++ /dev/null @@ -1,84 +0,0 @@ -#include <avr/io.h> -#include <avr/wdt.h> -#include <avr/power.h> -#include <avr/interrupt.h> -#include <util/delay.h> -#include <avr/eeprom.h> -#include "split_util.h" -#include "matrix.h" -#include "keyboard.h" -#include "config.h" - -#ifdef USE_I2C -# include "i2c.h" -#else -# include "serial.h" -#endif - -volatile bool isLeftHand = true; - -static void setup_handedness(void) { - #ifdef EE_HANDS - isLeftHand = eeprom_read_byte(EECONFIG_HANDEDNESS); - #else - // I2C_MASTER_RIGHT is deprecated, use MASTER_RIGHT instead, since this works for both serial and i2c - #if defined(I2C_MASTER_RIGHT) || defined(MASTER_RIGHT) - isLeftHand = !has_usb(); - #else - isLeftHand = has_usb(); - #endif - #endif -} - -static void keyboard_master_setup(void) { -#ifdef USE_I2C - i2c_master_init(); -#ifdef SSD1306OLED - matrix_master_OLED_init (); -#endif -#else - serial_master_init(); -#endif -} - -static void keyboard_slave_setup(void) { -#ifdef USE_I2C - i2c_slave_init(SLAVE_I2C_ADDRESS); -#else - serial_slave_init(); -#endif -} - -bool has_usb(void) { - USBCON |= (1 << OTGPADE); //enables VBUS pad - _delay_us(5); - return (USBSTA & (1<<VBUS)); //checks state of VBUS -} - -void split_keyboard_setup(void) { - setup_handedness(); - - if (has_usb()) { - keyboard_master_setup(); - } else { - keyboard_slave_setup(); - } - sei(); -} - -void keyboard_slave_loop(void) { - matrix_init(); - - while (1) { - matrix_slave_scan(); - } -} - -// this code runs before the usb and keyboard is initialized -void matrix_setup(void) { - split_keyboard_setup(); - - if (!has_usb()) { - keyboard_slave_loop(); - } -} diff --git a/keyboards/minidox/split_util.h b/keyboards/minidox/split_util.h deleted file mode 100644 index 595a0659e1..0000000000 --- a/keyboards/minidox/split_util.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef SPLIT_KEYBOARD_UTIL_H -#define SPLIT_KEYBOARD_UTIL_H - -#include <stdbool.h> -#include "eeconfig.h" - -#define SLAVE_I2C_ADDRESS 0x32 - -extern volatile bool isLeftHand; - -// slave version of matix scan, defined in matrix.c -void matrix_slave_scan(void); - -void split_keyboard_setup(void); -bool has_usb(void); -void keyboard_slave_loop(void); - -void matrix_master_OLED_init (void); - -#endif |