Refactor tweetydabird/lotus58 (#25547)
- Update aliases accordingly - Remove unnecessary elite_c revision; an alternate bootloader or development board can easily be set by a user. The PCB is not dependant on an Elite-C pin compatible microcontroller - Remove unnecessary nanoboot revision; any user going to the trouble of using this bootloader will have no trouble manually setting the size of their bootloader - Move the promicro revision to be the "standard" for this keyboard - Remove unnecessary rp2040_ce revision; the converter feature should be used here instead
This commit is contained in:
parent
b834819a35
commit
7110708d0f
@ -2265,8 +2265,17 @@
|
|||||||
"trnthsn/s6xty5neor2": {
|
"trnthsn/s6xty5neor2": {
|
||||||
"target": "trnthsn/s6xty5neor2/stm32f103"
|
"target": "trnthsn/s6xty5neor2/stm32f103"
|
||||||
},
|
},
|
||||||
"tweetydabird/lotus58": {
|
"tweetydabird/lotus58/elite_c": {
|
||||||
"target": "tweetydabird/lotus58/promicro"
|
"target": "tweetydabird/lotus58"
|
||||||
|
},
|
||||||
|
"tweetydabird/lotus58/nanoboot": {
|
||||||
|
"target": "tweetydabird/lotus58"
|
||||||
|
},
|
||||||
|
"tweetydabird/lotus58/promicro": {
|
||||||
|
"target": "tweetydabird/lotus58"
|
||||||
|
},
|
||||||
|
"tweetydabird/lotus58/rp2040_ce": {
|
||||||
|
"target": "tweetydabird/lotus58"
|
||||||
},
|
},
|
||||||
"unison": {
|
"unison": {
|
||||||
"target": "unison/v04"
|
"target": "unison/v04"
|
||||||
|
|||||||
@ -1,34 +0,0 @@
|
|||||||
{
|
|
||||||
"build": {
|
|
||||||
"lto": true
|
|
||||||
},
|
|
||||||
"development_board": "elite_c",
|
|
||||||
"pin_compatible": "elite_c",
|
|
||||||
"encoder": {
|
|
||||||
"rotary": [
|
|
||||||
{"pin_a": "F5", "pin_b": "F4", "resolution": 2}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"matrix_pins": {
|
|
||||||
"cols": ["B1", "B2", "B3", "B6", "F7", "F6"],
|
|
||||||
"rows": ["D4", "C6", "D7", "E6", "B4"]
|
|
||||||
},
|
|
||||||
"split": {
|
|
||||||
"encoder": {
|
|
||||||
"right": {
|
|
||||||
"rotary": [
|
|
||||||
{"pin_a": "F4", "pin_b": "F5", "resolution": 2}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"handedness": {
|
|
||||||
"pin": "B5"
|
|
||||||
},
|
|
||||||
"serial": {
|
|
||||||
"pin": "D2"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"ws2812": {
|
|
||||||
"pin": "D3"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -3,7 +3,16 @@
|
|||||||
"keyboard_name": "Lotus 58 Glow",
|
"keyboard_name": "Lotus 58 Glow",
|
||||||
"maintainer": "TweetyDaBird",
|
"maintainer": "TweetyDaBird",
|
||||||
"bootloader_instructions": "Short marked pads on PCB, or hold top-outer key when plugging in each hand.",
|
"bootloader_instructions": "Short marked pads on PCB, or hold top-outer key when plugging in each hand.",
|
||||||
|
"build": {
|
||||||
|
"lto": true
|
||||||
|
},
|
||||||
|
"development_board": "promicro",
|
||||||
"diode_direction": "COL2ROW",
|
"diode_direction": "COL2ROW",
|
||||||
|
"encoder": {
|
||||||
|
"rotary": [
|
||||||
|
{"pin_a": "F5", "pin_b": "F4", "resolution": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
"features": {
|
"features": {
|
||||||
"bootmagic": true,
|
"bootmagic": true,
|
||||||
"encoder": true,
|
"encoder": true,
|
||||||
@ -11,17 +20,94 @@
|
|||||||
"mousekey": true,
|
"mousekey": true,
|
||||||
"nkro": true,
|
"nkro": true,
|
||||||
"oled": true,
|
"oled": true,
|
||||||
"rgblight": true,
|
"rgb_matrix": true,
|
||||||
"tri_layer": true
|
"tri_layer": true
|
||||||
},
|
},
|
||||||
"rgblight": {
|
"host": {
|
||||||
"default": {
|
"default": {
|
||||||
"val": 87
|
"nkro": true
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"led_count": 70,
|
"matrix_pins": {
|
||||||
|
"cols": ["B1", "B2", "B3", "B6", "F7", "F6"],
|
||||||
|
"rows": ["D4", "C6", "D7", "E6", "B4"]
|
||||||
|
},
|
||||||
|
"rgb_matrix": {
|
||||||
|
"driver": "ws2812",
|
||||||
|
"layout": [
|
||||||
|
{"matrix": [0, 5], "x": 72, "y": 4, "flags": 4},
|
||||||
|
{"x": 65, "y": 4, "flags": 2},
|
||||||
|
{"matrix": [0, 4], "x": 58, "y": 2, "flags": 4},
|
||||||
|
{"matrix": [0, 3], "x": 43, "y": 0, "flags": 4},
|
||||||
|
{"x": 36, "y": 4, "flags": 2},
|
||||||
|
{"matrix": [0, 2], "x": 29, "y": 2, "flags": 4},
|
||||||
|
{"matrix": [0, 1], "x": 14, "y": 6, "flags": 4},
|
||||||
|
{"x": 7, "y": 4, "flags": 2},
|
||||||
|
{"matrix": [0, 0], "x": 0, "y": 8, "flags": 4},
|
||||||
|
{"matrix": [1, 0], "x": 0, "y": 23, "flags": 4},
|
||||||
|
{"matrix": [1, 1], "x": 14, "y": 21, "flags": 4},
|
||||||
|
{"matrix": [1, 2], "x": 29, "y": 17, "flags": 4},
|
||||||
|
{"matrix": [1, 3], "x": 43, "y": 15, "flags": 4},
|
||||||
|
{"matrix": [1, 4], "x": 58, "y": 17, "flags": 4},
|
||||||
|
{"matrix": [1, 5], "x": 72, "y": 19, "flags": 4},
|
||||||
|
{"matrix": [2, 5], "x": 72, "y": 34, "flags": 4},
|
||||||
|
{"matrix": [2, 4], "x": 58, "y": 32, "flags": 4},
|
||||||
|
{"matrix": [2, 3], "x": 43, "y": 30, "flags": 4},
|
||||||
|
{"matrix": [2, 2], "x": 29, "y": 32, "flags": 4},
|
||||||
|
{"matrix": [2, 1], "x": 14, "y": 36, "flags": 4},
|
||||||
|
{"matrix": [2, 0], "x": 0, "y": 38, "flags": 4},
|
||||||
|
{"matrix": [3, 0], "x": 0, "y": 53, "flags": 4},
|
||||||
|
{"x": 7, "y": 52, "flags": 2},
|
||||||
|
{"matrix": [3, 1], "x": 14, "y": 51, "flags": 4},
|
||||||
|
{"matrix": [3, 2], "x": 29, "y": 47, "flags": 4},
|
||||||
|
{"matrix": [3, 3], "x": 43, "y": 45, "flags": 4},
|
||||||
|
{"matrix": [3, 4], "x": 58, "y": 47, "flags": 4},
|
||||||
|
{"matrix": [3, 5], "x": 72, "y": 49, "flags": 4},
|
||||||
|
{"x": 79, "y": 45, "flags": 2},
|
||||||
|
{"matrix": [4, 5], "x": 87, "y": 41, "flags": 4},
|
||||||
|
{"matrix": [4, 4], "x": 87, "y": 64, "flags": 4},
|
||||||
|
{"matrix": [4, 3], "x": 65, "y": 64, "flags": 4},
|
||||||
|
{"matrix": [4, 2], "x": 51, "y": 62, "flags": 4},
|
||||||
|
{"x": 43, "y": 62, "flags": 2},
|
||||||
|
{"matrix": [4, 1], "x": 36, "y": 62, "flags": 4},
|
||||||
|
{"matrix": [5, 5], "x": 152, "y": 4, "flags": 4},
|
||||||
|
{"x": 159, "y": 4, "flags": 2},
|
||||||
|
{"matrix": [5, 4], "x": 166, "y": 2, "flags": 4},
|
||||||
|
{"matrix": [5, 3], "x": 181, "y": 0, "flags": 4},
|
||||||
|
{"x": 188, "y": 4, "flags": 2},
|
||||||
|
{"matrix": [5, 2], "x": 195, "y": 2, "flags": 4},
|
||||||
|
{"matrix": [5, 1], "x": 210, "y": 6, "flags": 4},
|
||||||
|
{"x": 217, "y": 4, "flags": 2},
|
||||||
|
{"matrix": [5, 0], "x": 224, "y": 8, "flags": 4},
|
||||||
|
{"matrix": [6, 0], "x": 224, "y": 23, "flags": 4},
|
||||||
|
{"matrix": [6, 1], "x": 210, "y": 21, "flags": 4},
|
||||||
|
{"matrix": [6, 2], "x": 195, "y": 17, "flags": 4},
|
||||||
|
{"matrix": [6, 3], "x": 181, "y": 15, "flags": 4},
|
||||||
|
{"matrix": [6, 4], "x": 166, "y": 17, "flags": 4},
|
||||||
|
{"matrix": [6, 5], "x": 152, "y": 19, "flags": 4},
|
||||||
|
{"matrix": [7, 5], "x": 152, "y": 34, "flags": 4},
|
||||||
|
{"matrix": [7, 4], "x": 166, "y": 32, "flags": 4},
|
||||||
|
{"matrix": [7, 3], "x": 181, "y": 30, "flags": 4},
|
||||||
|
{"matrix": [7, 2], "x": 195, "y": 32, "flags": 4},
|
||||||
|
{"matrix": [7, 1], "x": 210, "y": 36, "flags": 4},
|
||||||
|
{"matrix": [7, 0], "x": 224, "y": 38, "flags": 4},
|
||||||
|
{"matrix": [8, 0], "x": 224, "y": 53, "flags": 4},
|
||||||
|
{"x": 217, "y": 52, "flags": 2},
|
||||||
|
{"matrix": [8, 1], "x": 210, "y": 51, "flags": 4},
|
||||||
|
{"matrix": [8, 2], "x": 195, "y": 47, "flags": 4},
|
||||||
|
{"matrix": [8, 3], "x": 181, "y": 45, "flags": 4},
|
||||||
|
{"matrix": [8, 4], "x": 166, "y": 47, "flags": 4},
|
||||||
|
{"matrix": [8, 5], "x": 152, "y": 49, "flags": 4},
|
||||||
|
{"x": 159, "y": 45, "flags": 2},
|
||||||
|
{"matrix": [9, 5], "x": 137, "y": 41, "flags": 4},
|
||||||
|
{"matrix": [9, 4], "x": 137, "y": 64, "flags": 4},
|
||||||
|
{"matrix": [9, 3], "x": 159, "y": 64, "flags": 4},
|
||||||
|
{"matrix": [9, 2], "x": 173, "y": 62, "flags": 4},
|
||||||
|
{"x": 180, "y": 62, "flags": 2},
|
||||||
|
{"matrix": [9, 1], "x": 188, "y": 62, "flags": 4}
|
||||||
|
],
|
||||||
"max_brightness": 175,
|
"max_brightness": 175,
|
||||||
"sleep": true,
|
"sleep": true,
|
||||||
"split": true,
|
|
||||||
"split_count": [35, 35]
|
"split_count": [35, 35]
|
||||||
},
|
},
|
||||||
"split": {
|
"split": {
|
||||||
@ -29,6 +115,19 @@
|
|||||||
"matrix": [5, 0]
|
"matrix": [5, 0]
|
||||||
},
|
},
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
|
"encoder": {
|
||||||
|
"right": {
|
||||||
|
"rotary": [
|
||||||
|
{"pin_a": "F4", "pin_b": "F5", "resolution": 2}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"handedness": {
|
||||||
|
"pin": "B5"
|
||||||
|
},
|
||||||
|
"serial": {
|
||||||
|
"pin": "D2"
|
||||||
|
},
|
||||||
"transport": {
|
"transport": {
|
||||||
"sync": {
|
"sync": {
|
||||||
"indicators": true,
|
"indicators": true,
|
||||||
@ -48,10 +147,8 @@
|
|||||||
"pid": "0x23B0",
|
"pid": "0x23B0",
|
||||||
"vid": "0xFEED"
|
"vid": "0xFEED"
|
||||||
},
|
},
|
||||||
"host": {
|
"ws2812": {
|
||||||
"default": {
|
"pin": "D3"
|
||||||
"nkro": true
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT": {
|
"LAYOUT": {
|
||||||
@ -1,34 +0,0 @@
|
|||||||
{
|
|
||||||
"build": {
|
|
||||||
"lto": true
|
|
||||||
},
|
|
||||||
"pin_compatible": "promicro",
|
|
||||||
"processor": "atmega32u4",
|
|
||||||
"encoder": {
|
|
||||||
"rotary": [
|
|
||||||
{"pin_a": "F5", "pin_b": "F4", "resolution": 2}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"matrix_pins": {
|
|
||||||
"cols": ["B1", "B2", "B3", "B6", "F7", "F6"],
|
|
||||||
"rows": ["D4", "C6", "D7", "E6", "B4"]
|
|
||||||
},
|
|
||||||
"split": {
|
|
||||||
"encoder": {
|
|
||||||
"right": {
|
|
||||||
"rotary": [
|
|
||||||
{"pin_a": "F4", "pin_b": "F5", "resolution": 2}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"handedness": {
|
|
||||||
"pin": "B5"
|
|
||||||
},
|
|
||||||
"serial": {
|
|
||||||
"pin": "D2"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"ws2812": {
|
|
||||||
"pin": "D3"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
BOOTLOADER = qmk-hid
|
|
||||||
BOOTLOADER_SIZE = 512
|
|
||||||
@ -1,33 +0,0 @@
|
|||||||
{
|
|
||||||
"build": {
|
|
||||||
"lto": true
|
|
||||||
},
|
|
||||||
"development_board": "promicro",
|
|
||||||
"encoder": {
|
|
||||||
"rotary": [
|
|
||||||
{"pin_a": "F5", "pin_b": "F4", "resolution": 2}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"matrix_pins": {
|
|
||||||
"cols": ["B1", "B2", "B3", "B6", "F7", "F6"],
|
|
||||||
"rows": ["D4", "C6", "D7", "E6", "B4"]
|
|
||||||
},
|
|
||||||
"split": {
|
|
||||||
"encoder": {
|
|
||||||
"right": {
|
|
||||||
"rotary": [
|
|
||||||
{"pin_a": "F4", "pin_b": "F5", "resolution": 2}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"handedness": {
|
|
||||||
"pin": "B5"
|
|
||||||
},
|
|
||||||
"serial": {
|
|
||||||
"pin": "D2"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"ws2812": {
|
|
||||||
"pin": "D3"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -9,22 +9,13 @@
|
|||||||
* Hardware Availability: [Lectronz Store](https://lectronz.com/stores/tweetys-wild-thinking)
|
* Hardware Availability: [Lectronz Store](https://lectronz.com/stores/tweetys-wild-thinking)
|
||||||
* Hardware Design: [GitHub](https://github.com/TweetyDaBird/Lotus58)
|
* Hardware Design: [GitHub](https://github.com/TweetyDaBird/Lotus58)
|
||||||
|
|
||||||
|
|
||||||
#### This keyboard firmware contains three different versions, all for the same PCB/hardware, but depending on your choice of controller/bootloader.
|
|
||||||
|
|
||||||
|
|
||||||
* promicro - This uses the default Caterina bootloader.
|
|
||||||
* elite_c - This uses the Atmel-DFU bootloader.
|
|
||||||
* nanoBoot - A tiny 512 byte bootloader giving far more usable memory for features (can be used on both Elite C and Pro Micro).
|
|
||||||
|
|
||||||
|
|
||||||
Make example for this keyboard (after setting up your build environment):
|
Make example for this keyboard (after setting up your build environment):
|
||||||
|
|
||||||
make tweetydabird/lotus58/promicro:default
|
make tweetydabird/lotus58:default
|
||||||
|
|
||||||
Flashing example for this keyboard:
|
Flashing example for this keyboard:
|
||||||
|
|
||||||
make tweetydabird/lotus58/elite_c:default:flash
|
make tweetydabird/lotus58: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).
|
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).
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +0,0 @@
|
|||||||
// Copyright 2024 Markus Knutsson (@TweetyDaBird)
|
|
||||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#define SERIAL_PIO_USE_PIO1 // Force the usage of PIO1 peripheral, by default the Serial implementation uses the PIO0 peripheral
|
|
||||||
|
|
||||||
#define I2C_DRIVER I2CD1
|
|
||||||
#define I2C1_SDA_PIN GP2
|
|
||||||
#define I2C1_SCL_PIN GP3
|
|
||||||
@ -1,21 +0,0 @@
|
|||||||
/* Copyright 2022 QMK
|
|
||||||
*
|
|
||||||
* 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_I2C TRUE
|
|
||||||
|
|
||||||
#include_next <halconf.h>
|
|
||||||
@ -1,32 +0,0 @@
|
|||||||
{
|
|
||||||
"development_board": "promicro_rp2040",
|
|
||||||
"encoder": {
|
|
||||||
"rotary": [
|
|
||||||
{"pin_a": "GP28", "pin_b": "GP29", "resolution": 2}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"matrix_pins": {
|
|
||||||
"cols": ["GP22", "GP23", "GP20", "GP21", "GP26", "GP27"],
|
|
||||||
"rows": ["GP4", "GP5", "GP6", "GP7", "GP8"]
|
|
||||||
},
|
|
||||||
"split": {
|
|
||||||
"encoder": {
|
|
||||||
"right": {
|
|
||||||
"rotary": [
|
|
||||||
{"pin_a": "GP29", "pin_b": "GP28", "resolution": 2}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"serial": {
|
|
||||||
"driver": "vendor",
|
|
||||||
"pin": "GP1"
|
|
||||||
},
|
|
||||||
"handedness": {
|
|
||||||
"pin": "GP9"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"ws2812": {
|
|
||||||
"driver": "vendor",
|
|
||||||
"pin": "GP0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,22 +0,0 @@
|
|||||||
/* Copyright 2022 QMK
|
|
||||||
*
|
|
||||||
* 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 RP_I2C_USE_I2C1
|
|
||||||
#define RP_I2C_USE_I2C1 TRUE
|
|
||||||
Loading…
x
Reference in New Issue
Block a user