From 8f02375cc6ddfbbc6be384a9d5b1a9c91517099e Mon Sep 17 00:00:00 2001
From: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
Date: Fri, 14 Dec 2018 11:37:26 -0800
Subject: [PATCH] Keyboard: B.mini EX refactor and Configurator support (#4647)

* B.mini EX: refactor

- add LAYOUT_ansi and LAYOUT_iso macros
- add ansi and iso keymaps with readme files

* B.mini EX: Configurator support
---
 keyboards/bminiex/bminiex.h              |  36 +++
 keyboards/bminiex/info.json              | 340 +++++++++++++++++++++++
 keyboards/bminiex/keymaps/ansi/keymap.c  |  29 ++
 keyboards/bminiex/keymaps/ansi/readme.md |  17 ++
 keyboards/bminiex/keymaps/iso/keymap.c   |  29 ++
 keyboards/bminiex/keymaps/iso/readme.md  |  17 ++
 6 files changed, 468 insertions(+)
 create mode 100644 keyboards/bminiex/info.json
 create mode 100644 keyboards/bminiex/keymaps/ansi/keymap.c
 create mode 100644 keyboards/bminiex/keymaps/ansi/readme.md
 create mode 100644 keyboards/bminiex/keymaps/iso/keymap.c
 create mode 100644 keyboards/bminiex/keymaps/iso/readme.md

diff --git a/keyboards/bminiex/bminiex.h b/keyboards/bminiex/bminiex.h
index a58ce6892..8d897f639 100644
--- a/keyboards/bminiex/bminiex.h
+++ b/keyboards/bminiex/bminiex.h
@@ -37,6 +37,42 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
   { K07, K17,   K27, K37,   K47,   K57,   K67,   K77,   KC_NO, KC_NO, KA7,   KB7, KC7,   KD7,   KE7   } \
 }
 
