summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--keyboards/eu_isolation/config.h45
-rw-r--r--keyboards/eu_isolation/eu_isolation.c16
-rw-r--r--keyboards/eu_isolation/eu_isolation.h59
-rw-r--r--keyboards/eu_isolation/info.json169
-rw-r--r--keyboards/eu_isolation/keymaps/bigspace/config.h19
-rw-r--r--keyboards/eu_isolation/keymaps/bigspace/keymap.c60
-rw-r--r--keyboards/eu_isolation/keymaps/bigspace/readme.md4
-rw-r--r--keyboards/eu_isolation/keymaps/bigspace/rules.mk1
-rw-r--r--keyboards/eu_isolation/keymaps/default/config.h19
-rw-r--r--keyboards/eu_isolation/keymaps/default/keymap.c60
-rw-r--r--keyboards/eu_isolation/keymaps/default/readme.md9
-rw-r--r--keyboards/eu_isolation/keymaps/default/rules.mk1
-rw-r--r--keyboards/eu_isolation/keymaps/mit/config.h19
-rw-r--r--keyboards/eu_isolation/keymaps/mit/keymap.c60
-rw-r--r--keyboards/eu_isolation/keymaps/mit/readme.md3
-rw-r--r--keyboards/eu_isolation/keymaps/mit/rules.mk1
-rw-r--r--keyboards/eu_isolation/readme.md31
-rw-r--r--keyboards/eu_isolation/rules.mk18
18 files changed, 594 insertions, 0 deletions
diff --git a/keyboards/eu_isolation/config.h b/keyboards/eu_isolation/config.h
new file mode 100644
index 0000000000..e1564b8d6b
--- /dev/null
+++ b/keyboards/eu_isolation/config.h
@@ -0,0 +1,45 @@
+/* Copyright 2020 Austin "TuckTuckFloof" Ashmore
+* 
+* 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/>. 
+*/ 
+#pragma once
+
+#include "config_common.h"
+
+/* USB Device descriptor parameter */
+#define VENDOR_ID       0xFEED
+#define PRODUCT_ID      0x4373
+#define DEVICE_VER      0x0001
+#define MANUFACTURER    TuckTuckFloof
+#define PRODUCT         EU ISOlation
+
+/* key matrix size */
+#define MATRIX_ROWS 4
+#define MATRIX_COLS 14
+
+/* NIU Mini PCB default pin-out */
+#define MATRIX_ROW_PINS { D2, D3, F1, F0 }
+#define MATRIX_COL_PINS { D0, D1, D4, D6, D7, B4, B5, B6, C6, C7, F7, F6, F5, F4}
+#define UNUSED_PINS
+
+/* COL2ROW or ROW2COL */
+#define DIODE_DIRECTION COL2ROW
+
+/* Set 0 if debouncing isn't needed */
+#define DEBOUNCE 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
diff --git a/keyboards/eu_isolation/eu_isolation.c b/keyboards/eu_isolation/eu_isolation.c
new file mode 100644
index 0000000000..9794e34e5c
--- /dev/null
+++ b/keyboards/eu_isolation/eu_isolation.c
@@ -0,0 +1,16 @@
+/* Copyright 2020 Austin "TuckTuckFloof" Ashmore
+* 
+* 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/>. 
+*/ 
+
+#include "eu_isolation.h"
diff --git a/keyboards/eu_isolation/eu_isolation.h b/keyboards/eu_isolation/eu_isolation.h
new file mode 100644
index 0000000000..f4c9f11085
--- /dev/null
+++ b/keyboards/eu_isolation/eu_isolation.h
@@ -0,0 +1,59 @@
+/* Copyright 2020 Austin "TuckTuckFloof" Ashmore
+* 
+* 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/>. 
+*/ 
+
+#pragma once
+
+#include "quantum.h"
+
+#define ___ KC_NO
+
+#define LAYOUT_euiso_mit( \
+    k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, \
+    k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, \
+    k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \
+    k32, k33, k34, k35, k36,      k37, k39, k3a, k3b, k3c, k3d \
+) \
+{ \
+    { ___, ___, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d }, \
+    { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d }, \
+    { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d }, \
+    { ___, ___, k32, k33, k34, k35, k36, k37, ___, k39, k3a, k3b, k3c, k3d } \
+}
+
+#define LAYOUT_euiso_ortho( \
+    k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, \
+    k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, \
+    k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \
+    k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d  \
+) \
+{ \
+    { ___, ___, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d }, \
+    { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d }, \
+    { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d }, \
+    { ___, ___, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d } \
+}
+
+#define LAYOUT_euiso_bigspace( \
+    k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, \
+    k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, \
+    k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \
+    k32, k33,                    k37,                 k3c, k3d \
+) \
+{ \
+    { ___, ___, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d }, \
+    { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d }, \
+    { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d }, \
+    { ___, ___, k32, k33, ___, ___, ___, k37, ___, ___, ___, ___, k3c, k3d } \
+}
diff --git a/keyboards/eu_isolation/info.json b/keyboards/eu_isolation/info.json
new file mode 100644
index 0000000000..03de853c42
--- /dev/null
+++ b/keyboards/eu_isolation/info.json
@@ -0,0 +1,169 @@
+{
+    "keyboard_name": "EUISOlation",
+    "url": "",
+    "maintainer": "qmk",
+    "layouts": {
+        "LAYOUT_euiso_ortho": {
+            "layout": [
+                {"x":2, "y":0},
+                {"x":3, "y":0},
+                {"x":4, "y":0},
+                {"x":5, "y":0},
+                {"x":6, "y":0},
+                {"x":7, "y":0},
+                {"x":8, "y":0},
+                {"x":9, "y":0},
+                {"x":10, "y":0},
+                {"x":11, "y":0},
+                {"x":12, "y":0},
+                {"x":13, "y":0},
+                {"x":2, "y":1},
+                {"x":3, "y":1},
+                {"x":4, "y":1},
+                {"x":5, "y":1},
+                {"x":6, "y":1},
+                {"x":7, "y":1},
+                {"x":8, "y":1},
+                {"x":9, "y":1},
+                {"x":10, "y":1},
+                {"x":11, "y":1},
+                {"x":12, "y":1},
+                {"x":13, "y":1},
+                {"x":0, "y":1},
+                {"x":1, "y":1},
+                {"x":2, "y":2},
+                {"x":3, "y":2},
+                {"x":4, "y":2},
+                {"x":5, "y":2},
+                {"x":6, "y":2},
+                {"x":7, "y":2},
+                {"x":8, "y":2},
+                {"x":9, "y":2},
+                {"x":10, "y":2},
+                {"x":11, "y":2},
+                {"x":12, "y":2},
+                {"x":13, "y":2},
+                {"x":0, "y":2},
+                {"x":1, "y":2},
+                {"x":2, "y":3},
+                {"x":3, "y":3},
+                {"x":4, "y":3},
+                {"x":5, "y":3},
+                {"x":6, "y":3},
+                {"x":7, "y":3},
+                {"x":8, "y":3},
+                {"x":9, "y":3},
+                {"x":10, "y":3},
+                {"x":11, "y":3},
+                {"x":12, "y":3},
+                {"x":13, "y":3}
+            ]
+        },
+
+        "LAYOUT_euiso_mit": {
+            "layout": [
+                {"x":2, "y":0},
+                {"x":3, "y":0},
+                {"x":4, "y":0},
+                {"x":5, "y":0},
+                {"x":6, "y":0},
+                {"x":7, "y":0},
+                {"x":8, "y":0},
+                {"x":9, "y":0},
+                {"x":10, "y":0},
+                {"x":11, "y":0},
+                {"x":12, "y":0},
+                {"x":13, "y":0},
+                {"x":2, "y":1},
+                {"x":3, "y":1},
+                {"x":4, "y":1},
+                {"x":5, "y":1},
+                {"x":6, "y":1},
+                {"x":7, "y":1},
+                {"x":8, "y":1},
+                {"x":9, "y":1},
+                {"x":10, "y":1},
+                {"x":11, "y":1},
+                {"x":12, "y":1},
+                {"x":13, "y":1},
+                {"x":0, "y":1},
+                {"x":1, "y":1},
+                {"x":2, "y":2},
+                {"x":3, "y":2},
+                {"x":4, "y":2},
+                {"x":5, "y":2},
+                {"x":6, "y":2},
+                {"x":7, "y":2},
+                {"x":8, "y":2},
+                {"x":9, "y":2},
+                {"x":10, "y":2},
+                {"x":11, "y":2},
+                {"x":12, "y":2},
+                {"x":13, "y":2},
+                {"x":0, "y":2},
+                {"x":1, "y":2},
+                {"x":2, "y":3},
+                {"x":3, "y":3},
+                {"x":4, "y":3},
+                {"x":5, "y":3},
+                {"x":6, "y":3},
+                {"x":7, "y":3, "w":2},
+                {"x":9, "y":3},
+                {"x":10, "y":3},
+                {"x":11, "y":3},
+                {"x":12, "y":3},
+                {"x":13, "y":3}
+            ]
+        },
+
+        "LAYOUT_euiso_bigspace": {
+            "layout": [
+                {"x":2, "y":0},
+                {"x":3, "y":0},
+                {"x":4, "y":0},
+                {"x":5, "y":0},
+                {"x":6, "y":0},
+                {"x":7, "y":0},
+                {"x":8, "y":0},
+                {"x":9, "y":0},
+                {"x":10, "y":0},
+                {"x":11, "y":0},
+                {"x":12, "y":0},
+                {"x":13, "y":0},
+                {"x":2, "y":1},
+                {"x":3, "y":1},
+                {"x":4, "y":1},
+                {"x":5, "y":1},
+                {"x":6, "y":1},
+                {"x":7, "y":1},
+                {"x":8, "y":1},
+                {"x":9, "y":1},
+                {"x":10, "y":1},
+                {"x":11, "y":1},
+                {"x":12, "y":1},
+                {"x":13, "y":1},
+                {"x":0, "y":1},
+                {"x":1, "y":1},
+                {"x":2, "y":2},
+                {"x":3, "y":2},
+                {"x":4, "y":2},
+                {"x":5, "y":2},
+                {"x":6, "y":2},
+                {"x":7, "y":2},
+                {"x":8, "y":2},
+                {"x":9, "y":2},
+                {"x":10, "y":2},
+                {"x":11, "y":2},
+                {"x":12, "y":2},
+                {"x":13, "y":2},
+                {"x":0, "y":2},
+                {"x":1, "y":2},
+                {"x":2, "y":3, "w":1.25},
+                {"x":3.25, "y":3, "w":1.25},
+                {"x":4.5, "y":3, "w":7},
+                {"x":11.5, "y":3, "w":1.25},
+                {"x":12.75, "y":3, "w":1.25}
+            ]
+        }
+    }
+}
diff --git a/keyboards/eu_isolation/keymaps/bigspace/config.h b/keyboards/eu_isolation/keymaps/bigspace/config.h
new file mode 100644
index 0000000000..96783a4c87
--- /dev/null
+++ b/keyboards/eu_isolation/keymaps/bigspace/config.h
@@ -0,0 +1,19 @@
+/* Copyright 2020 Austin "TuckTuckFloof" Ashmore
+* 
+* 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/>. 
+*/ 
+
+#pragma once
+
+#define COMBO_COUNT 5
+#define COMBO_TERM 175
diff --git a/keyboards/eu_isolation/keymaps/bigspace/keymap.c b/keyboards/eu_isolation/keymaps/bigspace/keymap.c
new file mode 100644
index 0000000000..8970e217fb
--- /dev/null
+++ b/keyboards/eu_isolation/keymaps/bigspace/keymap.c
@@ -0,0 +1,60 @@
+/* Copyright 2020 Austin "TuckTuckFloof" Ashmore
+* 
+* 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/>. 
+*/
+
+#include QMK_KEYBOARD_H
+
+enum layers {
+    _BASE,
+    _FN1,
+    _FN2
+};
+
+// I put these combos in because they're easy to impliment and it gives you an idea of what you need to do
+// Go nuts, have fun! It's why I build the board :)
+enum WOMBO_COMBOS {
+    VOLUME_UP = 0,
+    VOLUME_DOWN
+};
+
+const uint16_t PROGMEM VOLUME_UP_COMBO[] = { KC_F1, KC_F2, COMBO_END };
+const uint16_t PROGMEM VOLUME_DN_COMBO[] = { KC_F3, KC_F4, COMBO_END };
+
+combo_t key_combos[COMBO_COUNT] = {
+    [VOLUME_UP] = COMBO(VOLUME_UP_COMBO, KC_VOLU),
+    [VOLUME_DOWN] = COMBO(VOLUME_DN_COMBO, KC_VOLD)
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+    [_BASE] = LAYOUT_euiso_bigspace(
+                        KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,  KC_T,   KC_Y,   KC_U,  KC_I,    KC_O,    KC_P,    KC_BSPC,
+        KC_F1,  KC_F2,  KC_LCTL, KC_A,    KC_S,    KC_D,    KC_F,  KC_G,   KC_H,   KC_J,  KC_K,    KC_L,    KC_SCLN, KC_QUOT,
+        KC_F3,  KC_F4,  KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,  KC_B,   KC_N,   KC_M,  KC_COMM, KC_DOT,  KC_SLSH, KC_ENT,
+                        KC_LGUI, KC_LALT,                          KC_SPC,                                 MO(_FN2), MO(_FN1)
+    ),
+
+    [_FN1] = LAYOUT_euiso_bigspace(
+                          KC_TILD, KC_EXLM,   KC_AT, KC_HASH, KC_DLR,  KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN,   KC_DEL,
+        _______, _______, KC_ESC , KC_PIPE, KC_DQUO, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, _______, _______, _______, _______,  _______,
+        _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU,  _______,
+                          _______, _______,                         _______,                                        KC_VOLD,  KC_MNXT
+    ),
+
+    [_FN2] = LAYOUT_euiso_bigspace(
+                          KC_GRV ,    KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,   KC_DEL,
+        _______, _______, KC_ESC , KC_BSLS, KC_QUOT, KC_MINS,  KC_EQL, KC_LBRC, KC_RBRC,    KC_4,    KC_5,    KC_6, _______,  _______,
+        _______, _______, _______, _______, _______, _______, _______, _______, _______,    KC_1,    KC_2,    KC_3, KC_VOLU,  _______,
+                          _______, _______,                         _______,                                        KC_VOLD,  KC_MNXT
+    )
+};
diff --git a/keyboards/eu_isolation/keymaps/bigspace/readme.md b/keyboards/eu_isolation/keymaps/bigspace/readme.md
new file mode 100644
index 0000000000..48b22cbd09
--- /dev/null
+++ b/keyboards/eu_isolation/keymaps/bigspace/readme.md
@@ -0,0 +1,4 @@
+# Default layout for B I G S P A C E
+
+Default keymap for the 7u layout
+A L L H A I L B I G S P A C E
diff --git a/keyboards/eu_isolation/keymaps/bigspace/rules.mk b/keyboards/eu_isolation/keymaps/bigspace/rules.mk
new file mode 100644
index 0000000000..ab1e438182
--- /dev/null
+++ b/keyboards/eu_isolation/keymaps/bigspace/rules.mk
@@ -0,0 +1 @@
+COMBO_ENABLE = yes
diff --git a/keyboards/eu_isolation/keymaps/default/config.h b/keyboards/eu_isolation/keymaps/default/config.h
new file mode 100644
index 0000000000..cb82301892
--- /dev/null
+++ b/keyboards/eu_isolation/keymaps/default/config.h
@@ -0,0 +1,19 @@
+/* Copyright 2020 Austin "TuckTuckFloof" Ashmore
+*
+* 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/>. 
+*/
+
+#pragma once
+
+#define COMBO_COUNT 5
+#define COMBO_TERM 175
diff --git a/keyboards/eu_isolation/keymaps/default/keymap.c b/keyboards/eu_isolation/keymaps/default/keymap.c
new file mode 100644
index 0000000000..fc433815ff
--- /dev/null
+++ b/keyboards/eu_isolation/keymaps/default/keymap.c
@@ -0,0 +1,60 @@
+/* Copyright 2020 Austin "TuckTuckFloof" Ashmore
+*
+* 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/>. 
+*/
+
+#include QMK_KEYBOARD_H
+
+enum layers {
+	_BASE,
+	_FN1,
+	_FN2
+};
+
+// I put these combos in because they're easy to impliment and it gives you an idea of what you need to do
+// Go nuts, have fun! It's why I build the board :)
+enum WOMBO_COMBOS {
+    VOLUME_UP = 0,
+    VOLUME_DOWN
+};
+
+const uint16_t PROGMEM VOLUME_UP_COMBO[] = { KC_F1, KC_F2, COMBO_END };
+const uint16_t PROGMEM VOLUME_DN_COMBO[] = { KC_F3, KC_F4, COMBO_END };
+
+combo_t key_combos[COMBO_COUNT] = {
+    [VOLUME_UP] = COMBO(VOLUME_UP_COMBO, KC_VOLU),
+    [VOLUME_DOWN] = COMBO(VOLUME_DN_COMBO, KC_VOLD)
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+    [_BASE] = LAYOUT_euiso_ortho(
+                        KC_TAB,    KC_Q,    KC_W,    KC_E,    KC_R,   KC_T,   KC_Y,    KC_U,     KC_I,    KC_O,      KC_P, KC_BSPC,
+        KC_F1,  KC_F2,  KC_LCTL,    KC_A,    KC_S,    KC_D,    KC_F,   KC_G,   KC_H,    KC_J,     KC_K,    KC_L,   KC_SCLN, KC_QUOT,
+        KC_F3,  KC_F4,  KC_LSFT,    KC_Z,    KC_X,    KC_C,    KC_V,   KC_B,   KC_N,    KC_M,  KC_COMM,  KC_DOT,   KC_SLSH, KC_ENT,
+                        KC_CAPS, KC_LCTL, KC_LGUI, KC_LALT,MO(_FN1), KC_SPC, KC_SPC,MO(_FN2),  KC_LEFT, KC_DOWN,     KC_UP, KC_RGHT
+    ),
+
+    [_FN1] = LAYOUT_euiso_ortho(
+                          KC_TILD, KC_EXLM,   KC_AT, KC_HASH, KC_DLR,  KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN,   KC_DEL,
+        _______, _______, KC_ESC , KC_PIPE, KC_DQUO, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, _______, _______, _______, _______,  _______,
+        _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU,  _______,
+                          _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD,  KC_MNXT
+    ),
+
+    [_FN2] = LAYOUT_euiso_ortho(
+                          KC_GRV ,    KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,   KC_DEL,
+        _______, _______, KC_ESC , KC_BSLS, KC_QUOT, KC_MINS,  KC_EQL, KC_LBRC, KC_RBRC,    KC_4,    KC_5,    KC_6, _______,  _______,
+        _______, _______, _______, _______, _______, _______, _______, _______, _______,    KC_1,    KC_2,    KC_3, KC_VOLU,  _______,
+                          _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD,  KC_MNXT
+    )
+};
diff --git a/keyboards/eu_isolation/keymaps/default/readme.md b/keyboards/eu_isolation/keymaps/default/readme.md
new file mode 100644
index 0000000000..b1f90f9ef4
--- /dev/null
+++ b/keyboards/eu_isolation/keymaps/default/readme.md
@@ -0,0 +1,9 @@
+# Default layout for EU ISOlation
+
+Fairly standard layout using all 1U keycaps for the body and of course 4 ISO
+enter keys to keep things interesting.
+
+* The 4 ISO enters are mapped to F1-F4 by default
+* The ISO enters have a combo, holding the top to is volume up, the bottom two
+ is volume down
+* Play with the combos and ISO Enters and see what you can do!
diff --git a/keyboards/eu_isolation/keymaps/default/rules.mk b/keyboards/eu_isolation/keymaps/default/rules.mk
new file mode 100644
index 0000000000..ab1e438182
--- /dev/null
+++ b/keyboards/eu_isolation/keymaps/default/rules.mk
@@ -0,0 +1 @@
+COMBO_ENABLE = yes
diff --git a/keyboards/eu_isolation/keymaps/mit/config.h b/keyboards/eu_isolation/keymaps/mit/config.h
new file mode 100644
index 0000000000..cb82301892
--- /dev/null
+++ b/keyboards/eu_isolation/keymaps/mit/config.h
@@ -0,0 +1,19 @@
+/* Copyright 2020 Austin "TuckTuckFloof" Ashmore
+*
+* 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/>. 
+*/
+
+#pragma once
+
+#define COMBO_COUNT 5
+#define COMBO_TERM 175
diff --git a/keyboards/eu_isolation/keymaps/mit/keymap.c b/keyboards/eu_isolation/keymaps/mit/keymap.c
new file mode 100644
index 0000000000..208e61b3e1
--- /dev/null
+++ b/keyboards/eu_isolation/keymaps/mit/keymap.c
@@ -0,0 +1,60 @@
+/* Copyright 2020 Austin "TuckTuckFloof" Ashmore
+*
+* 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/>. 
+*/
+
+#include QMK_KEYBOARD_H
+
+enum layers {
+	_BASE,
+	_FN1,
+	_FN2
+};
+
+// I put these combos in because they're easy to impliment and it gives you an idea of what you need to do
+// Go nuts, have fun! It's why I build the board :)
+enum WOMBO_COMBOS {
+    VOLUME_UP = 0,
+    VOLUME_DOWN
+};
+
+const uint16_t PROGMEM VOLUME_UP_COMBO[] = { KC_F1, KC_F2, COMBO_END };
+const uint16_t PROGMEM VOLUME_DN_COMBO[] = { KC_F3, KC_F4, COMBO_END };
+
+combo_t key_combos[COMBO_COUNT] = {
+    [VOLUME_UP] = COMBO(VOLUME_UP_COMBO, KC_VOLU),
+    [VOLUME_DOWN] = COMBO(VOLUME_DN_COMBO, KC_VOLD)
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+    [_BASE] = LAYOUT_euiso_mit(
+                        KC_TAB,          KC_Q,    KC_W,    KC_E,    KC_R,     KC_T,   KC_Y,    KC_U,      KC_I,    KC_O,    KC_P,    KC_BSPC,
+        KC_F1,  KC_F2,  LT(2,KC_ESC),    KC_A,    KC_S,    KC_D,    KC_F,     KC_G,   KC_H,    KC_J,      KC_K,    KC_L,    KC_SCLN, KC_ENT,
+        KC_F3,  KC_F4,  KC_LSFT,         KC_Z,    KC_X,    KC_C,    KC_V,     KC_B,   KC_N,    KC_M,      KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT,
+                        KC_LCTL,         KC_DEL,  KC_LALT, KC_LGUI, MO(_FN1),     KC_SPC,      MO(_FN1),  KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT
+    ),
+
+    [_FN1] = LAYOUT_euiso_mit(
+                          KC_UNDS, KC_HASH, KC_EXLM, KC_TILD, KC_LPRN, KC_RPRN, KC_DQUO, KC_7,    KC_8,    KC_9,    KC_0,     KC_EQL,
+        KC_TRNS, KC_TRNS, KC_MINS, KC_AT,   KC_AMPR, KC_PIPE, KC_LCBR, KC_RCBR, KC_QUOT, KC_4,    KC_5,    KC_6,    KC_PLUS,  KC_MINS,
+        KC_TRNS, KC_TRNS, KC_BSLS, KC_CIRC, KC_DLR,  KC_PERC, KC_LBRC, KC_RBRC, KC_GRV,  KC_1,    KC_2,    KC_3,    KC_ASTR,  KC_SLSH,
+                          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,      KC_TRNS,     KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,  KC_TRNS
+    ),
+
+    [_FN2] = LAYOUT_euiso_mit(
+                          KC_F1,   KC_F2,   KC_F3,   KC_F4, _______, _______, _______, _______, _______, _______, _______, _______,
+        KC_TRNS, KC_TRNS, KC_F5,   KC_F6,   KC_F7,   KC_F8, _______, _______, KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT, _______, _______,
+        KC_TRNS, KC_TRNS, KC_F9,   KC_F10,  KC_F11,  KC_F12, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END,  _______, _______,
+                          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,     KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+    )
+};
diff --git a/keyboards/eu_isolation/keymaps/mit/readme.md b/keyboards/eu_isolation/keymaps/mit/readme.md
new file mode 100644
index 0000000000..81ad5f4a21
--- /dev/null
+++ b/keyboards/eu_isolation/keymaps/mit/readme.md
@@ -0,0 +1,3 @@
+# Default layout for MIT
+
+2u ortho space, fairly standard
diff --git a/keyboards/eu_isolation/keymaps/mit/rules.mk b/keyboards/eu_isolation/keymaps/mit/rules.mk
new file mode 100644
index 0000000000..ab1e438182
--- /dev/null
+++ b/keyboards/eu_isolation/keymaps/mit/rules.mk
@@ -0,0 +1 @@
+COMBO_ENABLE = yes
diff --git a/keyboards/eu_isolation/readme.md b/keyboards/eu_isolation/readme.md
new file mode 100644
index 0000000000..711981ff02
--- /dev/null
+++ b/keyboards/eu_isolation/readme.md
@@ -0,0 +1,31 @@
+# EU ISOlation
+
+![euisolation](https://i.imgur.com/5LGsiJZh.jpg)
+
+EU ISOlation is an ortholinear 40% keyboard designed to use up your spare iso
+enters from you collection of keyboard kits.
+
+* Keyboard Maintainer: Originally by [TuckTuckFloof](https://github.com/TuckTuckFloof)
+ cleaned up and merged to QMK by [aadriance](https://github.com/aadriance)
+* Hardware Supported: EU ISOlation
+* Hardware Availability: Originally a [P3DStore](https://p3dstore.com/) group buy. 
+ Open source pcb info available on [TuckTuckFloofs github](https://github.com/TuckTuckFloof/EUISO-pcb)
+
+## Bootloader
+
+Enter the bootloader in 3 ways:
+
+* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
+* **Keycode in layout**: Press the key mapped to `RESET` if it is available
+
+## Information
+
+Make example for this keyboard (after setting up your build environment):
+
+    make eu_isolation:default
+
+Flashing example for this keyboard:
+
+    make eu_isolation:default:flash
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/eu_isolation/rules.mk b/keyboards/eu_isolation/rules.mk
new file mode 100644
index 0000000000..12500f49f4
--- /dev/null
+++ b/keyboards/eu_isolation/rules.mk
@@ -0,0 +1,18 @@
+# MCU name
+MCU = atmega32u4
+
+# Bootloader selection
+BOOTLOADER = atmel-dfu
+
+# Build Options
+#   change yes to no to disable
+#
+BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
+MOUSEKEY_ENABLE = yes       # Mouse keys
+EXTRAKEY_ENABLE = yes       # Audio control and System control
+CONSOLE_ENABLE = yes        # Console for debug
+COMMAND_ENABLE = no         # Commands for debug and configuration
+NKRO_ENABLE = yes           # Enable N-Key Rollover
+BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
+RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
+AUDIO_ENABLE = no           # Audio output