diff --git a/keyboards/tweetydabird/lotus58/elite_c/info.json b/keyboards/tweetydabird/lotus58/elite_c/info.json
index 606784570c..af1a9f913c 100644
--- a/keyboards/tweetydabird/lotus58/elite_c/info.json
+++ b/keyboards/tweetydabird/lotus58/elite_c/info.json
@@ -1,3 +1,32 @@
{
- "bootloader": "atmel-dfu"
+ "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"
+ },
+ "soft_serial_pin": "D2",
+ },
+ "ws2812": {
+ "pin": "D3"
+ },
}
diff --git a/keyboards/tweetydabird/lotus58/info.json b/keyboards/tweetydabird/lotus58/info.json
index 646843e765..f4660c3ad9 100644
--- a/keyboards/tweetydabird/lotus58/info.json
+++ b/keyboards/tweetydabird/lotus58/info.json
@@ -1,17 +1,9 @@
{
"manufacturer": "Tweetys Wild Thinking",
- "keyboard_name": "Lotus 58 Glow (QMK)",
+ "keyboard_name": "Lotus 58 Glow",
"maintainer": "TweetyDaBird",
"bootloader_instructions": "Short marked pads on PCB, or hold top-outer key when plugging in each hand.",
- "build": {
- "lto": true
- },
"diode_direction": "COL2ROW",
- "encoder": {
- "rotary": [
- {"pin_a": "F5", "pin_b": "F4", "resolution": 2}
- ]
- },
"features": {
"bootmagic": true,
"command": false,
@@ -25,12 +17,6 @@
"split": true,
"tri_layer": true
},
- "matrix_pins": {
- "cols": ["B1", "B2", "B3", "B6", "F7", "F6"],
- "rows": ["D4", "C6", "D7", "E6", "B4"]
- },
- "pin_compatible": "promicro",
- "processor": "atmega32u4",
"rgblight": {
"default": {
"val": 87
@@ -46,19 +32,7 @@
"matrix": [5, 0]
},
"enabled": true,
- "encoder": {
- "right": {
- "rotary": [
- {"pin_a": "F4", "pin_b": "F5", "resolution": 2}
- ]
- }
- },
- "handedness": {
- "pin": "B5"
- },
- "soft_serial_pin": "D2",
"transport": {
- "protocol": "serial",
"sync": {
"indicators": true,
"layer_state": true,
@@ -78,9 +52,6 @@
"pid": "0x23B0",
"vid": "0xFEED"
},
- "ws2812": {
- "pin": "D3"
- },
"layouts": {
"LAYOUT": {
"layout": [
diff --git a/keyboards/tweetydabird/lotus58/nanoboot/info.json b/keyboards/tweetydabird/lotus58/nanoboot/info.json
new file mode 100644
index 0000000000..e7586e6f2f
--- /dev/null
+++ b/keyboards/tweetydabird/lotus58/nanoboot/info.json
@@ -0,0 +1,32 @@
+{
+ "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"
+ },
+ "soft_serial_pin": "D2",
+ },
+ "ws2812": {
+ "pin": "D3"
+ },
+}
diff --git a/keyboards/tweetydabird/lotus58/promicro/info.json b/keyboards/tweetydabird/lotus58/promicro/info.json
index 56062f7ad3..62ee0355ef 100644
--- a/keyboards/tweetydabird/lotus58/promicro/info.json
+++ b/keyboards/tweetydabird/lotus58/promicro/info.json
@@ -1,3 +1,31 @@
{
- "bootloader": "caterina"
+ "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"
+ },
+ "soft_serial_pin": "D2",
+ },
+ "ws2812": {
+ "pin": "D3"
+ },
}
diff --git a/keyboards/tweetydabird/lotus58/rp2040_ce/config.h b/keyboards/tweetydabird/lotus58/rp2040_ce/config.h
new file mode 100644
index 0000000000..e4a23b7d7f
--- /dev/null
+++ b/keyboards/tweetydabird/lotus58/rp2040_ce/config.h
@@ -0,0 +1,9 @@
+// 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
diff --git a/keyboards/tweetydabird/lotus58/rp2040_ce/halconf.h b/keyboards/tweetydabird/lotus58/rp2040_ce/halconf.h
new file mode 100644
index 0000000000..2e098f5113
--- /dev/null
+++ b/keyboards/tweetydabird/lotus58/rp2040_ce/halconf.h
@@ -0,0 +1,21 @@
+/* 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 .
+ */
+
+#pragma once
+
+#define HAL_USE_I2C TRUE
+
+#include_next
diff --git a/keyboards/tweetydabird/lotus58/rp2040_ce/info.json b/keyboards/tweetydabird/lotus58/rp2040_ce/info.json
new file mode 100644
index 0000000000..c8bf711747
--- /dev/null
+++ b/keyboards/tweetydabird/lotus58/rp2040_ce/info.json
@@ -0,0 +1,29 @@
+{
+ "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}
+ ]
+ }
+ },
+ "soft_serial_pin": "GP1",
+ "handedness": {
+ "pin": "GP9"
+ }
+ },
+ "ws2812": {
+ "driver": "vendor",
+ "pin": "GP0"
+ }
+}
diff --git a/keyboards/tweetydabird/lotus58/rp2040_ce/mcuconf.h b/keyboards/tweetydabird/lotus58/rp2040_ce/mcuconf.h
new file mode 100644
index 0000000000..2ae39bf675
--- /dev/null
+++ b/keyboards/tweetydabird/lotus58/rp2040_ce/mcuconf.h
@@ -0,0 +1,22 @@
+/* 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 .
+ */
+
+#pragma once
+
+#include_next
+
+#undef RP_I2C_USE_I2C1
+#define RP_I2C_USE_I2C1 TRUE
diff --git a/keyboards/tweetydabird/lotus58/rp2040_ce/rules.mk b/keyboards/tweetydabird/lotus58/rp2040_ce/rules.mk
new file mode 100644
index 0000000000..161ec22b16
--- /dev/null
+++ b/keyboards/tweetydabird/lotus58/rp2040_ce/rules.mk
@@ -0,0 +1 @@
+SERIAL_DRIVER = vendor