diff options
| -rw-r--r-- | keyboards/chocv/chocv.c | 17 | ||||
| -rw-r--r-- | keyboards/chocv/chocv.h | 43 | ||||
| -rw-r--r-- | keyboards/chocv/config.h | 43 | ||||
| -rw-r--r-- | keyboards/chocv/info.json | 54 | ||||
| -rw-r--r-- | keyboards/chocv/keymaps/default/keymap.c | 30 | ||||
| -rw-r--r-- | keyboards/chocv/keymaps/default/readme.md | 24 | ||||
| -rw-r--r-- | keyboards/chocv/readme.md | 26 | ||||
| -rw-r--r-- | keyboards/chocv/rules.mk | 20 | 
8 files changed, 257 insertions, 0 deletions
| diff --git a/keyboards/chocv/chocv.c b/keyboards/chocv/chocv.c new file mode 100644 index 0000000000..c79f8a1b75 --- /dev/null +++ b/keyboards/chocv/chocv.c @@ -0,0 +1,17 @@ +/* Copyright 2021 BrickBots Labs + * + * 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 "chocv.h" diff --git a/keyboards/chocv/chocv.h b/keyboards/chocv/chocv.h new file mode 100644 index 0000000000..2691dfcb83 --- /dev/null +++ b/keyboards/chocv/chocv.h @@ -0,0 +1,43 @@ +/* Copyright 2021 BrickBots Labs + * + * 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" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ + + +#define LAYOUT_split_3x5_3( \ +   k00, k01, k02, k03, k04, k05, k06, k07, k08, k09,\ +   k10, k11, k12, k13, k14, k15, k16, k17, k18, k19,\ +   k20, k21, k22, k23, k24, k25, k26, k27, k28, k29,\ +             k30, k31, k32, k33, k34, k35          \ +   ) \ +   { \ +   { k00, k01,   k02,   k03, k04, k05, k06, k07, k08, k09}, \ +   { k10, k11,   k12,   k13, k14, k15, k16, k17, k18, k19}, \ +   { k20, k21,   k22,   k23, k24, k25, k26, k27, k28, k29}, \ +   { KC_NO, KC_NO, k30, k31, k32, k33, k34, k35, KC_NO, KC_NO}  \ +   } + diff --git a/keyboards/chocv/config.h b/keyboards/chocv/config.h new file mode 100644 index 0000000000..c35e1afc98 --- /dev/null +++ b/keyboards/chocv/config.h @@ -0,0 +1,43 @@ +/* Copyright 2021 BrickBots Labs +  * +  * 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 0xBBB0 + #define PRODUCT_ID 0x0002 + #define DEVICE_VER 0x0001 + #define MANUFACTURER BrickBots Labs + #define PRODUCT chocV + + /* key matrix size */ + #define MATRIX_ROWS 4 + #define MATRIX_COLS 10 + + + #define MATRIX_ROW_PINS { F4, F5, D1, D0 } + #define MATRIX_COL_PINS { B6, B2, B3, B1, F7, C6, D7, E6, B4, B5} + #define UNUSED_PINS + + /* COL2ROW, ROW2COL*/ + #define DIODE_DIRECTION COL2ROW + + + /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ + #define DEBOUNCE 5 + diff --git a/keyboards/chocv/info.json b/keyboards/chocv/info.json new file mode 100644 index 0000000000..fe5a250291 --- /dev/null +++ b/keyboards/chocv/info.json @@ -0,0 +1,54 @@ +{ +  "keyboard_name": "chocV", +  "url": "https://github.com/brickbots/chocV", +  "maintainer": "Brickbots", +  "layouts": { +    "LAYOUT_split_3x5_3": { +      "layout": [ +        {"label":"Q", "x":0, "y":0.3}, +        {"label":"W", "x":1, "y":0.1}, +        {"label":"E", "x":2, "y":0}, +        {"label":"R", "x":3, "y":0.1}, +        {"label":"T", "x":4, "y":0.2}, + +        {"label":"Y", "x":8, "y":0.2}, +        {"label":"U", "x":9, "y":0.1}, +        {"label":"I", "x":10, "y":0}, +        {"label":"O", "x":11, "y":0.1}, +        {"label":"P", "x":12, "y":0.3}, + +        {"label":"A", "x":0, "y":1.3}, +        {"label":"S", "x":1, "y":1.1}, +        {"label":"D", "x":2, "y":1}, +        {"label":"F", "x":3, "y":1.1}, +        {"label":"G", "x":4, "y":1.2}, + +        {"label":"H", "x":8, "y":1.2}, +        {"label":"J", "x":9, "y":1.1}, +        {"label":"K", "x":10, "y":1}, +        {"label":"L", "x":11, "y":1.1}, +        {"label":";", "x":12, "y":1.3}, + +        {"label":"Z", "x":0, "y":2.3}, +        {"label":"X", "x":1, "y":2.1}, +        {"label":"C", "x":2, "y":2}, +        {"label":"V", "x":3, "y":2.1}, +        {"label":"B", "x":4, "y":2.2}, + +        {"label":"N", "x":8, "y":2.2}, +        {"label":"M", "x":9, "y":2.1}, +        {"label":",", "x":10, "y":2}, +        {"label":".", "x":11, "y":2.1}, +        {"label":"/", "x":12, "y":2.3}, + +        {"label":"KC_LSFT", "x":3, "y":3.7}, +        {"label":"LC_LALT", "x":4, "y":3.7}, +        {"label":"KC_ENT", "x":5, "y":3.2, "h":1.5}, + +        {"label":"KC_SPC", "x":7, "y":3.2, "h":1.5}, +        {"label":"KC_DEL", "x":8, "y":3.7}, +        {"label":"KC_RCTL", "x":9, "y":3.7} +      ] +    } +  } +} diff --git a/keyboards/chocv/keymaps/default/keymap.c b/keyboards/chocv/keymaps/default/keymap.c new file mode 100644 index 0000000000..f6d2f0d270 --- /dev/null +++ b/keyboards/chocv/keymaps/default/keymap.c @@ -0,0 +1,30 @@ +/* Copyright 2021 BrickBots Labs + * + * 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 + +// Defines names for use in layer keycodes and the keymap +enum layer_names { +    _QWERTY, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +   [_QWERTY] = LAYOUT_split_3x5_3( +     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_LSFT,   KC_LALT,    KC_ENT,  KC_SPC,  KC_DEL,  KC_RCTL +    ), +}; diff --git a/keyboards/chocv/keymaps/default/readme.md b/keyboards/chocv/keymaps/default/readme.md new file mode 100644 index 0000000000..0d9b3630ab --- /dev/null +++ b/keyboards/chocv/keymaps/default/readme.md @@ -0,0 +1,24 @@ +# chocV Keymap + +The default keymap provided here is useful for testing and as a base +for your own mapping, but does not include layers and is missing many +keycodes. To build the default keymap for testing: + +make chocv:default + +## Give Miryoku a try + +If you are looking for a full fetured keymap, you can build the  +firmware with Miryoku without any additional work + +For details and building instructions and options please see the +[The official Miryoku QMK +Repo](https://github.com/manna-harbour/miryoku_qmk/tree/miryoku/users/manna-harbour_miryoku) + +The command to build with the default Miryoku layout is: + +make chocv:manna-habour_miryoku + + + + diff --git a/keyboards/chocv/readme.md b/keyboards/chocv/readme.md new file mode 100644 index 0000000000..67bb9aad02 --- /dev/null +++ b/keyboards/chocv/readme.md @@ -0,0 +1,26 @@ +# chocV + +A 36 key choc keyboard based on the [Horizon](https://github.com/skarrmann/horizon) +construction and a trimmed down [BabyV](https://www.instagram.com/eyeohdesigns/?hl=en) layout! + + + +* Keyboard Maintainer: [Brickbots](https://github.com/brickbots) +* Hardware Supported: The chocV PCB is public domain and is compatible with any +pro-micro footprint MCU +* Hardware Availability: [The chocV github repo](https://github.com/brickbots/chocV) + +Make example for this keyboard (after setting up your build environment): + +    make chocv:default + +Flashing example for this keyboard: + +    make chocv:default:flash + +## Bootloader + +Enter the bootloader using the hardware reset button on the top middle of the +near the MCU. + +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/chocv/rules.mk b/keyboards/chocv/rules.mk new file mode 100644 index 0000000000..27b4a6282b --- /dev/null +++ b/keyboards/chocv/rules.mk @@ -0,0 +1,20 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = qmk-dfu + +# Build Options +#   change yes to no to disable +# +BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes       # Mouse keys +EXTRAKEY_ENABLE = yes       # Audio control and System control +CONSOLE_ENABLE = no         # 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 + +LAYOUTS = split_3x5_3 | 
