Add boardsource/lulu RP2040 support (#18200)

by waffle87
This commit is contained in:
jack 2022-08-30 01:20:05 -06:00 committed by GitHub
parent f3d52d8fe8
commit 035e7fdb8b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 81 additions and 21 deletions

View file

@ -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" }
]
}
}

View file

@ -0,0 +1 @@
# This file intentionally left blank

View file

@ -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 }

View file

@ -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 },

View file

@ -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).

View file

@ -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

View file

@ -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>

View file

@ -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" }
]
}
}

View file

@ -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

View file

@ -0,0 +1,2 @@
SERIAL_DRIVER = vendor
WS2812_DRIVER = vendor

View file

@ -1 +1 @@
RGB_MATRIX_DRIVER = WS2812
# This file intentionally left blank