From f6bbd4d2c5554b93351977933cea396db9456689 Mon Sep 17 00:00:00 2001 From: Ramiro Bou <2000719+Polsaker@users.noreply.github.com> Date: Sat, 3 Jun 2023 17:38:09 -0300 Subject: [PATCH] [Keyboard] Add Churrosoft Deck-8 (#21119) Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com> Co-authored-by: jack <0x6a73@protonmail.com> --- keyboards/churrosoft/deck8/info.json | 44 +++++++++++ .../churrosoft/deck8/keymaps/default/keymap.c | 25 +++++++ .../churrosoft/deck8/keymaps/via/keymap.c | 24 ++++++ .../churrosoft/deck8/keymaps/via/rules.mk | 1 + keyboards/churrosoft/deck8/noleds/readme.md | 27 +++++++ keyboards/churrosoft/deck8/noleds/rules.mk | 1 + keyboards/churrosoft/deck8/rgb/config.h | 74 +++++++++++++++++++ keyboards/churrosoft/deck8/rgb/info.json | 27 +++++++ keyboards/churrosoft/deck8/rgb/readme.md | 27 +++++++ keyboards/churrosoft/deck8/rgb/rules.mk | 1 + 10 files changed, 251 insertions(+) create mode 100644 keyboards/churrosoft/deck8/info.json create mode 100644 keyboards/churrosoft/deck8/keymaps/default/keymap.c create mode 100644 keyboards/churrosoft/deck8/keymaps/via/keymap.c create mode 100644 keyboards/churrosoft/deck8/keymaps/via/rules.mk create mode 100644 keyboards/churrosoft/deck8/noleds/readme.md create mode 100644 keyboards/churrosoft/deck8/noleds/rules.mk create mode 100644 keyboards/churrosoft/deck8/rgb/config.h create mode 100644 keyboards/churrosoft/deck8/rgb/info.json create mode 100644 keyboards/churrosoft/deck8/rgb/readme.md create mode 100644 keyboards/churrosoft/deck8/rgb/rules.mk diff --git a/keyboards/churrosoft/deck8/info.json b/keyboards/churrosoft/deck8/info.json new file mode 100644 index 0000000000..5dcf05fa24 --- /dev/null +++ b/keyboards/churrosoft/deck8/info.json @@ -0,0 +1,44 @@ +{ + "keyboard_name": "Deck-8", + "manufacturer": "Churrosoft", + "url": "https://churrosoft.ar/deck", + "maintainer": "Polsaker", + "usb": { + "vid": "0xCBBC", + "pid": "0xC100", + "device_version": "1.0.0" + }, + "build": { + "lto": true + }, + "features": { + "bootmagic": true, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true + + }, + "processor": "RP2040", + "bootloader": "rp2040", + "matrix_pins": { + "direct": [ + ["GP15", "GP18", "GP22", "GP24"], + ["GP13", "GP11", "GP0", "GP2"] + ] + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"x":0, "y":0, "matrix": [0, 0]}, + {"x":1, "y":0, "matrix": [0, 1]}, + {"x":2, "y":0, "matrix": [0, 2]}, + {"x":3, "y":0, "matrix": [0, 3]}, + {"x":0, "y":1, "matrix": [1, 0]}, + {"x":1, "y":1, "matrix": [1, 1]}, + {"x":2, "y":1, "matrix": [1, 2]}, + {"x":3, "y":1, "matrix": [1, 3]} + ] + } + } +} \ No newline at end of file diff --git a/keyboards/churrosoft/deck8/keymaps/default/keymap.c b/keyboards/churrosoft/deck8/keymaps/default/keymap.c new file mode 100644 index 0000000000..cc1bcea109 --- /dev/null +++ b/keyboards/churrosoft/deck8/keymaps/default/keymap.c @@ -0,0 +1,25 @@ +/* Copyright 2023 Churrosoft +* +* 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( + MEH(KC_A), MEH(KC_B), MEH(KC_C), MEH(KC_D), + MEH(KC_E), MEH(KC_F), MEH(KC_G), MEH(KC_H) + ) +}; \ No newline at end of file diff --git a/keyboards/churrosoft/deck8/keymaps/via/keymap.c b/keyboards/churrosoft/deck8/keymaps/via/keymap.c new file mode 100644 index 0000000000..2a1b10d442 --- /dev/null +++ b/keyboards/churrosoft/deck8/keymaps/via/keymap.c @@ -0,0 +1,24 @@ +/* Copyright 2023 Churrosoft +* +* 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( + MEH(KC_A), MEH(KC_B), MEH(KC_C), MEH(KC_D), + MEH(KC_E), MEH(KC_F), MEH(KC_G), MEH(KC_H) + ) +}; \ No newline at end of file diff --git a/keyboards/churrosoft/deck8/keymaps/via/rules.mk b/keyboards/churrosoft/deck8/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/churrosoft/deck8/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/churrosoft/deck8/noleds/readme.md b/keyboards/churrosoft/deck8/noleds/readme.md new file mode 100644 index 0000000000..c4e8d70c81 --- /dev/null +++ b/keyboards/churrosoft/deck8/noleds/readme.md @@ -0,0 +1,27 @@ +# Churrosoft Deck-8 (No LEDs version) + +![ChurroDeck-8](https://i.imgur.com/NNmq8hzh.png) + +A small 8-key macropad + +* Keyboard Maintainer: [Polsaker](https://github.com/Polsaker) +* Hardware Supported: ChurroDeck PCV rev. 1b, 1c and 1d +* Hardware Availability: [churrosoft.ar](https://churrosoft.ar/deck) + +Make example for this keyboard (after setting up your build environment): + + make churrosoft/deck8/noleds:default + +Flashing example for this keyboard: + + make churrosoft/deck8/noleds: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). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (the top left key) and plug in the keyboard +* **Physical reset button**: Short the `JP1` jumper in the back side of the PCB. +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available \ No newline at end of file diff --git a/keyboards/churrosoft/deck8/noleds/rules.mk b/keyboards/churrosoft/deck8/noleds/rules.mk new file mode 100644 index 0000000000..6e7633bfe0 --- /dev/null +++ b/keyboards/churrosoft/deck8/noleds/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank diff --git a/keyboards/churrosoft/deck8/rgb/config.h b/keyboards/churrosoft/deck8/rgb/config.h new file mode 100644 index 0000000000..2454c42fba --- /dev/null +++ b/keyboards/churrosoft/deck8/rgb/config.h @@ -0,0 +1,74 @@ +/* Copyright 2023 Churrosoft +* +* 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 + +#define RGB_MATRIX_LED_COUNT 8 +#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR +#define RGB_MATRIX_DEFAULT_HUE 152 +#define RGB_MATRIX_DEFAULT_SAT 232 +#define RGB_MATRIX_DEFAULT_VAL 180 +#define RGB_DISABLE_WHEN_USB_SUSPENDED + +#define RGB_MATRIX_FRAMEBUFFER_EFFECTS +#define RGB_MATRIX_KEYPRESSES + +#define ENABLE_RGB_MATRIX_SOLID_COLOR +#define ENABLE_RGB_MATRIX_ALPHAS_MODS +#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +#define ENABLE_RGB_MATRIX_BREATHING +#define ENABLE_RGB_MATRIX_BAND_SAT +#define ENABLE_RGB_MATRIX_BAND_VAL +#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT +#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +#define ENABLE_RGB_MATRIX_CYCLE_ALL +#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +#define ENABLE_RGB_MATRIX_DUAL_BEACON +#define ENABLE_RGB_MATRIX_RAINBOW_BEACON +#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +#define ENABLE_RGB_MATRIX_RAINDROPS +#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +#define ENABLE_RGB_MATRIX_HUE_BREATHING +#define ENABLE_RGB_MATRIX_HUE_PENDULUM +#define ENABLE_RGB_MATRIX_HUE_WAVE +#define ENABLE_RGB_MATRIX_PIXEL_RAIN +#define ENABLE_RGB_MATRIX_PIXEL_FLOW +#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL +// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined +#define ENABLE_RGB_MATRIX_TYPING_HEATMAP +#define ENABLE_RGB_MATRIX_DIGITAL_RAIN +// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +#define ENABLE_RGB_MATRIX_SPLASH +#define ENABLE_RGB_MATRIX_MULTISPLASH +#define ENABLE_RGB_MATRIX_SOLID_SPLASH +#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH diff --git a/keyboards/churrosoft/deck8/rgb/info.json b/keyboards/churrosoft/deck8/rgb/info.json new file mode 100644 index 0000000000..43f273be58 --- /dev/null +++ b/keyboards/churrosoft/deck8/rgb/info.json @@ -0,0 +1,27 @@ +{ + "keyboard_name": "Deck-8 RGB", + "usb": { + "pid": "0xC101" + }, + "ws2812": { + "pin": "GP17", + "driver": "vendor" + }, + "features": { + "rgb_matrix": true + }, + "rgb_matrix": { + "driver": "WS2812", + "max_brightness": 200, + "layout": [ + {"flags": 4, "matrix": [0, 0], "x": 45, "y": 21}, + {"flags": 4, "matrix": [0, 1], "x": 90, "y": 21}, + {"flags": 4, "matrix": [0, 2], "x": 135, "y": 21}, + {"flags": 4, "matrix": [0, 3], "x": 180, "y": 21}, + {"flags": 4, "matrix": [1, 0], "x": 45, "y": 42}, + {"flags": 4, "matrix": [1, 1], "x": 90, "y": 42}, + {"flags": 4, "matrix": [1, 2], "x": 135, "y": 42}, + {"flags": 4, "matrix": [1, 3], "x": 180, "y": 42} + ] + } +} \ No newline at end of file diff --git a/keyboards/churrosoft/deck8/rgb/readme.md b/keyboards/churrosoft/deck8/rgb/readme.md new file mode 100644 index 0000000000..87fe400c24 --- /dev/null +++ b/keyboards/churrosoft/deck8/rgb/readme.md @@ -0,0 +1,27 @@ +# Churrosoft Deck-8 (RGB Version) + +![ChurroDeck-8](https://i.imgur.com/NNmq8hzh.png) + +A small 8-key macropad with RGB + +* Keyboard Maintainer: [Polsaker](https://github.com/Polsaker) +* Hardware Supported: ChurroDeck PCV rev. 1b, 1c and 1d +* Hardware Availability: [churrosoft.ar](https://churrosoft.ar/deck) + +Make example for this keyboard (after setting up your build environment): + + make churrosoft/deck8/rgb:default + +Flashing example for this keyboard: + + make churrosoft/deck8/rgb: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). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (the top left key) and plug in the keyboard +* **Physical reset button**: Short the `JP1` jumper in the back side of the PCB. +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available \ No newline at end of file diff --git a/keyboards/churrosoft/deck8/rgb/rules.mk b/keyboards/churrosoft/deck8/rgb/rules.mk new file mode 100644 index 0000000000..6e7633bfe0 --- /dev/null +++ b/keyboards/churrosoft/deck8/rgb/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank