diff options
author | Charly Delay <0xcharly@users.noreply.github.com> | 2022-11-15 17:51:44 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-15 08:51:44 +0000 |
commit | 30b2dbe369b3a61d1d6681b0a689dbcdd41fc221 (patch) | |
tree | cddf4e7318c2b06d33d4b3750d2e4eb15f1d2333 /keyboards/bastardkb/skeletyl | |
parent | ee7426e7b19c25ddfc53d0b50db68a457d8f992b (diff) |
Bastard Keyboards: upstream recent changes (#18903)
* bastardkb: cleanup blackpill configuration
Fixes #17
* bastardkb: fix splinky configuration
The pinout of the splinky changed between the last beta batch, and the
production one. This commit updates the keyboard definition to support
the new pinout by default, while offering backward compatibility.
Define `SPLINKY_BETA_PINOUT` to build the firmware with pre-production
pinout.
Fixes #15
* bastardkb: add support for STeMCell
* Update scylla/tbkmini/skeletyl outdated readmes
* bastardkb/dilemma: enable circular scroll
* bastardkb/dilemma: add initial version of the `via` keymap
* bastardkb/dilemma/assembled: add new keyboard
Fixes #20
* bastardkb/dilemma: remove elite-c
* Initial support for the Dilemma 3x5+3 Assembled RGB
* Address code review comments
* Address more comments
* Address review comments
* Address more nits
* bastardkb: split splinky-based keyboards to distinguish between Splinky v2 and v3 pinout
Diffstat (limited to 'keyboards/bastardkb/skeletyl')
-rw-r--r-- | keyboards/bastardkb/skeletyl/blackpill/halconf.h | 4 | ||||
-rw-r--r-- | keyboards/bastardkb/skeletyl/blackpill/mcuconf.h | 28 | ||||
-rw-r--r-- | keyboards/bastardkb/skeletyl/readme.md | 20 | ||||
-rw-r--r-- | keyboards/bastardkb/skeletyl/v2/splinky/config.h | 2 | ||||
-rw-r--r-- | keyboards/bastardkb/skeletyl/v2/splinky/readme.md | 6 | ||||
-rw-r--r-- | keyboards/bastardkb/skeletyl/v2/splinky/v2/config.h | 22 | ||||
-rw-r--r-- | keyboards/bastardkb/skeletyl/v2/splinky/v2/rules.mk | 2 | ||||
-rw-r--r-- | keyboards/bastardkb/skeletyl/v2/splinky/v3/config.h | 22 | ||||
-rw-r--r-- | keyboards/bastardkb/skeletyl/v2/splinky/v3/rules.mk | 2 | ||||
-rw-r--r-- | keyboards/bastardkb/skeletyl/v2/stemcell/config.h | 48 | ||||
-rw-r--r-- | keyboards/bastardkb/skeletyl/v2/stemcell/halconf.h | 23 | ||||
-rw-r--r-- | keyboards/bastardkb/skeletyl/v2/stemcell/info.json | 6 | ||||
-rw-r--r-- | keyboards/bastardkb/skeletyl/v2/stemcell/mcuconf.h | 29 | ||||
-rw-r--r-- | keyboards/bastardkb/skeletyl/v2/stemcell/rules.mk | 33 |
14 files changed, 213 insertions, 34 deletions
diff --git a/keyboards/bastardkb/skeletyl/blackpill/halconf.h b/keyboards/bastardkb/skeletyl/blackpill/halconf.h index 0d4b7b5dc5..1ba700a80f 100644 --- a/keyboards/bastardkb/skeletyl/blackpill/halconf.h +++ b/keyboards/bastardkb/skeletyl/blackpill/halconf.h @@ -1,4 +1,4 @@ -/* +/** * Copyright 2020 Nick Brassel (tzarc) * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly) * @@ -20,10 +20,8 @@ #define HAL_USE_PWM TRUE #define HAL_USE_SERIAL TRUE -//#define HAL_USE_I2C TRUE #define HAL_USE_SPI TRUE #define SPI_USE_WAIT TRUE #define SPI_SELECT_MODE SPI_SELECT_MODE_PAD -#define HAL_USE_GPT TRUE #include_next <halconf.h> diff --git a/keyboards/bastardkb/skeletyl/blackpill/mcuconf.h b/keyboards/bastardkb/skeletyl/blackpill/mcuconf.h index e7cf3681fd..2b3f30cbfe 100644 --- a/keyboards/bastardkb/skeletyl/blackpill/mcuconf.h +++ b/keyboards/bastardkb/skeletyl/blackpill/mcuconf.h @@ -21,39 +21,15 @@ #include_next <mcuconf.h> -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 FALSE - -//#undef STM32_I2C_I2C1_RX_DMA_STREAM -//#define STM32_I2C_I2C1_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 0) -//#undef STM32_I2C_I2C1_TX_DMA_STREAM -//#define STM32_I2C_I2C1_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 1) - -#undef STM32_PWM_USE_TIM2 -#define STM32_PWM_USE_TIM2 TRUE - -//#undef STM32_PWM_USE_TIM3 -//#define STM32_PWM_USE_TIM3 TRUE - #undef STM32_SPI_USE_SPI1 #define STM32_SPI_USE_SPI1 TRUE -//#undef STM32_SPI_SPI1_RX_DMA_STREAM -//#define STM32_SPI_SPI1_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 0) -//#undef STM32_SPI_SPI1_TX_DMA_STREAM -//#define STM32_SPI_SPI1_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 3) +#undef STM32_PWM_USE_TIM2 +#define STM32_PWM_USE_TIM2 TRUE #undef STM32_SERIAL_USE_USART1 #define STM32_SERIAL_USE_USART1 TRUE -//#undef STM32_SERIAL_USE_USART2 -//#define STM32_SERIAL_USE_USART2 TRUE - -//#undef STM32_UART_USART2_RX_DMA_STREAM -//#define STM32_UART_USART2_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 5) -//#undef STM32_UART_USART2_TX_DMA_STREAM -//#define STM32_UART_USART2_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 6) - #undef STM32_GPT_USE_TIM3 #define STM32_GPT_USE_TIM3 TRUE diff --git a/keyboards/bastardkb/skeletyl/readme.md b/keyboards/bastardkb/skeletyl/readme.md index 6c36b58356..5a595d338f 100644 --- a/keyboards/bastardkb/skeletyl/readme.md +++ b/keyboards/bastardkb/skeletyl/readme.md @@ -6,10 +6,24 @@ A very small keyboard made for ergonomic enthusiasts. * Hardware Supported: elite-C V4 * Hardware Availability: [Bastardkb.com](https://bastardkb.com/) -Make example for this keyboard (after setting up your build environment): +## Building the firmware + +**You must specify the shield version when compiling/flashing the firmware.** + +The template is: + +```shell +qmk compile -kb bastardkb/skeletyl/{VERSION}/elitec -km {KEYMAP} +``` + +| Shield Version | default | via | +| --------------- | --------------------------------------------------------------- | ----------------------------------------------------------- | +| v1 (Elite-C) | `qmk compile -kb bastardkb/skeletyl/v1/elitec -km default` | `qmk compile -kb bastardkb/skeletyl/v1/elitec -km via` | +| v2 (Elite-C) | `qmk compile -kb bastardkb/skeletyl/v2/elitec -km default` | `qmk compile -kb bastardkb/skeletyl/v2/elitec -km via` | +| v2 (Splinky v2) | `qmk compile -kb bastardkb/skeletyl/v2/splinky/v2 -km default` | `qmk compile -kb bastardkb/skeletyl/v2/splinky/v2 -km via` | +| v2 (Splinky v3) | `qmk compile -kb bastardkb/skeletyl/v2/splinky/v3 -km default` | `qmk compile -kb bastardkb/skeletyl/v2/splinky/v3 -km via` | +| v2 (STeMCell) | `qmk compile -kb bastardkb/skeletyl/v2/stemcell -km default` | `qmk compile -kb bastardkb/skeletyl/v2/stemcell -km via` | - make bastardkb/skeletyl:default - This keyboard is made to be used with the Miryoku layout, do not use the default keymap. 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/bastardkb/skeletyl/v2/splinky/config.h b/keyboards/bastardkb/skeletyl/v2/splinky/config.h index 02a8bd6551..c4e5b3ff90 100644 --- a/keyboards/bastardkb/skeletyl/v2/splinky/config.h +++ b/keyboards/bastardkb/skeletyl/v2/splinky/config.h @@ -20,8 +20,6 @@ /* Key matrix configuration. */ #define MATRIX_ROW_PINS \ { GP26, GP5, GP4, GP9 } -#define MATRIX_COL_PINS \ - { GP28, GP15, GP6, GP7, GP8 } /* Handedness. */ #define MASTER_RIGHT diff --git a/keyboards/bastardkb/skeletyl/v2/splinky/readme.md b/keyboards/bastardkb/skeletyl/v2/splinky/readme.md new file mode 100644 index 0000000000..22df77bbaa --- /dev/null +++ b/keyboards/bastardkb/skeletyl/v2/splinky/readme.md @@ -0,0 +1,6 @@ +# Splinky controller + +The splinky is a Pro-Micro/Elite-C replacement with USB-C and RP2040. + +See https://github.com/plut0nium/0xB2/#releases to figure out the right version +for you (v2 and v3) supported. diff --git a/keyboards/bastardkb/skeletyl/v2/splinky/v2/config.h b/keyboards/bastardkb/skeletyl/v2/splinky/v2/config.h new file mode 100644 index 0000000000..ac86fa83e6 --- /dev/null +++ b/keyboards/bastardkb/skeletyl/v2/splinky/v2/config.h @@ -0,0 +1,22 @@ +/* + * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly) + * + * 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 + +/* Key matrix configuration. */ +#define MATRIX_COL_PINS \ + { GP28, GP15, GP6, GP7, GP8 } diff --git a/keyboards/bastardkb/skeletyl/v2/splinky/v2/rules.mk b/keyboards/bastardkb/skeletyl/v2/splinky/v2/rules.mk new file mode 100644 index 0000000000..c9c50319db --- /dev/null +++ b/keyboards/bastardkb/skeletyl/v2/splinky/v2/rules.mk @@ -0,0 +1,2 @@ +# Intentionally blank so that QMK detects this folder as a valid keyboard +# parameter. diff --git a/keyboards/bastardkb/skeletyl/v2/splinky/v3/config.h b/keyboards/bastardkb/skeletyl/v2/splinky/v3/config.h new file mode 100644 index 0000000000..d78a36c97f --- /dev/null +++ b/keyboards/bastardkb/skeletyl/v2/splinky/v3/config.h @@ -0,0 +1,22 @@ +/* + * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly) + * + * 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 + +/* Key matrix configuration. */ +#define MATRIX_COL_PINS \ + { GP28, GP21, GP6, GP7, GP8 } diff --git a/keyboards/bastardkb/skeletyl/v2/splinky/v3/rules.mk b/keyboards/bastardkb/skeletyl/v2/splinky/v3/rules.mk new file mode 100644 index 0000000000..c9c50319db --- /dev/null +++ b/keyboards/bastardkb/skeletyl/v2/splinky/v3/rules.mk @@ -0,0 +1,2 @@ +# Intentionally blank so that QMK detects this folder as a valid keyboard +# parameter. diff --git a/keyboards/bastardkb/skeletyl/v2/stemcell/config.h b/keyboards/bastardkb/skeletyl/v2/stemcell/config.h new file mode 100644 index 0000000000..44acd40e7b --- /dev/null +++ b/keyboards/bastardkb/skeletyl/v2/stemcell/config.h @@ -0,0 +1,48 @@ +/* + * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly) + * + * 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 + +/* Key matrix configuration. */ +#define MATRIX_ROW_PINS \ + { F7, C6, D4, B5 } +#define MATRIX_COL_PINS \ + { F5, B6, D7, E6, B4 } + +/* Handedness. */ +#define MASTER_RIGHT + +// To use the handedness pin, resistors need to be installed on the adapter PCB. +// If so, uncomment the following code, and undefine MASTER_RIGHT above. +// #define A0 PAL_LINE(GPIOA, 0) +// #define SPLIT_HAND_PIN A0 +// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left. + +/* serial.c configuration (for split keyboard). */ +#define SOFT_SERIAL_PIN D2 + +/* RGB settings. */ +#define RGB_DI_PIN D3 +#define WS2812_PWM_DRIVER PWMD2 +#define WS2812_PWM_CHANNEL 4 +#define WS2812_PWM_PAL_MODE 1 +#define WS2812_DMA_STREAM STM32_DMA1_STREAM7 +#define WS2812_DMA_CHANNEL 3 + +/* CRC. */ +#define CRC8_USE_TABLE +#define CRC8_OPTIMIZE_SPEED diff --git a/keyboards/bastardkb/skeletyl/v2/stemcell/halconf.h b/keyboards/bastardkb/skeletyl/v2/stemcell/halconf.h new file mode 100644 index 0000000000..dbeb6aeaa0 --- /dev/null +++ b/keyboards/bastardkb/skeletyl/v2/stemcell/halconf.h @@ -0,0 +1,23 @@ +/* + * Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly) + * + * 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 + +#define HAL_USE_PWM TRUE +#define HAL_USE_SERIAL TRUE + +#include_next <halconf.h> diff --git a/keyboards/bastardkb/skeletyl/v2/stemcell/info.json b/keyboards/bastardkb/skeletyl/v2/stemcell/info.json new file mode 100644 index 0000000000..df805a6229 --- /dev/null +++ b/keyboards/bastardkb/skeletyl/v2/stemcell/info.json @@ -0,0 +1,6 @@ +{ + "keyboard_name": "Skeletyl STeMCell", + "usb": { + "device_version": "2.0.0" + } +} diff --git a/keyboards/bastardkb/skeletyl/v2/stemcell/mcuconf.h b/keyboards/bastardkb/skeletyl/v2/stemcell/mcuconf.h new file mode 100644 index 0000000000..6afebade36 --- /dev/null +++ b/keyboards/bastardkb/skeletyl/v2/stemcell/mcuconf.h @@ -0,0 +1,29 @@ +/* + * Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly) + * + * 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_next <mcuconf.h> + +#undef STM32_SERIAL_USE_USART1 +#define STM32_SERIAL_USE_USART1 FALSE + +#undef STM32_PWM_USE_TIM2 +#define STM32_PWM_USE_TIM2 TRUE + +#undef STM32_ST_USE_TIMER +#define STM32_ST_USE_TIMER 5 diff --git a/keyboards/bastardkb/skeletyl/v2/stemcell/rules.mk b/keyboards/bastardkb/skeletyl/v2/stemcell/rules.mk new file mode 100644 index 0000000000..ff20b0c742 --- /dev/null +++ b/keyboards/bastardkb/skeletyl/v2/stemcell/rules.mk @@ -0,0 +1,33 @@ +# MCU name +MCU = STM32F411 + +# Bootloader selection +BOOTLOADER = stm32-dfu +CONVERT_TO = stemcell + +# 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 = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +AUDIO_SUPPORTED = no # Audio is not supported +RGB_MATRIX_SUPPORTED = yes # RGB matrix is supported and enabled by default +RGBLIGHT_SUPPORTED = yes # RGB underglow is supported, but not enabled by default +RGB_MATRIX_ENABLE = yes # Enable keyboard RGB matrix functionality +RGB_MATRIX_DRIVER = WS2812 + +SPLIT_KEYBOARD = yes +LAYOUTS = split_3x5_3 + +SERIAL_DRIVER = usart +WS2812_DRIVER = pwm + +DEBOUNCE_TYPE = asym_eager_defer_pk |