diff options
author | jack <0x6A73@pm.me> | 2022-08-30 01:20:05 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-30 08:20:05 +0100 |
commit | 035e7fdb8ba2e4533c809b2dfe0f15ea7116c508 (patch) | |
tree | 58f925fbd255c8f385202a7c9b512a49d4407a83 | |
parent | f3d52d8fe81da5044db4bb675ae788393d7c06a5 (diff) |
Add boardsource/lulu RP2040 support (#18200)
by waffle87
-rw-r--r-- | keyboards/boardsource/lulu/avr/info.json | 21 | ||||
-rw-r--r-- | keyboards/boardsource/lulu/avr/rules.mk | 1 | ||||
-rw-r--r-- | keyboards/boardsource/lulu/config.h | 2 | ||||
-rw-r--r-- | keyboards/boardsource/lulu/info.json | 22 | ||||
-rw-r--r-- | keyboards/boardsource/lulu/readme.md | 13 | ||||
-rw-r--r-- | keyboards/boardsource/lulu/rp2040/config.h | 11 | ||||
-rw-r--r-- | keyboards/boardsource/lulu/rp2040/halconf.h | 5 | ||||
-rw-r--r-- | keyboards/boardsource/lulu/rp2040/info.json | 17 | ||||
-rw-r--r-- | keyboards/boardsource/lulu/rp2040/mcuconf.h | 6 | ||||
-rw-r--r-- | keyboards/boardsource/lulu/rp2040/rules.mk | 2 | ||||
-rw-r--r-- | keyboards/boardsource/lulu/rules.mk | 2 |
11 files changed, 81 insertions, 21 deletions
diff --git a/keyboards/boardsource/lulu/avr/info.json b/keyboards/boardsource/lulu/avr/info.json new file mode 100644 index 0000000000..ad7eefa77f --- /dev/null +++ b/keyboards/boardsource/lulu/avr/info.json @@ -0,0 +1,21 @@ +{ + "build": { + "lto": true + }, + "development_board": "elite_c", + "matrix_pins": { + "cols": ["F6", "F7", "B1", "B3", "B2", "B6"], + "rows": ["C6", "D7", "E6", "B4", "B5"] + }, + "split": { + "soft_serial_pin": "D2" + }, + "rgblight": { + "pin": "D3" + }, + "encoder": { + "rotary": [ + { "pin_a": "F0", "pin_b": "F1" } + ] + } +} diff --git a/keyboards/boardsource/lulu/avr/rules.mk b/keyboards/boardsource/lulu/avr/rules.mk new file mode 100644 index 0000000000..6e7633bfe0 --- /dev/null +++ b/keyboards/boardsource/lulu/avr/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank diff --git a/keyboards/boardsource/lulu/config.h b/keyboards/boardsource/lulu/config.h index f96a228429..8e635a24eb 100644 --- a/keyboards/boardsource/lulu/config.h +++ b/keyboards/boardsource/lulu/config.h @@ -2,8 +2,6 @@ // SPDX-License-Identifier: GPL-2.0-or-later #pragma once -#include "config_common.h" -#define RGB_DI_PIN D3 #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 #define DRIVER_LED_TOTAL 70 #define RGB_MATRIX_SPLIT { 35, 35 } diff --git a/keyboards/boardsource/lulu/info.json b/keyboards/boardsource/lulu/info.json index 5ee5c59c1a..3418cd6e7a 100644 --- a/keyboards/boardsource/lulu/info.json +++ b/keyboards/boardsource/lulu/info.json @@ -2,11 +2,7 @@ "manufacturer": "Boardsource", "keyboard_name": "lulu", "maintainer": "waffle87", - "bootloader": "atmel-dfu", "diode_direction": "COL2ROW", - "build": { - "lto": true - }, "features": { "bootmagic": true, "extrakey": true, @@ -15,11 +11,6 @@ "rgb_matrix": true, "oled": true }, - "matrix_pins": { - "cols": ["F6", "F7", "B1", "B3", "B2", "B6"], - "rows": ["C6", "D7", "E6", "B4", "B5"] - }, - "processor": "atmega32u4", "url": "https://boardsource.xyz/projects/60de24d6847112054777bbdd", "usb": { "device_version": "1.0.0", @@ -27,16 +18,17 @@ "vid": "0x4273" }, "split": { - "enabled": true, - "soft_serial_pin": "D2" + "enabled": true }, "encoder": { - "enabled": true, - "rotary": [ - { "pin_a": "F0", "pin_b": "F1" } - ] + "enabled": true + }, + "matrix_size": { + "cols": 6, + "rows": 10 }, "rgb_matrix": { + "driver": "WS2812", "layout": [ { "flags": 2, "x": 86, "y": 55 }, { "flags": 2, "x": 51, "y": 55 }, diff --git a/keyboards/boardsource/lulu/readme.md b/keyboards/boardsource/lulu/readme.md index e7c530161b..a1c184eaac 100644 --- a/keyboards/boardsource/lulu/readme.md +++ b/keyboards/boardsource/lulu/readme.md @@ -12,13 +12,20 @@ The lulu is what the ergo community has needed for a long time, a high-end aesth Make example for this keyboard (after setting up your build environment): - make boardsource/lulu:default + make boardsource/lulu/rp2040:default + make boardsource/lulu/avr:default Flashing example for this keyboard: - make boardsource/lulu:default:flash + make boardsource/lulu/rp2040:default:flash + make boardsource/lulu/avr:default:flash -Reset keyboard by holding down top left key while you plug in the usb cable. Or by pushing the reset switch on the pcb. + +Compile `rp2040` firmware if you purchased PCB in lulu group buy (integrated microcontroller). +Compile `avr` firmware if your PCB uses a drop-in microcontroller like Pro Micro. + + +Enter bootloader by holding down the upper outer key while you plug in the usb cable, or by pushing the reset switch on the pcb. 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/boardsource/lulu/rp2040/config.h b/keyboards/boardsource/lulu/rp2040/config.h new file mode 100644 index 0000000000..2e02e03500 --- /dev/null +++ b/keyboards/boardsource/lulu/rp2040/config.h @@ -0,0 +1,11 @@ +// Copyright 2022 jack (@waffle87) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U +#define SERIAL_USART_FULL_DUPLEX +#define SERIAL_USART_TX_PIN GP0 +#define SERIAL_USART_RX_PIN GP1 +#define I2C_DRIVER I2CD2 +#define I2C1_SDA_PIN GP22 +#define I2C1_SCL_PIN GP23 diff --git a/keyboards/boardsource/lulu/rp2040/halconf.h b/keyboards/boardsource/lulu/rp2040/halconf.h new file mode 100644 index 0000000000..9b8ab5d023 --- /dev/null +++ b/keyboards/boardsource/lulu/rp2040/halconf.h @@ -0,0 +1,5 @@ +// Copyright 2022 jack (@waffle87) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once +#define HAL_USE_I2C TRUE +#include_next <halconf.h> diff --git a/keyboards/boardsource/lulu/rp2040/info.json b/keyboards/boardsource/lulu/rp2040/info.json new file mode 100644 index 0000000000..a384241944 --- /dev/null +++ b/keyboards/boardsource/lulu/rp2040/info.json @@ -0,0 +1,17 @@ +{ + "bootloader": "rp2040", + "matrix_pins": { + "cols": ["GP2", "GP3", "GP4", "GP5", "GP6", "GP7"], + "rows": ["GP14", "GP15", "GP16", "GP17", "GP18"] + }, + "processor": "RP2040", + "rgblight": { + "pin": "GP29", + "led_count": 70 + }, + "encoder": { + "rotary": [ + { "pin_a": "GP8", "pin_b": "GP9" } + ] + } +} diff --git a/keyboards/boardsource/lulu/rp2040/mcuconf.h b/keyboards/boardsource/lulu/rp2040/mcuconf.h new file mode 100644 index 0000000000..6f05b8bbe8 --- /dev/null +++ b/keyboards/boardsource/lulu/rp2040/mcuconf.h @@ -0,0 +1,6 @@ +// Copyright 2022 jack (@waffle87) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once +#include_next <mcuconf.h> +#undef RP_I2C_USE_I2C1 +#define RP_I2C_USE_I2C1 TRUE diff --git a/keyboards/boardsource/lulu/rp2040/rules.mk b/keyboards/boardsource/lulu/rp2040/rules.mk new file mode 100644 index 0000000000..8fb51ec82d --- /dev/null +++ b/keyboards/boardsource/lulu/rp2040/rules.mk @@ -0,0 +1,2 @@ +SERIAL_DRIVER = vendor +WS2812_DRIVER = vendor diff --git a/keyboards/boardsource/lulu/rules.mk b/keyboards/boardsource/lulu/rules.mk index 32afd21635..6e7633bfe0 100644 --- a/keyboards/boardsource/lulu/rules.mk +++ b/keyboards/boardsource/lulu/rules.mk @@ -1 +1 @@ -RGB_MATRIX_DRIVER = WS2812 +# This file intentionally left blank |