From 677789df773479dcedd0c3d71885ff5e89b7b5b6 Mon Sep 17 00:00:00 2001 From: CMMS-Freather <72902384+CMMS-Freather@users.noreply.github.com> Date: Mon, 18 Jan 2021 18:23:13 -0800 Subject: [PATCH 1/2] change to cmm.studio saka68 folder. split to solder and hotswap, add hotswap fimware (#11443) * new repo: create cmm.studio folder, add saka qmk firmware new folder for cmm.studio line up keyboard added saka68 keyboard qmk and via firmware support * Update keyboards/cmm.studio/saka68/config.h Co-authored-by: Ryan * Update keyboards/cmm.studio/saka68/rules.mk Co-authored-by: Ryan * Update keyboards/cmm.studio/saka68/keymaps/via/rules.mk Co-authored-by: Ryan * Update keyboards/cmm.studio/saka68/config.h Co-authored-by: Ryan * fix on keymap, readme fix on keymap, readme * Update keyboards/cmm.studio/saka68/readme.md Co-authored-by: Ryan * Update keyboards/cmm.studio/saka68/keymaps/default/keymap.c Co-authored-by: Ryan * update vendor name with _ instead of . update vendor name with _ instead of . * Update readme.md change the make format * Update keyboards/cmm_studio/saka68/keymaps/default/keymap.c Co-authored-by: Ryan * deleted some files from cmm.studio, changes to cmm_studio deleted some files from cmm.studio, changes to cmm_studio * Update readme.md make command changed * Update keyboards/cmm_studio/saka68/readme.md Co-authored-by: Ryan * Update readme.md added pic for pcb * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update keyboards/cmm_studio/saka68/config.h tested and does work now. deleting these lines Co-authored-by: Ryan * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update keyboards/cmm_studio/saka68/readme.md Co-authored-by: Ryan * Update readme.md added use physical reset button instruction * change to the cmm saka folder making the changes to cmm saka firmware seperated solder version firmware and hotswap version firmware * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md * change to the cmm saka hotswap folder Co-authored-by: Ryan --- keyboards/cmm_studio/saka68/hotswap/config.h | 50 +++++++++++ keyboards/cmm_studio/saka68/hotswap/hotswap.c | 17 ++++ keyboards/cmm_studio/saka68/hotswap/hotswap.h | 36 ++++++++ keyboards/cmm_studio/saka68/hotswap/info.json | 82 +++++++++++++++++++ .../saka68/hotswap/keymaps/default/keymap.c | 36 ++++++++ .../saka68/hotswap/keymaps/default/readme.md | 1 + .../saka68/hotswap/keymaps/via/keymap.c | 51 ++++++++++++ .../saka68/{ => hotswap}/keymaps/via/rules.mk | 0 keyboards/cmm_studio/saka68/hotswap/readme.md | 21 +++++ keyboards/cmm_studio/saka68/hotswap/rules.mk | 25 ++++++ .../cmm_studio/saka68/{ => solder}/config.h | 0 .../cmm_studio/saka68/{ => solder}/info.json | 2 +- .../{ => solder}/keymaps/default/keymap.c | 2 +- .../saka68/{ => solder}/keymaps/via/keymap.c | 4 +- .../saka68/solder/keymaps/via/rules.mk | 2 + keyboards/cmm_studio/saka68/solder/readme.md | 17 ++++ .../cmm_studio/saka68/{ => solder}/rules.mk | 0 .../saka68/{saka68.c => solder/solder.c} | 2 +- .../saka68/{saka68.h => solder/solder.h} | 0 19 files changed, 343 insertions(+), 5 deletions(-) create mode 100644 keyboards/cmm_studio/saka68/hotswap/config.h create mode 100644 keyboards/cmm_studio/saka68/hotswap/hotswap.c create mode 100644 keyboards/cmm_studio/saka68/hotswap/hotswap.h create mode 100644 keyboards/cmm_studio/saka68/hotswap/info.json create mode 100644 keyboards/cmm_studio/saka68/hotswap/keymaps/default/keymap.c create mode 100644 keyboards/cmm_studio/saka68/hotswap/keymaps/default/readme.md create mode 100644 keyboards/cmm_studio/saka68/hotswap/keymaps/via/keymap.c rename keyboards/cmm_studio/saka68/{ => hotswap}/keymaps/via/rules.mk (100%) create mode 100644 keyboards/cmm_studio/saka68/hotswap/readme.md create mode 100644 keyboards/cmm_studio/saka68/hotswap/rules.mk rename keyboards/cmm_studio/saka68/{ => solder}/config.h (100%) rename keyboards/cmm_studio/saka68/{ => solder}/info.json (99%) rename keyboards/cmm_studio/saka68/{ => solder}/keymaps/default/keymap.c (97%) rename keyboards/cmm_studio/saka68/{ => solder}/keymaps/via/keymap.c (96%) create mode 100644 keyboards/cmm_studio/saka68/solder/keymaps/via/rules.mk create mode 100644 keyboards/cmm_studio/saka68/solder/readme.md rename keyboards/cmm_studio/saka68/{ => solder}/rules.mk (100%) rename keyboards/cmm_studio/saka68/{saka68.c => solder/solder.c} (97%) rename keyboards/cmm_studio/saka68/{saka68.h => solder/solder.h} (100%) diff --git a/keyboards/cmm_studio/saka68/hotswap/config.h b/keyboards/cmm_studio/saka68/hotswap/config.h new file mode 100644 index 000000000..99ca2ae8d --- /dev/null +++ b/keyboards/cmm_studio/saka68/hotswap/config.h @@ -0,0 +1,50 @@ +/* +Copyright 2021 CMM.Studio Freather + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x434D +#define PRODUCT_ID 0x5348 +#define DEVICE_VER 0x0001 +#define MANUFACTURER CMM.Studio +#define PRODUCT Saka68 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 16 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * + */ +#define MATRIX_ROW_PINS { D2, D1, B0, F6, F7 } +#define MATRIX_COL_PINS { D4, D6, D7, B4, B5, B6, C6, F5, F4, F1, F0, B1, B2, B3, D3, D5 } + +#define DIODE_DIRECTION COL2ROW + + +// generated by KBFirmware JSON to QMK Parser +// https://noroadsleft.github.io/kbf_qmk_converter/ diff --git a/keyboards/cmm_studio/saka68/hotswap/hotswap.c b/keyboards/cmm_studio/saka68/hotswap/hotswap.c new file mode 100644 index 000000000..14454b58b --- /dev/null +++ b/keyboards/cmm_studio/saka68/hotswap/hotswap.c @@ -0,0 +1,17 @@ +/* Copyright 2021 CMM.Studio Freather + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "hotswap.h" diff --git a/keyboards/cmm_studio/saka68/hotswap/hotswap.h b/keyboards/cmm_studio/saka68/hotswap/hotswap.h new file mode 100644 index 000000000..69f782ad7 --- /dev/null +++ b/keyboards/cmm_studio/saka68/hotswap/hotswap.h @@ -0,0 +1,36 @@ +/* Copyright 2021 CMM.Studio Freather + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + + #pragma once + + #include "quantum.h" + + #define LAYOUT( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3E, \ + K40, K41, K42, K46, K49, K4A, K4B, K4D, K4E, K4F \ + ) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KC_NO, K2D, KC_NO, KC_NO }, \ + { K30, KC_NO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KC_NO, K3E, KC_NO }, \ + { K40, K41, K42, KC_NO, KC_NO, KC_NO, K46, KC_NO, KC_NO, K49, K4A, K4B, KC_NO, K4D, K4E, K4F }, \ + } + + // generated by KBFirmware JSON to QMK Parser + // https://noroadsleft.github.io/kbf_qmk_converter/ diff --git a/keyboards/cmm_studio/saka68/hotswap/info.json b/keyboards/cmm_studio/saka68/hotswap/info.json new file mode 100644 index 000000000..f6d467159 --- /dev/null +++ b/keyboards/cmm_studio/saka68/hotswap/info.json @@ -0,0 +1,82 @@ +{ + "keyboard_name": "CMM.Studio Saka68", + "url": "", + "maintainer": "qmk", + "width": 17.25, + "height": 5, + "layouts": { + "LAYOUT": { + "layout": [ + {"label":"K00 (D2,D4)", "x":0, "y":0}, + {"label":"K01 (D2,D6)", "x":1, "y":0}, + {"label":"K02 (D2,D7)", "x":2, "y":0}, + {"label":"K03 (D2,B4)", "x":3, "y":0}, + {"label":"K04 (D2,B5)", "x":4, "y":0}, + {"label":"K05 (D2,B6)", "x":5, "y":0}, + {"label":"K06 (D2,C6)", "x":6, "y":0}, + {"label":"K07 (D2,F5)", "x":7, "y":0}, + {"label":"K08 (D2,F4)", "x":8, "y":0}, + {"label":"K09 (D2,F1)", "x":9, "y":0}, + {"label":"K0A (D2,F0)", "x":10, "y":0}, + {"label":"K0B (D2,B1)", "x":11, "y":0}, + {"label":"K0C (D2,B2)", "x":12, "y":0}, + {"label":"K0D (D2,B3)", "x":13, "y":0, "w":2}, + {"label":"K0E (D2,D3)", "x":15.25, "y":0}, + {"label":"K0F (D2,D5)", "x":16.25, "y":0}, + {"label":"K10 (D1,D4)", "x":0, "y":1, "w":1.5}, + {"label":"K11 (D1,D6)", "x":1.5, "y":1}, + {"label":"K12 (D1,D7)", "x":2.5, "y":1}, + {"label":"K13 (D1,B4)", "x":3.5, "y":1}, + {"label":"K14 (D1,B5)", "x":4.5, "y":1}, + {"label":"K15 (D1,B6)", "x":5.5, "y":1}, + {"label":"K16 (D1,C6)", "x":6.5, "y":1}, + {"label":"K17 (D1,F5)", "x":7.5, "y":1}, + {"label":"K18 (D1,F4)", "x":8.5, "y":1}, + {"label":"K19 (D1,F1)", "x":9.5, "y":1}, + {"label":"K1A (D1,F0)", "x":10.5, "y":1}, + {"label":"K1B (D1,B1)", "x":11.5, "y":1}, + {"label":"K1C (D1,B2)", "x":12.5, "y":1}, + {"label":"K1D (D1,B3)", "x":13.5, "y":1, "w":1.5}, + {"label":"K1E (D1,D3)", "x":15.25, "y":1}, + {"label":"K1F (D1,D5)", "x":16.25, "y":1}, + {"label":"K20 (B0,D4)", "x":0, "y":2, "w":1.75}, + {"label":"K21 (B0,D6)", "x":1.75, "y":2}, + {"label":"K22 (B0,D7)", "x":2.75, "y":2}, + {"label":"K23 (B0,B4)", "x":3.75, "y":2}, + {"label":"K24 (B0,B5)", "x":4.75, "y":2}, + {"label":"K25 (B0,B6)", "x":5.75, "y":2}, + {"label":"K26 (B0,C6)", "x":6.75, "y":2}, + {"label":"K27 (B0,F5)", "x":7.75, "y":2}, + {"label":"K28 (B0,F4)", "x":8.75, "y":2}, + {"label":"K29 (B0,F1)", "x":9.75, "y":2}, + {"label":"K2A (B0,F0)", "x":10.75, "y":2}, + {"label":"K2B (B0,B1)", "x":11.75, "y":2}, + {"label":"K2D (B0,B3)", "x":12.75, "y":2, "w":2.25}, + {"label":"K30 (F6,D4)", "x":0, "y":3, "w":2.25}, + {"label":"K32 (F6,D7)", "x":2.25, "y":3}, + {"label":"K33 (F6,B4)", "x":3.25, "y":3}, + {"label":"K34 (F6,B5)", "x":4.25, "y":3}, + {"label":"K35 (F6,B6)", "x":5.25, "y":3}, + {"label":"K36 (F6,C6)", "x":6.25, "y":3}, + {"label":"K37 (F6,F5)", "x":7.25, "y":3}, + {"label":"K38 (F6,F4)", "x":8.25, "y":3}, + {"label":"K39 (F6,F1)", "x":9.25, "y":3}, + {"label":"K3A (F6,F0)", "x":10.25, "y":3}, + {"label":"K3B (F6,B1)", "x":11.25, "y":3}, + {"label":"K3C (F6,B2)", "x":12.25, "y":3, "w":2.75}, + {"label":"K3E (F6,D3)", "x":15.25, "y":3}, + {"label":"K40 (F7,D4)", "x":0, "y":4, "w":1.25}, + {"label":"K41 (F7,D6)", "x":1.25, "y":4, "w":1.25}, + {"label":"K42 (F7,D7)", "x":2.5, "y":4, "w":1.25}, + {"label":"K46 (F7,C6)", "x":3.75, "y":4, "w":6.25}, + {"label":"K49 (F7,F1)", "x":10, "y":4, "w":1.25}, + {"label":"K4A (F7,F0)", "x":11.25, "y":4, "w":1.25}, + {"label":"K4B (F7,B1)", "x":12.5, "y":4, "w":1.25}, + {"label":"K4D (F7,B3)", "x":14.25, "y":4}, + {"label":"K4E (F7,D3)", "x":15.25, "y":4}, + {"label":"K4F (F7,D5)", "x":16.25, "y":4} + ] + } + } + ,"meta": "https://noroadsleft.github.io/kbf_qmk_converter/" +} diff --git a/keyboards/cmm_studio/saka68/hotswap/keymaps/default/keymap.c b/keyboards/cmm_studio/saka68/hotswap/keymaps/default/keymap.c new file mode 100644 index 000000000..8f4ad5b4f --- /dev/null +++ b/keyboards/cmm_studio/saka68/hotswap/keymaps/default/keymap.c @@ -0,0 +1,36 @@ +/* Copyright 2021 CMM.Studio Freather + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + + #include QMK_KEYBOARD_H + + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_SPC, + 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_DEL, KC_SPC, + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, + 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT( + KC_TRNS, 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_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/cmm_studio/saka68/hotswap/keymaps/default/readme.md b/keyboards/cmm_studio/saka68/hotswap/keymaps/default/readme.md new file mode 100644 index 000000000..db71e7842 --- /dev/null +++ b/keyboards/cmm_studio/saka68/hotswap/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for Saka68 diff --git a/keyboards/cmm_studio/saka68/hotswap/keymaps/via/keymap.c b/keyboards/cmm_studio/saka68/hotswap/keymaps/via/keymap.c new file mode 100644 index 000000000..bd94987d8 --- /dev/null +++ b/keyboards/cmm_studio/saka68/hotswap/keymaps/via/keymap.c @@ -0,0 +1,51 @@ +/* Copyright 2021 CMM.Studio Freather + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + + #include QMK_KEYBOARD_H + + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_SPC, + 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_DEL, KC_SPC, + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, + 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT( + KC_TRNS, 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_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [2] = LAYOUT( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/cmm_studio/saka68/keymaps/via/rules.mk b/keyboards/cmm_studio/saka68/hotswap/keymaps/via/rules.mk similarity index 100% rename from keyboards/cmm_studio/saka68/keymaps/via/rules.mk rename to keyboards/cmm_studio/saka68/hotswap/keymaps/via/rules.mk diff --git a/keyboards/cmm_studio/saka68/hotswap/readme.md b/keyboards/cmm_studio/saka68/hotswap/readme.md new file mode 100644 index 000000000..dda9d1f08 --- /dev/null +++ b/keyboards/cmm_studio/saka68/hotswap/readme.md @@ -0,0 +1,21 @@ +# CMM.Studio Saka68 + +CMM.Studio Saka68 Keyboard + +![CMM.Studio Saka68](https://i.imgur.com/E1S43cs.png) + + + + +* Keyboard Maintainer: [CMM.Studio Freather](https://github.com/CMMS-Freather) +* Hardware Supported: PCB, Atmega32u4 +this firmware supports iso and ansi hotswap directly, once you flash the via firmware, you only need to select the layout and change to iso layout, then you can use iso hotswap version + +Make example for this keyboard (after setting up your build environment): + + make cmm_studio/saka68/hotswap:default + + +For reset instruction, use the physical reset button on the back of the keyboard to enter bootloader mode + +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/cmm_studio/saka68/hotswap/rules.mk b/keyboards/cmm_studio/saka68/hotswap/rules.mk new file mode 100644 index 000000000..14b22efbd --- /dev/null +++ b/keyboards/cmm_studio/saka68/hotswap/rules.mk @@ -0,0 +1,25 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE = no # USB Nkey Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +BLUETOOTH_ENABLE = no # Enable Bluetooth +AUDIO_ENABLE = no # Audio output + +# generated by KBFirmware JSON to QMK Parser +# https://noroadsleft.github.io/kbf_qmk_converter/ diff --git a/keyboards/cmm_studio/saka68/config.h b/keyboards/cmm_studio/saka68/solder/config.h similarity index 100% rename from keyboards/cmm_studio/saka68/config.h rename to keyboards/cmm_studio/saka68/solder/config.h diff --git a/keyboards/cmm_studio/saka68/info.json b/keyboards/cmm_studio/saka68/solder/info.json similarity index 99% rename from keyboards/cmm_studio/saka68/info.json rename to keyboards/cmm_studio/saka68/solder/info.json index 75a78649b..3829d1553 100644 --- a/keyboards/cmm_studio/saka68/info.json +++ b/keyboards/cmm_studio/saka68/solder/info.json @@ -1,5 +1,5 @@ { - "keyboard_name": "", + "keyboard_name": "CMM.Studio Saka68", "url": "", "maintainer": "qmk", "width": 17.25, diff --git a/keyboards/cmm_studio/saka68/keymaps/default/keymap.c b/keyboards/cmm_studio/saka68/solder/keymaps/default/keymap.c similarity index 97% rename from keyboards/cmm_studio/saka68/keymaps/default/keymap.c rename to keyboards/cmm_studio/saka68/solder/keymaps/default/keymap.c index 7d4bd43e7..88f6db4ed 100644 --- a/keyboards/cmm_studio/saka68/keymaps/default/keymap.c +++ b/keyboards/cmm_studio/saka68/solder/keymaps/default/keymap.c @@ -21,7 +21,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, 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_DEL, KC_END, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, + 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), diff --git a/keyboards/cmm_studio/saka68/keymaps/via/keymap.c b/keyboards/cmm_studio/saka68/solder/keymaps/via/keymap.c similarity index 96% rename from keyboards/cmm_studio/saka68/keymaps/via/keymap.c rename to keyboards/cmm_studio/saka68/solder/keymaps/via/keymap.c index 602bccd4c..bd55f0d85 100644 --- a/keyboards/cmm_studio/saka68/keymaps/via/keymap.c +++ b/keyboards/cmm_studio/saka68/solder/keymaps/via/keymap.c @@ -21,8 +21,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, 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_DEL, KC_END, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( diff --git a/keyboards/cmm_studio/saka68/solder/keymaps/via/rules.mk b/keyboards/cmm_studio/saka68/solder/keymaps/via/rules.mk new file mode 100644 index 000000000..eb5b445dd --- /dev/null +++ b/keyboards/cmm_studio/saka68/solder/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +MOUSEKEY_ENABLE = yes diff --git a/keyboards/cmm_studio/saka68/solder/readme.md b/keyboards/cmm_studio/saka68/solder/readme.md new file mode 100644 index 000000000..b668c5f70 --- /dev/null +++ b/keyboards/cmm_studio/saka68/solder/readme.md @@ -0,0 +1,17 @@ +# CMM.Studio Saka68 + +CMM.Studio Saka68 Keyboard + +![CMM.Studio Saka68](https://i.imgur.com/gZ9Thjel.png) + +* Keyboard Maintainer: [CMM.Studio Freather](https://github.com/CMMS-Freather) +* Hardware Supported: PCB, Atmega32u4 + +Make example for this keyboard (after setting up your build environment): + + make cmm_studio/saka68/solder:default + + +For reset instruction, use the physical reset button on the back of the keyboard to enter bootloader mode + +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/cmm_studio/saka68/rules.mk b/keyboards/cmm_studio/saka68/solder/rules.mk similarity index 100% rename from keyboards/cmm_studio/saka68/rules.mk rename to keyboards/cmm_studio/saka68/solder/rules.mk diff --git a/keyboards/cmm_studio/saka68/saka68.c b/keyboards/cmm_studio/saka68/solder/solder.c similarity index 97% rename from keyboards/cmm_studio/saka68/saka68.c rename to keyboards/cmm_studio/saka68/solder/solder.c index f15be8d2f..5ff4cf0b9 100644 --- a/keyboards/cmm_studio/saka68/saka68.c +++ b/keyboards/cmm_studio/saka68/solder/solder.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ -#include "saka68.h" +#include "solder.h" // generated by KBFirmware JSON to QMK Parser // https://noroadsleft.github.io/kbf_qmk_converter/ diff --git a/keyboards/cmm_studio/saka68/saka68.h b/keyboards/cmm_studio/saka68/solder/solder.h similarity index 100% rename from keyboards/cmm_studio/saka68/saka68.h rename to keyboards/cmm_studio/saka68/solder/solder.h From d24fe4f1ca49b2143b3f3d260a0a63088b521673 Mon Sep 17 00:00:00 2001 From: Glen D'souza Date: Tue, 19 Jan 2021 07:53:54 +0530 Subject: [PATCH 2/2] GCC 10 compatibility for Ploopy optical encoder (#11586) --- keyboards/ploopyco/opt_encoder.c | 28 ++++++++++++++++++ keyboards/ploopyco/opt_encoder.h | 50 ++++++++++++++++---------------- 2 files changed, 53 insertions(+), 25 deletions(-) diff --git a/keyboards/ploopyco/opt_encoder.c b/keyboards/ploopyco/opt_encoder.c index 44bcd5eb8..8698351c2 100644 --- a/keyboards/ploopyco/opt_encoder.c +++ b/keyboards/ploopyco/opt_encoder.c @@ -16,6 +16,34 @@ */ #include "opt_encoder.h" +enum State state; + +/* Variables used for scroll wheel functionality. */ +bool lohif; +bool hilof; +int lowA; +int highA; +bool cLowA; +bool cHighA; +int lowIndexA; +int highIndexA; +bool lowOverflowA; +bool highOverflowA; +int lowB; +int highB; +bool cLowB; +bool cHighB; +int lowIndexB; +int highIndexB; +bool lowOverflowB; +bool highOverflowB; +int scrollThresholdA; +int scrollThresholdB; +int arLowA[SCROLLER_AR_SIZE]; +int arHighA[SCROLLER_AR_SIZE]; +int arLowB[SCROLLER_AR_SIZE]; +int arHighB[SCROLLER_AR_SIZE]; + /* Setup function for the scroll wheel. Initializes the relevant variables. */ void opt_encoder_init(void) { diff --git a/keyboards/ploopyco/opt_encoder.h b/keyboards/ploopyco/opt_encoder.h index 23a170d59..17c25bc86 100644 --- a/keyboards/ploopyco/opt_encoder.h +++ b/keyboards/ploopyco/opt_encoder.h @@ -28,33 +28,33 @@ enum State { HIHI, HILO, LOLO, LOHI }; -enum State state; +extern enum State state; /* Variables used for scroll wheel functionality. */ -bool lohif; -bool hilof; -int lowA; -int highA; -bool cLowA; -bool cHighA; -int lowIndexA; -int highIndexA; -bool lowOverflowA; -bool highOverflowA; -int lowB; -int highB; -bool cLowB; -bool cHighB; -int lowIndexB; -int highIndexB; -bool lowOverflowB; -bool highOverflowB; -int scrollThresholdA; -int scrollThresholdB; -int arLowA[SCROLLER_AR_SIZE]; -int arHighA[SCROLLER_AR_SIZE]; -int arLowB[SCROLLER_AR_SIZE]; -int arHighB[SCROLLER_AR_SIZE]; +extern bool lohif; +extern bool hilof; +extern int lowA; +extern int highA; +extern bool cLowA; +extern bool cHighA; +extern int lowIndexA; +extern int highIndexA; +extern bool lowOverflowA; +extern bool highOverflowA; +extern int lowB; +extern int highB; +extern bool cLowB; +extern bool cHighB; +extern int lowIndexB; +extern int highIndexB; +extern bool lowOverflowB; +extern bool highOverflowB; +extern int scrollThresholdA; +extern int scrollThresholdB; +extern int arLowA[SCROLLER_AR_SIZE]; +extern int arHighA[SCROLLER_AR_SIZE]; +extern int arLowB[SCROLLER_AR_SIZE]; +extern int arHighB[SCROLLER_AR_SIZE]; void calculateThresholdA(int curA); void calculateThresholdB(int curB);