+#define LAYOUT_ansi( \
+  K05, K25, K35, K45, K55, K06, KA6, KA7, K07, KB5, KC5, KD5, KE5, KD1, KE1, KE2, K65, K75, K85, K95, \
+  K04, K14, K24, K34, K44, K54, K16, KB6, KB7, K17, KA4, KB4, KC4, KE4,      KD0, K64, K74, K84, K94, \
+  K03, K13, K23, K33, K43, K53, K26, KC6, KC7, K27, KA3, KB3, KC3, KD3,      K67, K63, K73, K83,      \
+  K02, K12, K22, K32, K42, K52, K36, KD6, KD7, K37, KA2, KB2,      KD2,      KE0, K62, K72, K82, K92, \
+  K01,      K11, K21, K31, K41, K51, K46, KE6, KE7, K47, KA1, KB1,      K86, K77, K61, K71, K81,      \
+  K00, K10, K20,           K56,                     K57, KB0, KC0, K66, K76, K96, K60,      K80, K90  \
+){ \
+  { K00, K10,   K20, KC_NO, KC_NO, KC_NO, K60,   KC_NO, K80,   K90,   KC_NO, KB0, KC0,   KD0,   KE0   }, \
+  { K01, K11,   K21, K31,   K41,   K51,   K61,   K71,   K81,   KC_NO, KA1,   KB1, KC_NO, KD1,   KE1   }, \
+  { K02, K12,   K22, K32,   K42,   K52,   K62,   K72,   K82,   K92,   KA2,   KB2, KC_NO, KD2,   KE2   }, \
+  { K03, K13,   K23, K33,   K43,   K53,   K63,   K73,   K83,   KC_NO, KA3,   KB3, KC3,   KD3,   KC_NO }, \
+  { K04, K14,   K24, K34,   K44,   K54,   K64,   K74,   K84,   K94,   KA4,   KB4, KC4,   KC_NO, KE4   }, \
+  { K05, KC_NO, K25, K35,   K45,   K55,   K65,   K75,   K85,   K95,   KC_NO, KB5, KC5,   KD5,   KE5   }, \
+  { K06, K16,   K26, K36,   K46,   K56,   K66,   K76,   K86,   K96,   KA6,   KB6, KC6,   KD6,   KE6   }, \
+  { K07, K17,   K27, K37,   K47,   K57,   K67,   K77,   KC_NO, KC_NO, KA7,   KB7, KC7,   KD7,   KE7   } \
+}
+
+#define LAYOUT_iso( \
+  K05, K25, K35, K45, K55, K06, KA6, KA7, K07, KB5, KC5, KD5, KE5, KD1, KE1, KE2, K65, K75, K85, K95, \
+  K04, K14, K24, K34, K44, K54, K16, KB6, KB7, K17, KA4, KB4, KC4, KE4,      KD0, K64, K74, K84, K94, \
+  K03, K13, K23, K33, K43, K53, K26, KC6, KC7, K27, KA3, KB3, KC3,           K67, K63, K73, K83,      \
+  K02, K12, K22, K32, K42, K52, K36, KD6, KD7, K37, KA2, KB2, KC2, KD2,      KE0, K62, K72, K82, K92, \
+  K01, K30, K11, K21, K31, K41, K51, K46, KE6, KE7, K47, KA1, KB1,      K86, K77, K61, K71, K81,      \
+  K00, K10, K20,           K56,                     K57, KB0, KC0, K66, K76, K96, K60,      K80, K90  \
+){ \
+  { K00, K10,   K20, K30,   KC_NO, KC_NO, K60,   KC_NO, K80,   K90,   KC_NO, KB0, KC0,   KD0,   KE0   }, \
+  { K01, K11,   K21, K31,   K41,   K51,   K61,   K71,   K81,   KC_NO, KA1,   KB1, KC_NO, KD1,   KE1   }, \
+  { K02, K12,   K22, K32,   K42,   K52,   K62,   K72,   K82,   K92,   KA2,   KB2, KC2,   KD2,   KE2   }, \
+  { K03, K13,   K23, K33,   K43,   K53,   K63,   K73,   K83,   KC_NO, KA3,   KB3, KC3,   KC_NO, KC_NO }, \
+  { K04, K14,   K24, K34,   K44,   K54,   K64,   K74,   K84,   K94,   KA4,   KB4, KC4,   KC_NO, KE4   }, \
+  { K05, KC_NO, K25, K35,   K45,   K55,   K65,   K75,   K85,   K95,   KC_NO, KB5, KC5,   KD5,   KE5   }, \
+  { K06, K16,   K26, K36,   K46,   K56,   K66,   K76,   K86,   K96,   KA6,   KB6, KC6,   KD6,   KE6   }, \
+  { K07, K17,   K27, K37,   K47,   K57,   K67,   K77,   KC_NO, KC_NO, KA7,   KB7, KC7,   KD7,   KE7   } \
+}
+
 #define LAYOUT_kc( \
   K05, K25, K35, K45, K55, K06, KA6, KA7, K07, KB5, KC5, KD5, KE5, KD1, KE1, KE2, K65, K75, K85, K95, \
   K04, K14, K24, K34, K44, K54, K16, KB6, KB7, K17, KA4, KB4, KC4, KE4,      KD0, K64, K74, K84, K94, \
diff --git a/keyboards/bminiex/info.json b/keyboards/bminiex/info.json
new file mode 100644
index 000000000..8e38fbfb9
--- /dev/null
+++ b/keyboards/bminiex/info.json
@@ -0,0 +1,340 @@
+{
+  "keyboard_name": "winkeyless.kr B.mini EX",
+  "keyboard_folder": "bminiex",
+  "url": "https://winkeyless.kr/product/b-mini-ex-x2-pcb/",
+  "maintainer": "qmk",
+  "width": 20.25,
+  "height": 6.25,
+  "layouts": {
+    "LAYOUT": {
+      "layout": [
+        {"label":"ESC", "x":0, "y":0},
+        {"label":"F1", "x":1, "y":0},
+        {"label":"F2", "x":2, "y":0},
+        {"label":"F3", "x":3, "y":0},
+        {"label":"F4", "x":4, "y":0},
+        {"label":"F5", "x":5, "y":0},
+        {"label":"F6", "x":6, "y":0},
+        {"label":"F7", "x":7, "y":0},
+        {"label":"F8", "x":8, "y":0},
+        {"label":"F9", "x":9, "y":0},
+        {"label":"F10", "x":10, "y":0},
+        {"label":"F11", "x":11, "y":0},
+        {"label":"F12", "x":12, "y":0},
+        {"label":"PSCR", "x":13, "y":0},
+        {"label":"HOME", "x":14, "y":0},
+        {"label":"END", "x":15, "y":0},
+        {"label":"NO", "x":16.25, "y":0},
+        {"label":"NO", "x":17.25, "y":0},
+        {"label":"NO", "x":18.25, "y":0},
+        {"label":"NO", "x":19.25, "y":0},
+        {"label":"GRV", "x":0, "y":1.25},
+        {"label":"1", "x":1, "y":1.25},
+        {"label":"2", "x":2, "y":1.25},
+        {"label":"3", "x":3, "y":1.25},
+        {"label":"4", "x":4, "y":1.25},
+        {"label":"5", "x":5, "y":1.25},
+        {"label":"6", "x":6, "y":1.25},
+        {"label":"7", "x":7, "y":1.25},
+        {"label":"8", "x":8, "y":1.25},
+        {"label":"9", "x":9, "y":1.25},
+        {"label":"0", "x":10, "y":1.25},
+        {"label":"MINS", "x":11, "y":1.25},
+        {"label":"EQL", "x":12, "y":1.25},
+        {"label":"BSPC", "x":13, "y":1.25, "w":2},
+        {"label":"DEL", "x":15, "y":1.25},
+        {"label":"NLCK", "x":16.25, "y":1.25},
+        {"label":"PSLS", "x":17.25, "y":1.25},
+        {"label":"PAST", "x":18.25, "y":1.25},
+        {"label":"PMNS", "x":19.25, "y":1.25},
+        {"label":"TAB", "x":0, "y":2.25, "w":1.5},
+        {"label":"Q", "x":1.5, "y":2.25},
+        {"label":"W", "x":2.5, "y":2.25},
+        {"label":"E", "x":3.5, "y":2.25},
+        {"label":"R", "x":4.5, "y":2.25},
+        {"label":"T", "x":5.5, "y":2.25},
+        {"label":"Y", "x":6.5, "y":2.25},
+        {"label":"U", "x":7.5, "y":2.25},
+        {"label":"I", "x":8.5, "y":2.25},
+        {"label":"O", "x":9.5, "y":2.25},
+        {"label":"P", "x":10.5, "y":2.25},
+        {"label":"LBRC", "x":11.5, "y":2.25},
+        {"label":"RBRC", "x":12.5, "y":2.25},
+        {"label":"NO", "x":13.5, "y":2.25, "w":1.5},
+        {"label":"INS", "x":15, "y":2.25},
+        {"label":"P7", "x":16.25, "y":2.25},
+        {"label":"P8", "x":17.25, "y":2.25},
+        {"label":"P9", "x":18.25, "y":2.25},
+        {"label":"CAPS", "x":0, "y":3.25, "w":1.75},
+        {"label":"A", "x":1.75, "y":3.25},
+        {"label":"S", "x":2.75, "y":3.25},
+        {"label":"D", "x":3.75, "y":3.25},
+        {"label":"F", "x":4.75, "y":3.25},
+        {"label":"G", "x":5.75, "y":3.25},
+        {"label":"H", "x":6.75, "y":3.25},
+        {"label":"J", "x":7.75, "y":3.25},
+        {"label":"K", "x":8.75, "y":3.25},
+        {"label":"L", "x":9.75, "y":3.25},
+        {"label":"SCLN", "x":10.75, "y":3.25},
+        {"label":"QUOT", "x":11.75, "y":3.25},
+        {"label":"NUHS", "x":12.75, "y":3.25},
+        {"label":"ENT", "x":13.75, "y":3.25, "w":1.25},
+        {"label":"PGUP", "x":15, "y":3.25},
+        {"label":"P4", "x":16.25, "y":3.25},
+        {"label":"P5", "x":17.25, "y":3.25},
+        {"label":"P6", "x":18.25, "y":3.25},
+        {"label":"PPLS", "x":19.25, "y":2.25, "h":2},
+        {"label":"LSFT", "x":0, "y":4.25, "w":1.25},
+        {"label":"NUBS", "x":1.25, "y":4.25},
+        {"label":"Z", "x":2.25, "y":4.25},
+        {"label":"X", "x":3.25, "y":4.25},
+        {"label":"C", "x":4.25, "y":4.25},
+        {"label":"V", "x":5.25, "y":4.25},
+        {"label":"B", "x":6.25, "y":4.25},
+        {"label":"N", "x":7.25, "y":4.25},
+        {"label":"M", "x":8.25, "y":4.25},
+        {"label":"COMM", "x":9.25, "y":4.25},
+        {"label":"DOT", "x":10.25, "y":4.25},
+        {"label":"SLSH", "x":11.25, "y":4.25},
+        {"label":"RSFT", "x":12.25, "y":4.25, "w":1.75},
+        {"label":"UP", "x":14, "y":4.25},
+        {"label":"PGDN", "x":15, "y":4.25},
+        {"label":"P1", "x":16.25, "y":4.25},
+        {"label":"P2", "x":17.25, "y":4.25},
+        {"label":"P3", "x":18.25, "y":4.25},
+        {"label":"LCTL", "x":0, "y":5.25, "w":1.25},
+        {"label":"LGUI", "x":1.25, "y":5.25, "w":1.25},
+        {"label":"LALT", "x":2.5, "y":5.25, "w":1.25},
+        {"label":"SPC", "x":3.75, "y":5.25, "w":6.25},
+        {"label":"RALT", "x":10, "y":5.25},
+        {"label":"APP", "x":11, "y":5.25},
+        {"label":"RCTL", "x":12, "y":5.25},
+        {"label":"LEFT", "x":13, "y":5.25},
+        {"label":"DOWN", "x":14, "y":5.25},
+        {"label":"RGHT", "x":15, "y":5.25},
+        {"label":"P0", "x":16.25, "y":5.25, "w":2},
+        {"label":"PDOT", "x":18.25, "y":5.25},
+        {"label":"PENT", "x":19.25, "y":4.25, "h":2}
+      ]
+    },
+    "LAYOUT_ansi": {
+      "layout": [
+        {"label":"ESC", "x":0, "y":0},
+        {"label":"F1", "x":1, "y":0},
+        {"label":"F2", "x":2, "y":0},
+        {"label":"F3", "x":3, "y":0},
+        {"label":"F4", "x":4, "y":0},
+        {"label":"F5", "x":5, "y":0},
+        {"label":"F6", "x":6, "y":0},
+        {"label":"F7", "x":7, "y":0},
+        {"label":"F8", "x":8, "y":0},
+        {"label":"F9", "x":9, "y":0},
+        {"label":"F10", "x":10, "y":0},
+        {"label":"F11", "x":11, "y":0},
+        {"label":"F12", "x":12, "y":0},
+        {"label":"PSCR", "x":13, "y":0},
+        {"label":"HOME", "x":14, "y":0},
+        {"label":"END", "x":15, "y":0},
+        {"label":"NO", "x":16.25, "y":0},
+        {"label":"NO", "x":17.25, "y":0},
+        {"label":"NO", "x":18.25, "y":0},
+        {"label":"NO", "x":19.25, "y":0},
+        {"label":"GRV", "x":0, "y":1.25},
+        {"label":"1", "x":1, "y":1.25},
+        {"label":"2", "x":2, "y":1.25},
+        {"label":"3", "x":3, "y":1.25},
+        {"label":"4", "x":4, "y":1.25},
+        {"label":"5", "x":5, "y":1.25},
+        {"label":"6", "x":6, "y":1.25},
+        {"label":"7", "x":7, "y":1.25},
+        {"label":"8", "x":8, "y":1.25},
+        {"label":"9", "x":9, "y":1.25},
+        {"label":"0", "x":10, "y":1.25},
+        {"label":"MINS", "x":11, "y":1.25},
+        {"label":"EQL", "x":12, "y":1.25},
+        {"label":"BSPC", "x":13, "y":1.25, "w":2},
+        {"label":"DEL", "x":15, "y":1.25},
+        {"label":"NLCK", "x":16.25, "y":1.25},
+        {"label":"PSLS", "x":17.25, "y":1.25},
+        {"label":"PAST", "x":18.25, "y":1.25},
+        {"label":"PMNS", "x":19.25, "y":1.25},
+        {"label":"TAB", "x":0, "y":2.25, "w":1.5},
+        {"label":"Q", "x":1.5, "y":2.25},
+        {"label":"W", "x":2.5, "y":2.25},
+        {"label":"E", "x":3.5, "y":2.25},
+        {"label":"R", "x":4.5, "y":2.25},
+        {"label":"T", "x":5.5, "y":2.25},
+        {"label":"Y", "x":6.5, "y":2.25},
+        {"label":"U", "x":7.5, "y":2.25},
+        {"label":"I", "x":8.5, "y":2.25},
+        {"label":"O", "x":9.5, "y":2.25},
+        {"label":"P", "x":10.5, "y":2.25},
+        {"label":"LBRC", "x":11.5, "y":2.25},
+        {"label":"RBRC", "x":12.5, "y":2.25},
+        {"label":"BSLS", "x":13.5, "y":2.25, "w":1.5},
+        {"label":"INS", "x":15, "y":2.25},
+        {"label":"P7", "x":16.25, "y":2.25},
+        {"label":"P8", "x":17.25, "y":2.25},
+        {"label":"P9", "x":18.25, "y":2.25},
+        {"label":"CAPS", "x":0, "y":3.25, "w":1.75},
+        {"label":"A", "x":1.75, "y":3.25},
+        {"label":"S", "x":2.75, "y":3.25},
+        {"label":"D", "x":3.75, "y":3.25},
+        {"label":"F", "x":4.75, "y":3.25},
+        {"label":"G", "x":5.75, "y":3.25},
+        {"label":"H", "x":6.75, "y":3.25},
+        {"label":"J", "x":7.75, "y":3.25},
+        {"label":"K", "x":8.75, "y":3.25},
+        {"label":"L", "x":9.75, "y":3.25},
+        {"label":"SCLN", "x":10.75, "y":3.25},
+        {"label":"QUOT", "x":11.75, "y":3.25},
+        {"label":"ENT", "x":12.75, "y":3.25, "w":2.25},
+        {"label":"PGUP", "x":15, "y":3.25},
+        {"label":"P4", "x":16.25, "y":3.25},
+        {"label":"P5", "x":17.25, "y":3.25},
+        {"label":"P6", "x":18.25, "y":3.25},
+        {"label":"PPLS", "x":19.25, "y":2.25, "h":2},
+        {"label":"LSFT", "x":0, "y":4.25, "w":2.25},
+        {"label":"Z", "x":2.25, "y":4.25},
+        {"label":"X", "x":3.25, "y":4.25},
+        {"label":"C", "x":4.25, "y":4.25},
+        {"label":"V", "x":5.25, "y":4.25},
+        {"label":"B", "x":6.25, "y":4.25},
+        {"label":"N", "x":7.25, "y":4.25},
+        {"label":"M", "x":8.25, "y":4.25},
+        {"label":"COMM", "x":9.25, "y":4.25},
+        {"label":"DOT", "x":10.25, "y":4.25},
+        {"label":"SLSH", "x":11.25, "y":4.25},
+        {"label":"RSFT", "x":12.25, "y":4.25, "w":1.75},
+        {"label":"UP", "x":14, "y":4.25},
+        {"label":"PGDN", "x":15, "y":4.25},
+        {"label":"P1", "x":16.25, "y":4.25},
+        {"label":"P2", "x":17.25, "y":4.25},
+        {"label":"P3", "x":18.25, "y":4.25},
+        {"label":"LCTL", "x":0, "y":5.25, "w":1.25},
+        {"label":"LGUI", "x":1.25, "y":5.25, "w":1.25},
+        {"label":"LALT", "x":2.5, "y":5.25, "w":1.25},
+        {"label":"SPC", "x":3.75, "y":5.25, "w":6.25},
+        {"label":"RALT", "x":10, "y":5.25},
+        {"label":"APP", "x":11, "y":5.25},
+        {"label":"RCTL", "x":12, "y":5.25},
+        {"label":"LEFT", "x":13, "y":5.25},
+        {"label":"DOWN", "x":14, "y":5.25},
+        {"label":"RGHT", "x":15, "y":5.25},
+        {"label":"P0", "x":16.25, "y":5.25, "w":2},
+        {"label":"PDOT", "x":18.25, "y":5.25},
+        {"label":"PENT", "x":19.25, "y":4.25, "h":2}
+      ]
+    },
+    "LAYOUT_iso": {
+      "layout": [
+        {"label":"ESC", "x":0, "y":0},
+        {"label":"F1", "x":1, "y":0},
+        {"label":"F2", "x":2, "y":0},
+        {"label":"F3", "x":3, "y":0},
+        {"label":"F4", "x":4, "y":0},
+        {"label":"F5", "x":5, "y":0},
+        {"label":"F6", "x":6, "y":0},
+        {"label":"F7", "x":7, "y":0},
+        {"label":"F8", "x":8, "y":0},
+        {"label":"F9", "x":9, "y":0},
+        {"label":"F10", "x":10, "y":0},
+        {"label":"F11", "x":11, "y":0},
+        {"label":"F12", "x":12, "y":0},
+        {"label":"PSCR", "x":13, "y":0},
+        {"label":"HOME", "x":14, "y":0},
+        {"label":"END", "x":15, "y":0},
+        {"label":"NO", "x":16.25, "y":0},
+        {"label":"NO", "x":17.25, "y":0},
+        {"label":"NO", "x":18.25, "y":0},
+        {"label":"NO", "x":19.25, "y":0},
+        {"label":"GRV", "x":0, "y":1.25},
+        {"label":"1", "x":1, "y":1.25},
+        {"label":"2", "x":2, "y":1.25},
+        {"label":"3", "x":3, "y":1.25},
+        {"label":"4", "x":4, "y":1.25},
+        {"label":"5", "x":5, "y":1.25},
+        {"label":"6", "x":6, "y":1.25},
+        {"label":"7", "x":7, "y":1.25},
+        {"label":"8", "x":8, "y":1.25},
+        {"label":"9", "x":9, "y":1.25},
+        {"label":"0", "x":10, "y":1.25},
+        {"label":"MINS", "x":11, "y":1.25},
+        {"label":"EQL", "x":12, "y":1.25},
+        {"label":"BSPC", "x":13, "y":1.25, "w":2},
+        {"label":"DEL", "x":15, "y":1.25},
+        {"label":"NLCK", "x":16.25, "y":1.25},
+        {"label":"PSLS", "x":17.25, "y":1.25},
+        {"label":"PAST", "x":18.25, "y":1.25},
+        {"label":"PMNS", "x":19.25, "y":1.25},
+        {"label":"TAB", "x":0, "y":2.25, "w":1.5},
+        {"label":"Q", "x":1.5, "y":2.25},
+        {"label":"W", "x":2.5, "y":2.25},
+        {"label":"E", "x":3.5, "y":2.25},
+        {"label":"R", "x":4.5, "y":2.25},
+        {"label":"T", "x":5.5, "y":2.25},
+        {"label":"Y", "x":6.5, "y":2.25},
+        {"label":"U", "x":7.5, "y":2.25},
+        {"label":"I", "x":8.5, "y":2.25},
+        {"label":"O", "x":9.5, "y":2.25},
+        {"label":"P", "x":10.5, "y":2.25},
+        {"label":"LBRC", "x":11.5, "y":2.25},
+        {"label":"RBRC", "x":12.5, "y":2.25},
+        {"label":"INS", "x":15, "y":2.25},
+        {"label":"P7", "x":16.25, "y":2.25},
+        {"label":"P8", "x":17.25, "y":2.25},
+        {"label":"P9", "x":18.25, "y":2.25},
+        {"label":"CAPS", "x":0, "y":3.25, "w":1.75},
+        {"label":"A", "x":1.75, "y":3.25},
+        {"label":"S", "x":2.75, "y":3.25},
+        {"label":"D", "x":3.75, "y":3.25},
+        {"label":"F", "x":4.75, "y":3.25},
+        {"label":"G", "x":5.75, "y":3.25},
+        {"label":"H", "x":6.75, "y":3.25},
+        {"label":"J", "x":7.75, "y":3.25},
+        {"label":"K", "x":8.75, "y":3.25},
+        {"label":"L", "x":9.75, "y":3.25},
+        {"label":"SCLN", "x":10.75, "y":3.25},
+        {"label":"QUOT", "x":11.75, "y":3.25},
+        {"label":"NUHS", "x":12.75, "y":3.25},
+        {"label":"ENT", "x":13.75, "y":2.25, "w":1.25, "h":2},
+        {"label":"PGUP", "x":15, "y":3.25},
+        {"label":"P4", "x":16.25, "y":3.25},
+        {"label":"P5", "x":17.25, "y":3.25},
+        {"label":"P6", "x":18.25, "y":3.25},
+        {"label":"PPLS", "x":19.25, "y":2.25, "h":2},
+        {"label":"LSFT", "x":0, "y":4.25, "w":1.25},
+        {"label":"NUBS", "x":1.25, "y":4.25},
+        {"label":"Z", "x":2.25, "y":4.25},
+        {"label":"X", "x":3.25, "y":4.25},
+        {"label":"C", "x":4.25, "y":4.25},
+        {"label":"V", "x":5.25, "y":4.25},
+        {"label":"B", "x":6.25, "y":4.25},
+        {"label":"N", "x":7.25, "y":4.25},
+        {"label":"M", "x":8.25, "y":4.25},
+        {"label":"COMM", "x":9.25, "y":4.25},
+        {"label":"DOT", "x":10.25, "y":4.25},
+        {"label":"SLSH", "x":11.25, "y":4.25},
+        {"label":"RSFT", "x":12.25, "y":4.25, "w":1.75},
+        {"label":"UP", "x":14, "y":4.25},
+        {"label":"PGDN", "x":15, "y":4.25},
+        {"label":"P1", "x":16.25, "y":4.25},
+        {"label":"P2", "x":17.25, "y":4.25},
+        {"label":"P3", "x":18.25, "y":4.25},
+        {"label":"LCTL", "x":0, "y":5.25, "w":1.25},
+        {"label":"LGUI", "x":1.25, "y":5.25, "w":1.25},
+        {"label":"LALT", "x":2.5, "y":5.25, "w":1.25},
+        {"label":"SPC", "x":3.75, "y":5.25, "w":6.25},
+        {"label":"RALT", "x":10, "y":5.25},
+        {"label":"APP", "x":11, "y":5.25},
+        {"label":"RCTL", "x":12, "y":5.25},
+        {"label":"LEFT", "x":13, "y":5.25},
+        {"label":"DOWN", "x":14, "y":5.25},
+        {"label":"RGHT", "x":15, "y":5.25},
+        {"label":"P0", "x":16.25, "y":5.25, "w":2},
+        {"label":"PDOT", "x":18.25, "y":5.25},
+        {"label":"PENT", "x":19.25, "y":4.25, "h":2}
+      ]
+    }
+  }
+}
diff --git a/keyboards/bminiex/keymaps/ansi/keymap.c b/keyboards/bminiex/keymaps/ansi/keymap.c
new file mode 100644
index 000000000..12c0714b1
--- /dev/null
+++ b/keyboards/bminiex/keymaps/ansi/keymap.c
@@ -0,0 +1,29 @@
+/*
+Copyright 2017 Luiz Ribeiro <luizribeiro@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/>.
+*/
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+  [0] = LAYOUT_ansi(
+    KC_ESC,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_PSCR, KC_HOME, KC_END,     KC_NO,   KC_NO,   KC_NO,   KC_NO,   \
+    KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC,          KC_DEL,     KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, \
+    KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC, KC_BSLS,          KC_INS,     KC_P7,   KC_P8,   KC_P9,            \
+    KC_LCAP, KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT,          KC_ENT,           KC_PGUP,    KC_P4,   KC_P5,   KC_P6,   KC_PPLS, \
+    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_UP,   KC_PGDN,    KC_P1,   KC_P2,   KC_P3,            \
+    KC_LCTL, KC_LGUI, KC_LALT,                            KC_SPC,                             KC_RALT, KC_APP,  KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT,    KC_P0,            KC_PDOT, KC_PENT  \
+  )
+};
diff --git a/keyboards/bminiex/keymaps/ansi/readme.md b/keyboards/bminiex/keymaps/ansi/readme.md
new file mode 100644
index 000000000..853fa05c5
--- /dev/null
+++ b/keyboards/bminiex/keymaps/ansi/readme.md
@@ -0,0 +1,17 @@
+# ansi
+
+An ANSI-layout keymap based on the default.
+
+    ,-------------------------------------------------------------------------------.
+    |Esc|F1 |F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|PSc|Hm |End|NO |NO |NO |NO |
+    |-------------------------------------------------------------------------------|
+    |`  |1  |2  |3  |4  |5  |6  |7  |8  |9  |0  |-  |=  |Bksp   |Del|NLck|P/|P* |P- |
+    |-------------------------------------------------------------------------------|
+    |Tab  |Q  |W  |E  |R  |T  |Y  |U  |I  |O  |P  |[  |]  |\    |Ins|P7 |P8 |P9 |   |
+    |---------------------------------------------------------------------------|P+ |
+    |CapsLk|A  |S  |D  |F  |G  |H  |J  |K  |L  |;  |'  |Enter   |PgU|P4 |P5 |P6 |   |
+    |-------------------------------------------------------------------------------|
+    |Shift   |Z  |X  |C  |V  |B  |N  |M  |,  |.  |/  |Shift |Up |PgD|P1 |P2 |P3 |   |
+    |---------------------------------------------------------------------------|Ent|
+    |Ctrl|GUI |Alt |Space                   |Alt|App|Ctl|Lft|Dwn|Rgt|P0     |P. |   |
+    `-------------------------------------------------------------------------------'
diff --git a/keyboards/bminiex/keymaps/iso/keymap.c b/keyboards/bminiex/keymaps/iso/keymap.c
new file mode 100644
index 000000000..aa4ddf063
--- /dev/null
+++ b/keyboards/bminiex/keymaps/iso/keymap.c
@@ -0,0 +1,29 @@
+/*
+Copyright 2017 Luiz Ribeiro <luizribeiro@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/>.
+*/
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+  [0] = LAYOUT_iso(
+    KC_ESC,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_PSCR, KC_HOME, KC_END,     KC_NO,   KC_NO,   KC_NO,   KC_NO,   \
+    KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC,          KC_DEL,     KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, \
+    KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC,                   KC_INS,     KC_P7,   KC_P8,   KC_P9,            \
+    KC_LCAP, KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT,           KC_PGUP,    KC_P4,   KC_P5,   KC_P6,   KC_PPLS, \
+    KC_LSFT, KC_NUBS, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT,          KC_UP,   KC_PGDN,    KC_P1,   KC_P2,   KC_P3,            \
+    KC_LCTL, KC_LGUI, KC_LALT,                            KC_SPC,                             KC_RALT, KC_APP,  KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT,    KC_P0,            KC_PDOT, KC_PENT  \
+  )
+};
diff --git a/keyboards/bminiex/keymaps/iso/readme.md b/keyboards/bminiex/keymaps/iso/readme.md
new file mode 100644
index 000000000..74c42a618
--- /dev/null
+++ b/keyboards/bminiex/keymaps/iso/readme.md
@@ -0,0 +1,17 @@
+# iso
+
+An ISO-layout keymap based on the default.
+
+    ,-------------------------------------------------------------------------------.
+    |Esc|F1 |F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|PSc|Hm |End|NO |NO |NO |NO |
+    |-------------------------------------------------------------------------------|
+    |`  |1  |2  |3  |4  |5  |6  |7  |8  |9  |0  |-  |=  |Bksp   |Del|NLck|P/|P* |P- |
+    |-------------------------------------------------------------------------------|
+    |Tab  |Q  |W  |E  |R  |T  |Y  |U  |I  |O  |P  |[  |]  |     |Ins|P7 |P8 |P9 |   |
+    |------------------------------------------------------.Ent |---------------|P+ |
+    |CapsLk|A  |S  |D  |F  |G  |H  |J  |K  |L  |;  |'  |#  |    |PgU|P4 |P5 |P6 |   |
+    |-------------------------------------------------------------------------------|
+    |Sft |\  |Z  |X  |C  |V  |B  |N  |M  |,  |.  |/  |Shift |Up |PgD|P1 |P2 |P3 |   |
+    |---------------------------------------------------------------------------|Ent|
+    |Ctrl|GUI |Alt |Space                   |Alt|App|Ctl|Lft|Dwn|Rgt|P0     |P. |   |
+    `-------------------------------------------------------------------------------'