diff options
Diffstat (limited to 'keyboards/adafruit/macropad/config.h')
| -rw-r--r-- | keyboards/adafruit/macropad/config.h | 137 | 
1 files changed, 137 insertions, 0 deletions
| diff --git a/keyboards/adafruit/macropad/config.h b/keyboards/adafruit/macropad/config.h new file mode 100644 index 0000000000..1e055e273b --- /dev/null +++ b/keyboards/adafruit/macropad/config.h @@ -0,0 +1,137 @@ +/* Copyright 2022 Jose Pablo Ramirez <[email protected]> + * + * 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" + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 3 + +#define VENDOR_ID    0x239A +#define PRODUCT_ID   0x0108 +#define DEVICE_VER   0x0001 +#define MANUFACTURER Adafruit +#define PRODUCT      Macropad RP2040 + +/* Keyboard Matrix Assignments */ +// clang-format off +#define DIRECT_PINS { \ +    { NO_PIN, NO_PIN, GP0  }, \ +    { GP1,    GP2,    GP3  }, \ +    { GP4,    GP5,    GP6  }, \ +    { GP7,    GP8,    GP9  }, \ +    { GP10,   GP11,   GP12 }  \ +} +// clang-format on + +/* OLED SPI Defines */ +#define OLED_DISPLAY_128X64 +#define OLED_IC OLED_IC_SH1106 + +/* OLED SPI Pins */ +#define OLED_DC_PIN GP24 +#define OLED_CS_PIN GP22 +#define OLED_RST_PIN GP23 + +/* Shift OLED columns by 2 pixels */ +#define OLED_COLUMN_OFFSET 2 + +/* Divisor for OLED */ +#define OLED_SPI_DIVISOR 4 + +/* ChibiOS SPI definitions */ +#define SPI_DRIVER SPID1 +#define SPI_SCK_PIN GP26 +#define SPI_MOSI_PIN GP27 +#define SPI_MISO_PIN GP28 + +/* Encoders */ +#define ENCODERS_PAD_A { GP18 } +#define ENCODERS_PAD_B { GP17 } + +#define DEBOUNCE 5 + +/* Bootmagic lite */ +/* (Press the key bellow the encoder button while plugging the keyboard to enter the bootloader and clear flash) */ +#define BOOTMAGIC_LITE_ROW 1 +#define BOOTMAGIC_LITE_COLUMN 2 + +/* Double tap the side button to enter bootloader */ +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP13 +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U + +/* Audio (Unsupported for now)*/ +// #define AUDIO_PIN GP16 +// #define SPEAKER_SHUTDOWN GP14 + +#ifdef RGB_MATRIX_ENABLE + +     /* RGB Defines */ +#    define RGB_DI_PIN GP19 +#    define DRIVER_LED_TOTAL 12 +#    define RGBLED_NUM 12 + +     /* Enable Framebuffer and keypress effects */ +#    define RGB_MATRIX_FRAMEBUFFER_EFFECTS +#    define RGB_MATRIX_KEYPRESSES + +#    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 +#    define ENABLE_RGB_MATRIX_TYPING_HEATMAP +#    define ENABLE_RGB_MATRIX_DIGITAL_RAIN +#    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 +#endif | 
