aboutsummaryrefslogtreecommitdiff
path: root/keyboards
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards')
-rw-r--r--keyboards/endgame/readme.md5
-rw-r--r--keyboards/leftover30/chconf.h9
-rw-r--r--keyboards/leftover30/config.h8
-rw-r--r--keyboards/leftover30/keyboard.json75
-rw-r--r--keyboards/leftover30/mcuconf.h8
-rw-r--r--keyboards/leftover30/readme.md5
-rw-r--r--keyboards/pseusplit/config.h19
-rw-r--r--keyboards/pseusplit/halconf.h (renamed from keyboards/leftover30/halconf.h)4
-rw-r--r--keyboards/pseusplit/keyboard.json110
-rw-r--r--keyboards/pseusplit/keymaps/default/keymap.json13
-rw-r--r--keyboards/pseusplit/keymaps/jack/keymap.c (renamed from keyboards/leftover30/keymaps/jack/keymap.c)14
-rw-r--r--keyboards/pseusplit/mcuconf.h11
-rw-r--r--keyboards/pseusplit/pseusplit.c73
-rw-r--r--keyboards/pseusplit/readme.md22
-rw-r--r--keyboards/pseusplit/rules.mk2
-rw-r--r--keyboards/sweep/config.h34
-rw-r--r--keyboards/sweep/halconf.h3
-rw-r--r--keyboards/sweep/keyboard.json273
-rw-r--r--keyboards/sweep/keymaps/jack/keymap.c48
-rw-r--r--keyboards/sweep/mcuconf.h7
-rw-r--r--keyboards/sweep/readme.md8
-rw-r--r--keyboards/sweep/rules.mk6
-rw-r--r--keyboards/sweep/sweep.c21
-rwxr-xr-xkeyboards/tornish/flash.sh8
-rw-r--r--keyboards/tornish/keyboard.json45
-rw-r--r--keyboards/tornish/keymaps/default/keymap.c42
-rw-r--r--keyboards/tornish/readme.md11
-rw-r--r--keyboards/tornish/usbasploader_atmega328p.hex140
-rw-r--r--keyboards/xyz60/keyboard.json2
29 files changed, 475 insertions, 551 deletions
diff --git a/keyboards/endgame/readme.md b/keyboards/endgame/readme.md
deleted file mode 100644
index 2c6e6f9..0000000
--- a/keyboards/endgame/readme.md
+++ /dev/null
@@ -1,5 +0,0 @@
-### endgame
-by [oldman6955](https://github.com/OldMan6955/TheEndgame2024)
-![img1]()
-![img2]()
-![img3]()
diff --git a/keyboards/leftover30/chconf.h b/keyboards/leftover30/chconf.h
deleted file mode 100644
index 3889564..0000000
--- a/keyboards/leftover30/chconf.h
+++ /dev/null
@@ -1,9 +0,0 @@
-// Copyright 2025 [email protected]
-// SPDX-License-Identifier: GPL-3.0-or-later
-#pragma once
-
-#define CH_CFG_ST_FREQUENCY 10000
-#define CH_CFG_OPTIMIZE_SPEED FALSE
-#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE
-
-#include_next <chconf.h>
diff --git a/keyboards/leftover30/config.h b/keyboards/leftover30/config.h
deleted file mode 100644
index c453ecd..0000000
--- a/keyboards/leftover30/config.h
+++ /dev/null
@@ -1,8 +0,0 @@
-// Copyright 2025 [email protected]
-// SPDX-License-Identifier: GPL-3.0-or-later
-#pragma once
-
-#define WS2812_SPI_DRIVER SPID2
-#define WS2812_SPI_MOSI_PAL_MODE 0
-#define WS2812_SPI_SCK_PIN B13
-#define WS2812_EXTERNAL_PULLUP
diff --git a/keyboards/leftover30/keyboard.json b/keyboards/leftover30/keyboard.json
deleted file mode 100644
index 0a32fff..0000000
--- a/keyboards/leftover30/keyboard.json
+++ /dev/null
@@ -1,75 +0,0 @@
-{
- "keyboard_name": "leftover30",
- "manufacturer": "jacks",
- "maintainer": "pngu.org",
- "processor": "STM32F072",
- "bootloader": "stm32-dfu",
- "diode_direction": "COL2ROW",
- "encoder": {
- "rotary": [
- {"pin_a": "B12", "pin_b": "B14"}
- ]
- },
- "features": {
- "rgblight": true,
- "encoder": true
- },
- "matrix_pins": {
- "cols": ["A15", "B9", "B8", "B7", "B6", "B5", "C14", "C15", "F1", "F0", "A1"],
- "rows": ["B3", "B4", "C13", "A5"]
- },
- "rgblight": {
- "led_count": 7
- },
- "ws2812": {
- "pin": "B15",
- "driver": "spi"
- },
- "usb": {
- "pid": "0x6C6F",
- "vid": "0x6A73",
- "device_version": "1.0.0"
- },
- "layouts": {
- "LAYOUT": {
- "layout": [
- {"matrix": [0, 0], "x": 0.5, "y": 0},
- {"matrix": [0, 1], "x": 1.5, "y": 0},
- {"matrix": [0, 2], "x": 2.5, "y": 0},
- {"matrix": [0, 3], "x": 3.5, "y": 0},
- {"matrix": [0, 4], "x": 4.5, "y": 0},
- {"matrix": [0, 5], "x": 5.5, "y": 0},
- {"matrix": [0, 6], "x": 6.5, "y": 0},
- {"matrix": [0, 7], "x": 7.5, "y": 0},
- {"matrix": [0, 8], "x": 8.5, "y": 0},
- {"matrix": [0, 9], "x": 9.5, "y": 0},
- {"matrix": [0, 10], "x": 10.5, "y": 0},
- {"matrix": [1, 0], "x": 0.75, "y": 1},
- {"matrix": [1, 1], "x": 1.75, "y": 1},
- {"matrix": [1, 2], "x": 2.75, "y": 1},
- {"matrix": [1, 3], "x": 3.75, "y": 1},
- {"matrix": [1, 4], "x": 4.75, "y": 1},
- {"matrix": [1, 5], "x": 5.75, "y": 1},
- {"matrix": [1, 6], "x": 6.75, "y": 1},
- {"matrix": [1, 7], "x": 7.75, "y": 1},
- {"matrix": [1, 8], "x": 8.75, "y": 1},
- {"matrix": [1, 10], "x": 9.75, "y": 1, "w": 1.75},
- {"matrix": [2, 0], "x": 1, "y": 2},
- {"matrix": [2, 1], "x": 2, "y": 2},
- {"matrix": [2, 2], "x": 3, "y": 2},
- {"matrix": [2, 3], "x": 4, "y": 2},
- {"matrix": [2, 4], "x": 5, "y": 2},
- {"matrix": [2, 5], "x": 6, "y": 2},
- {"matrix": [2, 6], "x": 7, "y": 2},
- {"matrix": [2, 7], "x": 8, "y": 2},
- {"matrix": [2, 8], "x": 9, "y": 2},
- {"matrix": [2, 9], "x": 10, "y": 2, "w": 1.25},
- {"matrix": [3, 0], "x": 0, "y": 3},
- {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 1.25},
- {"matrix": [3, 5], "x": 2.5, "y": 3, "w": 6.25},
- {"matrix": [3, 8], "x": 8.75, "y": 3},
- {"matrix": [3, 9], "x": 9.75, "y": 3, "w": 1.5}
- ]
- }
- }
-}
diff --git a/keyboards/leftover30/mcuconf.h b/keyboards/leftover30/mcuconf.h
deleted file mode 100644
index ec84251..0000000
--- a/keyboards/leftover30/mcuconf.h
+++ /dev/null
@@ -1,8 +0,0 @@
-// Copyright 2025 [email protected]
-// SPDX-License-Identifier: GPL-3.0-or-later
-#pragma once
-
-#include_next <mcuconf.h>
-
-#undef STM32_SPI_USE_SPI2
-#define STM32_SPI_USE_SPI2 TRUE
diff --git a/keyboards/leftover30/readme.md b/keyboards/leftover30/readme.md
deleted file mode 100644
index d6ce8e1..0000000
--- a/keyboards/leftover30/readme.md
+++ /dev/null
@@ -1,5 +0,0 @@
-### leftover30
-originally designed by [marksard](https://github.com/marksard/Keyboards/tree/master/leftover30), but the pcb seems to be mia...\
-(arm) pcb redesigned by [tominabox1](https://github.com/tominabox1) with a somewhat jank case from p3d.
-![front](https://i.imgur.com/O6vY5om.jpeg)
-![back](https://i.imgur.com/on9pBoA.jpeg)
diff --git a/keyboards/pseusplit/config.h b/keyboards/pseusplit/config.h
new file mode 100644
index 0000000..16bd734
--- /dev/null
+++ b/keyboards/pseusplit/config.h
@@ -0,0 +1,19 @@
+// Copyright 2025 [email protected]
+// SPDX-License-Identifier: GPL-2.0-or-later
+#pragma once
+
+#define AZOTEQ_IQS5XX_TPS43
+
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+
+#define SPI_DRIVER SPID1
+#define SPI_SCK_PIN B3
+#define SPI_MOSI_PIN B5
+#define SPI_MISO_PIN B4
+
+#define LCD_DC_PIN D1
+#define LCD_CS_PIN D3
+#define LCD_RST_PIN D2
+#define LCD_SPI_DIVISOR 4
+#define ST7789_HEIGHT 240
+#define ST7789_WIDTH 240
diff --git a/keyboards/leftover30/halconf.h b/keyboards/pseusplit/halconf.h
index bfed83f..7470f67 100644
--- a/keyboards/leftover30/halconf.h
+++ b/keyboards/pseusplit/halconf.h
@@ -1,7 +1,9 @@
// Copyright 2025 [email protected]
-// SPDX-License-Identifier: GPL-3.0-or-later
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
+#define HAL_USE_I2C TRUE
+
#define HAL_USE_SPI TRUE
#include_next <halconf.h>
diff --git a/keyboards/pseusplit/keyboard.json b/keyboards/pseusplit/keyboard.json
new file mode 100644
index 0000000..000c680
--- /dev/null
+++ b/keyboards/pseusplit/keyboard.json
@@ -0,0 +1,110 @@
+{
+ "manufacturer": "pngu.org",
+ "keyboard_name": "pseusplit",
+ "maintainer": "jack",
+ "bootloader": "stm32-dfu",
+ "diode_direction": "COL2ROW",
+ "features": {
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "pointing_device": true,
+ "quantum_painter": false,
+ "rgb_matrix": true
+ },
+ "matrix_pins": {
+ "cols": ["C15", "C14", "C13", "B9", "B8", "A9", "A8", "B15", "B14", "B13"],
+ "rows": ["F1", "F0", "A10", "A15"]
+ },
+ "processor": "STM32G0B1",
+ "rgb_matrix": {
+ "driver": "is31fl3733",
+ "layout": [
+ { "matrix": [0, 0], "x": 0, "y": 0, "flags": 4 },
+ { "matrix": [0, 1], "x": 25, "y": 0, "flags": 4 },
+ { "matrix": [0, 2], "x": 50, "y": 0, "flags": 4 },
+ { "matrix": [0, 3], "x": 75, "y": 0, "flags": 4 },
+ { "matrix": [0, 4], "x": 100, "y": 0, "flags": 4 },
+ { "matrix": [0, 5], "x": 125, "y": 0, "flags": 4 },
+ { "matrix": [0, 6], "x": 150, "y": 0, "flags": 4 },
+ { "matrix": [0, 7], "x": 175, "y": 0, "flags": 4 },
+ { "matrix": [0, 8], "x": 200, "y": 0, "flags": 4 },
+ { "matrix": [0, 9], "x": 224, "y": 0, "flags": 4 },
+ { "matrix": [1, 0], "x": 0, "y": 21, "flags": 4 },
+ { "matrix": [1, 1], "x": 25, "y": 21, "flags": 4 },
+ { "matrix": [1, 2], "x": 50, "y": 21, "flags": 4 },
+ { "matrix": [1, 3], "x": 75, "y": 21, "flags": 4 },
+ { "matrix": [1, 4], "x": 100, "y": 21, "flags": 4 },
+ { "matrix": [1, 5], "x": 125, "y": 21, "flags": 4 },
+ { "matrix": [1, 6], "x": 150, "y": 21, "flags": 4 },
+ { "matrix": [1, 7], "x": 175, "y": 21, "flags": 4 },
+ { "matrix": [1, 8], "x": 200, "y": 21, "flags": 4 },
+ { "matrix": [1, 9], "x": 224, "y": 21, "flags": 4 },
+ { "matrix": [2, 0], "x": 0, "y": 42, "flags": 4 },
+ { "matrix": [2, 1], "x": 25, "y": 42, "flags": 4 },
+ { "matrix": [2, 2], "x": 50, "y": 42, "flags": 4 },
+ { "matrix": [2, 3], "x": 75, "y": 42, "flags": 4 },
+ { "matrix": [2, 4], "x": 100, "y": 42, "flags": 4 },
+ { "matrix": [2, 5], "x": 125, "y": 42, "flags": 4 },
+ { "matrix": [2, 6], "x": 150, "y": 42, "flags": 4 },
+ { "matrix": [2, 7], "x": 175, "y": 42, "flags": 4 },
+ { "matrix": [2, 8], "x": 200, "y": 42, "flags": 4 },
+ { "matrix": [2, 9], "x": 224, "y": 42, "flags": 4 },
+ { "matrix": [3, 2], "x": 50, "y": 64, "flags": 4 },
+ { "matrix": [3, 3], "x": 75, "y": 64, "flags": 4 },
+ { "matrix": [3, 4], "x": 100, "y": 64, "flags": 4 },
+ { "matrix": [3, 5], "x": 125, "y": 64, "flags": 4 },
+ { "matrix": [3, 6], "x": 150, "y": 64, "flags": 4 },
+ { "matrix": [3, 7], "x": 175, "y": 64, "flags": 4 }
+ ]
+ },
+ "url": "https://git.pngu.org/pseusplit",
+ "usb": {
+ "device_version": "1.0.0",
+ "pid": "0x7073",
+ "vid": "0x6A73"
+ },
+ "layouts": {
+ "LAYOUT": {
+ "layout": [
+ { "matrix": [0, 0], "x": 0, "y": 0 },
+ { "matrix": [0, 1], "x": 1, "y": 0 },
+ { "matrix": [0, 2], "x": 2, "y": 0 },
+ { "matrix": [0, 3], "x": 3, "y": 0 },
+ { "matrix": [0, 4], "x": 4, "y": 0 },
+ { "matrix": [0, 5], "x": 5, "y": 0 },
+ { "matrix": [0, 6], "x": 6, "y": 0 },
+ { "matrix": [0, 7], "x": 7, "y": 0 },
+ { "matrix": [0, 8], "x": 8, "y": 0 },
+ { "matrix": [0, 9], "x": 9, "y": 0 },
+ { "matrix": [1, 0], "x": 0, "y": 1 },
+ { "matrix": [1, 1], "x": 1, "y": 1 },
+ { "matrix": [1, 2], "x": 2, "y": 1 },
+ { "matrix": [1, 3], "x": 3, "y": 1 },
+ { "matrix": [1, 4], "x": 4, "y": 1 },
+ { "matrix": [1, 5], "x": 5, "y": 1 },
+ { "matrix": [1, 6], "x": 6, "y": 1 },
+ { "matrix": [1, 7], "x": 7, "y": 1 },
+ { "matrix": [1, 8], "x": 8, "y": 1 },
+ { "matrix": [1, 9], "x": 9, "y": 1 },
+ { "matrix": [2, 0], "x": 0, "y": 2 },
+ { "matrix": [2, 1], "x": 1, "y": 2 },
+ { "matrix": [2, 2], "x": 2, "y": 2 },
+ { "matrix": [2, 3], "x": 3, "y": 2 },
+ { "matrix": [2, 4], "x": 4, "y": 2 },
+ { "matrix": [2, 5], "x": 5, "y": 2 },
+ { "matrix": [2, 6], "x": 6, "y": 2 },
+ { "matrix": [2, 7], "x": 7, "y": 2 },
+ { "matrix": [2, 8], "x": 8, "y": 2 },
+ { "matrix": [2, 9], "x": 9, "y": 2 },
+ { "matrix": [3, 2], "x": 2, "y": 3 },
+ { "matrix": [3, 3], "x": 3, "y": 3 },
+ { "matrix": [3, 4], "x": 4, "y": 3 },
+ { "matrix": [3, 5], "x": 5, "y": 3 },
+ { "matrix": [3, 6], "x": 6, "y": 3 },
+ { "matrix": [3, 7], "x": 7, "y": 3 }
+ ]
+ }
+ }
+}
diff --git a/keyboards/pseusplit/keymaps/default/keymap.json b/keyboards/pseusplit/keymaps/default/keymap.json
new file mode 100644
index 0000000..d697741
--- /dev/null
+++ b/keyboards/pseusplit/keymaps/default/keymap.json
@@ -0,0 +1,13 @@
+{
+ "keyboard": "pseusplit",
+ "keymap": "default",
+ "layout": "LAYOUT",
+ "layers": [
+ [
+ "KC_Q", "KC_W", "KC_E", "KC_R", "KC_T", "KC_Y", "KC_U", "KC_I", "KC_O", "KC_P",
+ "KC_A", "KC_S", "KC_D", "KC_F", "KC_G", "KC_H", "KC_J", "KC_K", "KC_L", "KC_SCLN",
+ "KC_Z", "KC_X", "KC_C", "KC_V", "KC_B", "KC_N", "KC_M", "KC_COMM", "KC_DOT", "KC_SLSH",
+ "KC_ESC", "KC_BSPC", "KC_TAB", "KC_SPC", "KC_ENT", "KC_CAPS"
+ ]
+ ]
+}
diff --git a/keyboards/leftover30/keymaps/jack/keymap.c b/keyboards/pseusplit/keymaps/jack/keymap.c
index f0446ce..1a9c5cb 100644
--- a/keyboards/leftover30/keymaps/jack/keymap.c
+++ b/keyboards/pseusplit/keymaps/jack/keymap.c
@@ -5,22 +5,22 @@
// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_jack(
- ___BASE1___, KC_BSPC,
+ ___BASE1___,
___BASE2___,
- ___BASE3___,
- KC_MPLY, XXXXXXX, LWRSPC, PSTRSE, XXXXXXX
+ ___BASE3___,
+ ___BASE4___
),
[_LOWER] = LAYOUT_jack(
- ___LOWER1___, _______,
+ ___LOWER1___,
___LOWER2___,
___LOWER3___,
- _______, _______, _______, _______, _______,
+ ___LOWER4___
),
[_RAISE] = LAYOUT_jack(
- ___RAISE1___, _______,
+ ___RAISE1___,
___RAISE2___,
___RAISE3___,
- _______, _______, _______, _______, _______,
+ ___RAISE4___
)
};
// clang-format on
diff --git a/keyboards/pseusplit/mcuconf.h b/keyboards/pseusplit/mcuconf.h
new file mode 100644
index 0000000..f600857
--- /dev/null
+++ b/keyboards/pseusplit/mcuconf.h
@@ -0,0 +1,11 @@
+// Copyright 2025 [email protected]
+// SPDX-License-Identifier: GPL-2.0-or-later
+#pragma once
+
+#include_next <mcuconf.h>
+
+#undef STM32_I2C_USE_I2C1
+#define STM32_I2C_USE_I2C1 TRUE
+
+#undef STM32_SPI_USE_SPI1
+#define STM32_SPI_USE_SPI1 TRUE
diff --git a/keyboards/pseusplit/pseusplit.c b/keyboards/pseusplit/pseusplit.c
new file mode 100644
index 0000000..1281783
--- /dev/null
+++ b/keyboards/pseusplit/pseusplit.c
@@ -0,0 +1,73 @@
+// Copyright 2025 [email protected]
+// SPDX-License-Identifier: GPL-2.0-or-later
+#include "quantum.h"
+
+#if defined(QUANTUM_PAINTER_ENABLE) && defined(POINTING_DEVICE_ENABLE)
+#error "Cannot enable both Quantum Painter and Pointing Device"
+#endif
+
+#ifdef QUANTUM_PAINTER_ENABLE
+#include "qp.h"
+static painter_device_t display;
+
+void keyboard_post_init_kb(void) {
+ display =
+ qp_st7789_make_spi_device(ST7789_HEIGHT, ST7789_WIDTH, LCD_CS_PIN,
+ LCD_DC_PIN, LCD_RST_PIN, LCD_SPI_DIVISOR, 0);
+ qp_init(display, QP_ROTATION_0);
+ keyboard_post_init_user();
+}
+
+void suspend_power_down_kb(void) {
+ qp_power(display, false);
+ suspend_power_down_user();
+}
+
+void suspend_wakeup_init_kb(void) {
+ qp_power(display, true);
+ suspend_wakeup_init_user();
+}
+#endif // QUANTUM_PAINTER_ENABLE
+
+#ifdef RGB_MATRIX_ENABLE
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
+ // clang-format off
+ {0, SW2_CS1, SW3_CS1, SW1_CS1},
+ {0, SW2_CS2, SW3_CS2, SW1_CS2},
+ {0, SW2_CS3, SW3_CS3, SW1_CS3},
+ {0, SW2_CS4, SW3_CS4, SW1_CS4},
+ {0, SW2_CS5, SW3_CS5, SW1_CS5},
+ {0, SW2_CS6, SW3_CS6, SW1_CS6},
+ {0, SW2_CS7, SW3_CS7, SW1_CS7},
+ {0, SW2_CS8, SW3_CS8, SW1_CS8},
+ {0, SW2_CS9, SW3_CS9, SW1_CS9},
+ {0, SW2_CS10, SW3_CS10, SW1_CS10},
+ {0, SW5_CS1, SW6_CS1, SW4_CS1},
+ {0, SW5_CS2, SW6_CS2, SW4_CS2},
+ {0, SW5_CS3, SW6_CS3, SW4_CS3},
+ {0, SW5_CS4, SW6_CS4, SW4_CS4},
+ {0, SW5_CS5, SW6_CS5, SW4_CS5},
+ {0, SW5_CS6, SW6_CS6, SW4_CS6},
+ {0, SW5_CS7, SW6_CS7, SW4_CS7},
+ {0, SW5_CS8, SW6_CS8, SW4_CS8},
+ {0, SW5_CS9, SW6_CS9, SW4_CS9},
+ {0, SW5_CS10, SW6_CS10, SW4_CS10},
+ {0, SW8_CS1, SW9_CS1, SW7_CS1},
+ {0, SW8_CS2, SW9_CS2, SW7_CS2},
+ {0, SW8_CS3, SW9_CS3, SW7_CS3},
+ {0, SW8_CS4, SW9_CS4, SW7_CS4},
+ {0, SW8_CS5, SW9_CS5, SW7_CS5},
+ {0, SW8_CS6, SW9_CS6, SW7_CS6},
+ {0, SW8_CS7, SW9_CS7, SW7_CS7},
+ {0, SW8_CS8, SW9_CS8, SW7_CS8},
+ {0, SW8_CS9, SW9_CS9, SW7_CS9},
+ {0, SW8_CS10, SW9_CS10, SW7_CS10},
+ {0, SW10_CS3, SW12_CS3, SW10_CS3},
+ {0, SW10_CS4, SW12_CS4, SW10_CS4},
+ {0, SW10_CS5, SW12_CS5, SW10_CS5},
+ {0, SW10_CS6, SW12_CS6, SW10_CS6},
+ {0, SW10_CS7, SW12_CS7, SW10_CS7},
+ {0, SW10_CS8, SW12_CS8, SW10_CS8},
+ // clang-format on
+};
+#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/pseusplit/readme.md b/keyboards/pseusplit/readme.md
new file mode 100644
index 0000000..8d55876
--- /dev/null
+++ b/keyboards/pseusplit/readme.md
@@ -0,0 +1,22 @@
+# Pseusplit
+
+* Keyboard Maintainer: [Jack Sangdahl](https://github.com/waffle87)
+* Hardware Supported: PCBs with integrated STM32G0B1 microcontroller
+* Hardware Availability: [git/pseusplit](https://git.pngu.org/pseusplit)
+
+Make example for this keyboard (after setting up your build environment):
+
+ make pseusplit:default
+
+Flashing example for this keyboard:
+
+ make pseusplit: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).
+
+## Bootloader
+
+Enter the bootloader in 3 ways:
+
+* **Bootmagic reset**: Hold down the key at (0,0) in the matrix
+* **Physical reset button**: Briefly press the button on the back of the PCB
diff --git a/keyboards/pseusplit/rules.mk b/keyboards/pseusplit/rules.mk
new file mode 100644
index 0000000..fa4968a
--- /dev/null
+++ b/keyboards/pseusplit/rules.mk
@@ -0,0 +1,2 @@
+POINTING_DEVICE_DRIVER = azoteq_iqs5xx
+QUANTUM_PAINTER_DRIVERS += st7789_spi
diff --git a/keyboards/sweep/config.h b/keyboards/sweep/config.h
index 51edc09..a172b9d 100644
--- a/keyboards/sweep/config.h
+++ b/keyboards/sweep/config.h
@@ -8,32 +8,22 @@
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
-#ifdef HAL_USE_SPI
#define SPI_DRIVER SPID0
#define SPI_SCK_PIN GP6
#define SPI_MOSI_PIN GP3
-#define SPI_MISO_PIN GP5
-#endif
+#define SPI_MISO_PIN GP4
-#ifdef QUANTUM_PAINTER_ENABLE
-#define LS0XX_CS_PIN GP7
-#define LS0XX_DISPLAY_HEIGHT 160
-#define LS0XX_DISPLAY_WIDTH 68
+#define LCD_CS_PIN GP5
+#define LCD_DC_PIN GP6
+#define LCD_RST_PIN GP28
+#define LCD_DISPLAY_WIDTH 135
+#define LCD_DISPLAY_HEIGHT 240
#define LCD_SPI_DIVISOR 4
-#endif
-#ifdef POINTING_DEVICE_ENABLE
-#define POINTING_DEVICE_CS_PIN GP4
-#define CIRQUE_PINNACLE_CURVED_OVERLAY
-#define CIRQUE_PINNACLE_TAP_ENABLE
-#define CIRQUE_PINNACLE_SECONDARY_TAP_ENABLE
-#define CIRQUE_PINNACLE_DIAMETER_MM 35
-#define SPLIT_POINTING_ENABLE
-#define POINTING_DEVICE_RIGHT
-#endif
+#define BACKLIGHT_PWM_DRIVER PWMD3
+#define BACKLIGHT_PWM_CHANNEL 2
-#ifdef HAL_USE_I2C
-#define I2C_DRIVER I2CD1
-#define I2C1_SDA_PIN GP3
-#define I2C1_SCL_PIN GP6
-#endif
+#define ADC_RESOLUTION 12
+#define ADC_SATURATION ((1 << 12) - 1)
+#define ADC_CURRENT_PIN GP26
+#define ADC_VOLTAGE_PIN GP27
diff --git a/keyboards/sweep/halconf.h b/keyboards/sweep/halconf.h
index a6c11ab..f47c7d4 100644
--- a/keyboards/sweep/halconf.h
+++ b/keyboards/sweep/halconf.h
@@ -2,7 +2,8 @@
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
+#define HAL_USE_ADC TRUE
#define HAL_USE_SPI TRUE
-#define HAL_USE_I2C FALSE
+#define HAL_USE_PWM TRUE
#include_next <halconf.h>
diff --git a/keyboards/sweep/keyboard.json b/keyboards/sweep/keyboard.json
index d625fc9..2e7ef33 100644
--- a/keyboards/sweep/keyboard.json
+++ b/keyboards/sweep/keyboard.json
@@ -1,143 +1,146 @@
{
- "manufacturer": "pngu.org",
- "keyboard_name": "sweep",
- "maintainer": "jack",
- "bootloader": "rp2040",
- "features": {
- "bootmagic": true,
- "oled": false,
- "pointing_device": true,
- "quantum_painter": true,
- "rgb_matrix": true
+ "manufacturer": "pngu.org",
+ "keyboard_name": "sweep",
+ "maintainer": "jack",
+ "bootloader": "rp2040",
+ "features": {
+ "backlight": true,
+ "bootmagic": true,
+ "quantum_painter": true,
+ "rgb_matrix": true
+ },
+ "backlight": {
+ "pin": "GP7"
+ },
+ "matrix_pins": {
+ "direct": [
+ ["GP18", "GP13", "GP12", "GP24", "GP22"],
+ ["GP16", "GP14", "GP10", "GP25", "GP21"],
+ ["GP17", "GP15", "GP11", "GP9", "GP23"],
+ [null, null, null, "GP19", "GP20"]
+ ]
+ },
+ "processor": "RP2040",
+ "rgb_matrix": {
+ "driver": "ws2812",
+ "layout": [
+ { "matrix": [3, 3], "x": 71, "y": 60, "flags": 4 },
+ { "matrix": [3, 4], "x": 92, "y": 64, "flags": 4 },
+ { "matrix": [2, 4], "x": 81, "y": 39, "flags": 4 },
+ { "matrix": [2, 3], "x": 61, "y": 36, "flags": 4 },
+ { "matrix": [2, 2], "x": 41, "y": 32, "flags": 4 },
+ { "matrix": [2, 1], "x": 20, "y": 37, "flags": 4 },
+ { "matrix": [2, 0], "x": 0, "y": 47, "flags": 4 },
+ { "matrix": [1, 0], "x": 0, "y": 31, "flags": 4 },
+ { "matrix": [1, 1], "x": 20, "y": 21, "flags": 4 },
+ { "matrix": [1, 2], "x": 41, "y": 16, "flags": 4 },
+ { "matrix": [1, 3], "x": 61, "y": 20, "flags": 4 },
+ { "matrix": [1, 4], "x": 81, "y": 23, "flags": 4 },
+ { "matrix": [0, 4], "x": 81, "y": 7, "flags": 4 },
+ { "matrix": [0, 3], "x": 61, "y": 4, "flags": 4 },
+ { "matrix": [0, 2], "x": 41, "y": 0, "flags": 4 },
+ { "matrix": [0, 1], "x": 20, "y": 5, "flags": 4 },
+ { "matrix": [0, 0], "x": 0, "y": 15, "flags": 4 },
+ { "x": 10, "y": 14, "flags": 2 },
+ { "x": 71, "y": 6, "flags": 2 },
+ { "x": 83, "y": 56, "flags": 2 },
+ { "x": 10, "y": 45, "flags": 2 },
+ { "matrix": [7, 1], "x": 132, "y": 64, "flags": 4 },
+ { "matrix": [7, 0], "x": 153, "y": 60, "flags": 4 },
+ { "matrix": [6, 0], "x": 143, "y": 39, "flags": 4 },
+ { "matrix": [6, 1], "x": 163, "y": 36, "flags": 4 },
+ { "matrix": [6, 2], "x": 183, "y": 32, "flags": 4 },
+ { "matrix": [6, 3], "x": 204, "y": 37, "flags": 4 },
+ { "matrix": [6, 4], "x": 224, "y": 47, "flags": 4 },
+ { "matrix": [5, 4], "x": 224, "y": 31, "flags": 4 },
+ { "matrix": [5, 3], "x": 204, "y": 21, "flags": 4 },
+ { "matrix": [5, 2], "x": 183, "y": 16, "flags": 4 },
+ { "matrix": [5, 1], "x": 163, "y": 20, "flags": 4 },
+ { "matrix": [5, 0], "x": 143, "y": 23, "flags": 4 },
+ { "matrix": [4, 0], "x": 143, "y": 7, "flags": 4 },
+ { "matrix": [4, 1], "x": 163, "y": 4, "flags": 4 },
+ { "matrix": [4, 2], "x": 183, "y": 0, "flags": 4 },
+ { "matrix": [4, 3], "x": 204, "y": 5, "flags": 4 },
+ { "matrix": [4, 4], "x": 224, "y": 15, "flags": 4 },
+ { "x": 214, "y": 14, "flags": 2 },
+ { "x": 153, "y": 6, "flags": 2 },
+ { "x": 144, "y": 56, "flags": 2 },
+ { "x": 214, "y": 45, "flags": 2 }
+ ],
+ "split_count": [21, 21],
+ "sleep": true
+ },
+ "split": {
+ "enabled": true,
+ "handedness": {
+ "pin": "GP8"
},
"matrix_pins": {
+ "right": {
"direct": [
- ["GP18", "GP13", "GP12", "GP24", "GP22"],
- ["GP16", "GP14", "GP10", "GP25", "GP21"],
- ["GP17", "GP15", "GP11", "GP9", "GP23"],
- [null, null, null, "GP19", "GP20"]
+ ["GP25", "GP21", "GP17", "GP16", "GP13"],
+ ["GP24", "GP20", "GP18", "GP15", "GP12"],
+ ["GP22", "GP23", "GP19", "GP14", "GP11"],
+ ["GP10", "GP9", null, null, null]
]
+ }
},
- "processor": "RP2040",
- "rgb_matrix": {
- "driver": "ws2812",
- "layout": [
- {"matrix": [3, 3], "x": 71, "y": 60, "flags": 4},
- {"matrix": [3, 4], "x": 92, "y": 64, "flags": 4},
- {"matrix": [2, 4], "x": 81, "y": 39, "flags": 4},
- {"matrix": [2, 3], "x": 61, "y": 36, "flags": 4},
- {"matrix": [2, 2], "x": 41, "y": 32, "flags": 4},
- {"matrix": [2, 1], "x": 20, "y": 37, "flags": 4},
- {"matrix": [2, 0], "x": 0, "y": 47, "flags": 4},
- {"matrix": [1, 0], "x": 0, "y": 31, "flags": 4},
- {"matrix": [1, 1], "x": 20, "y": 21, "flags": 4},
- {"matrix": [1, 2], "x": 41, "y": 16, "flags": 4},
- {"matrix": [1, 3], "x": 61, "y": 20, "flags": 4},
- {"matrix": [1, 4], "x": 81, "y": 23, "flags": 4},
- {"matrix": [0, 4], "x": 81, "y": 7, "flags": 4},
- {"matrix": [0, 3], "x": 61, "y": 4, "flags": 4},
- {"matrix": [0, 2], "x": 41, "y": 0, "flags": 4},
- {"matrix": [0, 1], "x": 20, "y": 5, "flags": 4},
- {"matrix": [0, 0], "x": 0, "y": 15, "flags": 4},
- {"x": 10, "y": 14, "flags": 2},
- {"x": 71, "y": 6, "flags": 2},
- {"x": 83, "y": 56, "flags": 2},
- {"x": 10, "y": 45, "flags": 2},
- {"matrix": [7, 1], "x": 132, "y": 64, "flags": 4},
- {"matrix": [7, 0], "x": 153, "y": 60, "flags": 4},
- {"matrix": [6, 0], "x": 143, "y": 39, "flags": 4},
- {"matrix": [6, 1], "x": 163, "y": 36, "flags": 4},
- {"matrix": [6, 2], "x": 183, "y": 32, "flags": 4},
- {"matrix": [6, 3], "x": 204, "y": 37, "flags": 4},
- {"matrix": [6, 4], "x": 224, "y": 47, "flags": 4},
- {"matrix": [5, 4], "x": 224, "y": 31, "flags": 4},
- {"matrix": [5, 3], "x": 204, "y": 21, "flags": 4},
- {"matrix": [5, 2], "x": 183, "y": 16, "flags": 4},
- {"matrix": [5, 1], "x": 163, "y": 20, "flags": 4},
- {"matrix": [5, 0], "x": 143, "y": 23, "flags": 4},
- {"matrix": [4, 0], "x": 143, "y": 7, "flags": 4},
- {"matrix": [4, 1], "x": 163, "y": 4, "flags": 4},
- {"matrix": [4, 2], "x": 183, "y": 0, "flags": 4},
- {"matrix": [4, 3], "x": 204, "y": 5, "flags": 4},
- {"matrix": [4, 4], "x": 224, "y": 15, "flags": 4},
- {"x": 214, "y": 14, "flags": 2},
- {"x": 153, "y": 6, "flags": 2},
- {"x": 144, "y": 56, "flags": 2},
- {"x": 214, "y": 45, "flags": 2}
- ],
- "split_count": [21, 21]
- },
- "split": {
- "enabled": true,
- "handedness": {
- "pin": "GP8"
- },
- "matrix_pins": {
- "right": {
- "direct": [
- ["GP25", "GP22", "GP17", "GP16", "GP13"],
- ["GP24", "GP20", "GP18", "GP15", "GP12"],
- ["GP23", "GP21", "GP19", "GP14", "GP11"],
- ["GP10", "GP9", null, null, null]
- ]
- }
- },
- "serial": {
- "driver": "vendor"
- }
- },
- "url": "https://git.pngu.org/sweep",
- "usb": {
- "device_version": "1.0.0",
- "pid": "0x7370",
- "vid": "0x6A73"
- },
- "ws2812": {
- "driver": "vendor",
- "pin": "GP2"
- },
- "community_layouts": ["split_3x5_2"],
- "layout_aliases": {
- "LAYOUT": "LAYOUT_split_3x5_2"
- },
- "layouts": {
- "LAYOUT_split_3x5_2": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0.25},
- {"matrix": [0, 1], "x": 1, "y": 0.125},
- {"matrix": [0, 2], "x": 2, "y": 0},
- {"matrix": [0, 3], "x": 3, "y": 0.125},
- {"matrix": [0, 4], "x": 4, "y": 0.25},
- {"matrix": [4, 0], "x": 7, "y": 0.25},
- {"matrix": [4, 1], "x": 8, "y": 0.125},
- {"matrix": [4, 2], "x": 9, "y": 0},
- {"matrix": [4, 3], "x": 10, "y": 0.125},
- {"matrix": [4, 4], "x": 11, "y": 0.25},
- {"matrix": [1, 0], "x": 0, "y": 1.25},
- {"matrix": [1, 1], "x": 1, "y": 1.125},
- {"matrix": [1, 2], "x": 2, "y": 1},
- {"matrix": [1, 3], "x": 3, "y": 1.125},
- {"matrix": [1, 4], "x": 4, "y": 1.25},
- {"matrix": [5, 0], "x": 7, "y": 1.25},
- {"matrix": [5, 1], "x": 8, "y": 1.125},
- {"matrix": [5, 2], "x": 9, "y": 1},
- {"matrix": [5, 3], "x": 10, "y": 1.125},
- {"matrix": [5, 4], "x": 11, "y": 1.25},
- {"matrix": [2, 0], "x": 0, "y": 2.25},
- {"matrix": [2, 1], "x": 1, "y": 2.125},
- {"matrix": [2, 2], "x": 2, "y": 2},
- {"matrix": [2, 3], "x": 3, "y": 2.125},
- {"matrix": [2, 4], "x": 4, "y": 2.25},
- {"matrix": [6, 0], "x": 7, "y": 2.25},
- {"matrix": [6, 1], "x": 8, "y": 2.125},
- {"matrix": [6, 2], "x": 9, "y": 2},
- {"matrix": [6, 3], "x": 10, "y": 2.125},
- {"matrix": [6, 4], "x": 11, "y": 2.25},
- {"matrix": [3, 3], "x": 3.5, "y": 3.25},
- {"matrix": [3, 4], "x": 4.5, "y": 3.5},
- {"matrix": [7, 0], "x": 6.5, "y": 3.5},
- {"matrix": [7, 1], "x": 7.5, "y": 3.25}
- ]
- }
+ "serial": {
+ "driver": "vendor"
+ }
+ },
+ "url": "https://git.pngu.org/sweep",
+ "usb": {
+ "device_version": "1.0.0",
+ "pid": "0x7370",
+ "vid": "0x6A73"
+ },
+ "ws2812": {
+ "driver": "vendor",
+ "pin": "GP2"
+ },
+ "community_layouts": ["split_3x5_2"],
+ "layout_aliases": {
+ "LAYOUT": "LAYOUT_split_3x5_2"
+ },
+ "layouts": {
+ "LAYOUT_split_3x5_2": {
+ "layout": [
+ { "matrix": [0, 0], "x": 0, "y": 0.25 },
+ { "matrix": [0, 1], "x": 1, "y": 0.125 },
+ { "matrix": [0, 2], "x": 2, "y": 0 },
+ { "matrix": [0, 3], "x": 3, "y": 0.125 },
+ { "matrix": [0, 4], "x": 4, "y": 0.25 },
+ { "matrix": [4, 0], "x": 7, "y": 0.25 },
+ { "matrix": [4, 1], "x": 8, "y": 0.125 },
+ { "matrix": [4, 2], "x": 9, "y": 0 },
+ { "matrix": [4, 3], "x": 10, "y": 0.125 },
+ { "matrix": [4, 4], "x": 11, "y": 0.25 },
+ { "matrix": [1, 0], "x": 0, "y": 1.25 },
+ { "matrix": [1, 1], "x": 1, "y": 1.125 },
+ { "matrix": [1, 2], "x": 2, "y": 1 },
+ { "matrix": [1, 3], "x": 3, "y": 1.125 },
+ { "matrix": [1, 4], "x": 4, "y": 1.25 },
+ { "matrix": [5, 0], "x": 7, "y": 1.25 },
+ { "matrix": [5, 1], "x": 8, "y": 1.125 },
+ { "matrix": [5, 2], "x": 9, "y": 1 },
+ { "matrix": [5, 3], "x": 10, "y": 1.125 },
+ { "matrix": [5, 4], "x": 11, "y": 1.25 },
+ { "matrix": [2, 0], "x": 0, "y": 2.25 },
+ { "matrix": [2, 1], "x": 1, "y": 2.125 },
+ { "matrix": [2, 2], "x": 2, "y": 2 },
+ { "matrix": [2, 3], "x": 3, "y": 2.125 },
+ { "matrix": [2, 4], "x": 4, "y": 2.25 },
+ { "matrix": [6, 0], "x": 7, "y": 2.25 },
+ { "matrix": [6, 1], "x": 8, "y": 2.125 },
+ { "matrix": [6, 2], "x": 9, "y": 2 },
+ { "matrix": [6, 3], "x": 10, "y": 2.125 },
+ { "matrix": [6, 4], "x": 11, "y": 2.25 },
+ { "matrix": [3, 3], "x": 3.5, "y": 3.25 },
+ { "matrix": [3, 4], "x": 4.5, "y": 3.5 },
+ { "matrix": [7, 0], "x": 6.5, "y": 3.5 },
+ { "matrix": [7, 1], "x": 7.5, "y": 3.25 }
+ ]
}
+ }
}
diff --git a/keyboards/sweep/keymaps/jack/keymap.c b/keyboards/sweep/keymaps/jack/keymap.c
index dc9a11b..5f836e8 100644
--- a/keyboards/sweep/keymaps/jack/keymap.c
+++ b/keyboards/sweep/keymaps/jack/keymap.c
@@ -1,6 +1,9 @@
// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#include "jack.h"
+#include "analog.h"
+
+#define NUM_ADC_READS 32
// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
@@ -14,13 +17,54 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
___LOWER1___,
___LOWER2___,
___LOWER3___,
- _______, _______, _______, PNP
+ _______, _______, _______, UPDIR
),
[_RAISE] = LAYOUT_jack(
___RAISE1___,
___RAISE2___,
___RAISE3___,
- REMOVE, _______, _______, _______
+ PNP, _______, _______, _______
)
};
// clang-format on
+
+void housekeeping_task_keymap(void) {
+ static uint32_t last_read = 0;
+ static int16_t current_reads[NUM_ADC_READS] = {0};
+ static int16_t voltage_reads[NUM_ADC_READS] = {0};
+ static uint8_t offset = 0;
+ if (timer_elapsed32(last_read) >= 1) {
+ int16_t current = analogReadPin(ADC_CURRENT_PIN);
+ int16_t voltage = analogReadPin(ADC_VOLTAGE_PIN);
+ int16_t current_ma =
+ (int16_t)(((3300 * (int32_t)current) / ADC_SATURATION));
+ int16_t voltage_mv =
+ (int16_t)((2 * (3300 * (int32_t)voltage)) / ADC_SATURATION);
+ if (!last_read)
+ for (uint8_t i = 0; i < NUM_ADC_READS; ++i) {
+ current_reads[i] = current_ma;
+ voltage_reads[i] = voltage_mv;
+ }
+ current_reads[offset] = current_ma;
+ voltage_reads[offset] = voltage_mv;
+ offset = (offset + 1) % NUM_ADC_READS;
+ static uint16_t counter = 0;
+ counter = (counter + 1) % 2500;
+ if (!counter)
+ dprintf("Current: %dmA\tVoltage: %dmV\n", (int)current_ma,
+ (int)voltage_mv);
+ last_read = timer_read32();
+ }
+ static uint32_t last_draw = 0;
+ if (timer_elapsed32(last_draw) >= 250) {
+ int32_t total_current_ma = 0;
+ int32_t total_voltage_mv = 0;
+ for (uint8_t i = 0; i < NUM_ADC_READS; ++i) {
+ total_current_ma += current_reads[i];
+ total_voltage_mv += voltage_reads[i];
+ }
+ // int16_t avg_current_ma = (int16_t)(total_current_ma / NUM_ADC_READS);
+ // int16_t avg_voltage_mv = (int16_t)(total_voltage_mv / NUM_ADC_READS);
+ last_draw = timer_read32();
+ }
+}
diff --git a/keyboards/sweep/mcuconf.h b/keyboards/sweep/mcuconf.h
index 182be78..c53d80d 100644
--- a/keyboards/sweep/mcuconf.h
+++ b/keyboards/sweep/mcuconf.h
@@ -4,8 +4,11 @@
#include_next <mcuconf.h>
+#undef RP_ADC_USE_ADC1
+#define RP_ADC_USE_ADC1 TRUE
+
#undef RP_SPI_USE_SPI0
#define RP_SPI_USE_SPI0 TRUE
-#undef RP_I2C_USE_I2C1
-#define RP_I2C_USE_I2C1 TRUE
+#undef RP_PWM_USE_PWM3
+#define RP_PWM_USE_PWM3 TRUE
diff --git a/keyboards/sweep/readme.md b/keyboards/sweep/readme.md
index 093fbc1..be6c1a6 100644
--- a/keyboards/sweep/readme.md
+++ b/keyboards/sweep/readme.md
@@ -1,6 +1,8 @@
# Sweep RP2040
-* Keyboard Maintainer: [Jack Sangdahl](https://github.com/waffle87)
+![image](https://git.pngu.org/sweep/about/img/image1.jpg)
+
+* Keyboard Maintainer: [[email protected]](mailto:[email protected])
* Hardware Supported: PCBs with integrated RP2040 microcontroller
* Hardware Availability: [git/sweep](https://git.pngu.org/sweep)
@@ -18,6 +20,6 @@ See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_to
Enter the bootloader in 3 ways:
-* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
-* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
+* **Bootmagic reset**: Hold down the key at (0,0) in the matrix and plug in the keyboard
+* **Physical reset button**: Hold button labeled BOOT and tap RESET button
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/sweep/rules.mk b/keyboards/sweep/rules.mk
index 3bac055..5533ed9 100644
--- a/keyboards/sweep/rules.mk
+++ b/keyboards/sweep/rules.mk
@@ -1,4 +1,2 @@
-POINTING_DEVICE_DRIVER = cirque_pinnacle_spi
-
-# depends on 21844
-QUANTUM_PAINTER_DRIVERS += ls0xx_spi
+QUANTUM_PAINTER_DRIVERS += st7789_spi
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/sweep/sweep.c b/keyboards/sweep/sweep.c
index bd73d8a..c7023bd 100644
--- a/keyboards/sweep/sweep.c
+++ b/keyboards/sweep/sweep.c
@@ -4,15 +4,13 @@
#ifdef QUANTUM_PAINTER_ENABLE
#include "qp.h"
-#include "qp_surface.h"
+
static painter_device_t display;
-static uint8_t framebuffer[SURFACE_REQUIRED_BUFFER_BYTE_SIZE(
- LS0XX_DISPLAY_WIDTH, LS0XX_DISPLAY_HEIGHT, 1)] = {0};
void keyboard_post_init_kb(void) {
- display = qp_ls0xx_device_t_make_spi_device(
- LS0XX_DISPLAY_WIDTH, LS0XX_DISPLAY_HEIGHT, LS0XX_CS_PIN, LCD_SPI_DIVISOR,
- 0, framebuffer);
+ display = qp_st7789_make_spi_device(LCD_DISPLAY_WIDTH, LCD_DISPLAY_HEIGHT,
+ LCD_CS_PIN, LCD_DC_PIN, LCD_RST_PIN,
+ LCD_SPI_DIVISOR, 0);
qp_init(display, QP_ROTATION_0);
keyboard_post_init_user();
}
@@ -27,14 +25,3 @@ void suspend_wakeup_init_kb(void) {
suspend_wakeup_init_user();
}
#endif // QUANTUM_PAINTER_ENABLE
-
-#ifdef OLED_ENABLE
-oled_rotation_t oled_init_kb(oled_rotation_t rotation) { return rotation; }
-
-bool oled_task_kb(void) {
- if (!oled_task_user())
- return false;
- oled_write(PSTR("foo bar baz"), false);
- return true;
-}
-#endif // OLED_ENABLE
diff --git a/keyboards/tornish/flash.sh b/keyboards/tornish/flash.sh
deleted file mode 100755
index 6de066f..0000000
--- a/keyboards/tornish/flash.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-FIRMWARE=~/git/qmk_firmware/tornish_default.hex
-BOOTLOADER=~/git/qmk_me/keyboards/tornish/usbasploader_atmega328p.hex
-
-qmk compile -kb tornish -km default > /dev/null
-sed -i '$ d' $FIRMWARE
-cat $BOOTLOADER >> $FIRMWARE
-doas avrdude -c usbtiny -p atmega328p -U flash:w:$FIRMWARE:i
diff --git a/keyboards/tornish/keyboard.json b/keyboards/tornish/keyboard.json
deleted file mode 100644
index 5423d74..0000000
--- a/keyboards/tornish/keyboard.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- "keyboard_name": "tornish",
- "manufacturer": "jacks",
- "maintainer": "pngu.org",
- "bootloader": "usbasploader",
- "diode_direction": "COL2ROW",
- "matrix_pins": {
- "cols": ["B3", "B4", "B5", "B0", "D7", "D6"],
- "rows": ["D4", "D1", "D0", "D5"]
- },
- "processor": "atmega328p",
- "usb": {
- "device_version": "1.0.0",
- "pid": "0x6A73",
- "vid": "0x6D64"
- },
- "layouts": {
- "LAYOUT": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 1], "x": 1, "y": 0},
- {"matrix": [0, 2], "x": 2, "y": 0},
- {"matrix": [0, 3], "x": 3, "y": 0},
- {"matrix": [0, 4], "x": 4, "y": 0},
- {"matrix": [0, 5], "x": 5, "y": 0},
- {"matrix": [1, 0], "x": 0, "y": 1},
- {"matrix": [1, 1], "x": 1, "y": 1},
- {"matrix": [1, 2], "x": 2, "y": 1},
- {"matrix": [1, 3], "x": 3, "y": 1},
- {"matrix": [1, 4], "x": 4, "y": 1},
- {"matrix": [1, 5], "x": 5, "y": 1},
- {"matrix": [2, 0], "x": 0, "y": 2},
- {"matrix": [2, 1], "x": 1, "y": 2},
- {"matrix": [2, 2], "x": 2, "y": 2},
- {"matrix": [2, 3], "x": 3, "y": 2},
- {"matrix": [2, 4], "x": 4, "y": 2},
- {"matrix": [2, 5], "x": 5, "y": 2},
- {"matrix": [3, 2], "x": 2, "y": 3},
- {"matrix": [3, 3], "x": 3, "y": 3},
- {"matrix": [3, 4], "x": 4, "y": 3},
- {"matrix": [3, 5], "x": 5, "y": 3}
- ]
- }
- }
-}
diff --git a/keyboards/tornish/keymaps/default/keymap.c b/keyboards/tornish/keymaps/default/keymap.c
deleted file mode 100644
index acd59b8..0000000
--- a/keyboards/tornish/keymaps/default/keymap.c
+++ /dev/null
@@ -1,42 +0,0 @@
-// Copyright 2025 [email protected]
-// SPDX-License-Identifier: GPL-2.0-or-later
-#include QMK_KEYBOARD_H
-
-enum macros { DAY = QK_USER, CLEAR };
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(
- DAY, KC_Q, KC_W, KC_E, KC_R, KC_T,
- CLEAR, KC_A, KC_S, KC_D, KC_F, KC_G,
- XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B,
- KC_ESC, MO(1), KC_SPC, XXXXXXX
- ),
- [1] = LAYOUT(
- XXXXXXX, KC_1, KC_2, KC_3, KC_4, KC_5,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, _______, XXXXXXX, XXXXXXX
- )
-};
-// clang-format on
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case DAY:
- if (record->event.pressed) {
- tap_code(KC_SLSH);
- wait_ms(500);
- SEND_STRING("time set day" SS_TAP(X_ENT));
- }
- break;
- case CLEAR:
- if (record->event.pressed) {
- tap_code(KC_SLSH);
- wait_ms(500);
- SEND_STRING("weather clear" SS_TAP(X_ENT));
- }
- break;
- }
- return true;
-}
diff --git a/keyboards/tornish/readme.md b/keyboards/tornish/readme.md
deleted file mode 100644
index 57b3d5a..0000000
--- a/keyboards/tornish/readme.md
+++ /dev/null
@@ -1,11 +0,0 @@
-### half a [torn](https://github.com/rtitmuss/torn) keyboard used for minecraft :)
-![img](https://i.imgur.com/e7zKTK7.jpeg)
-
-for whatever reason, this board does not like to flash over usb.
-so [flash.sh](flash.sh) does the work instead:
-```shell
-qmk compile -kb tornish -km default > /dev/null
-sed -i '$ d' $FIRMWARE #remove last line from firmware hex file (eof indicator)
-cat $BOOTLOADER >> $FIRMWARE #append bootloader hex file to firmware
-avrdude -c usbtiny -p atmega328p -U flash:w:$FIRMWARE:i #flash firmware + bootloader over serial
-```
diff --git a/keyboards/tornish/usbasploader_atmega328p.hex b/keyboards/tornish/usbasploader_atmega328p.hex
deleted file mode 100644
index 3f3fb14..0000000
--- a/keyboards/tornish/usbasploader_atmega328p.hex
+++ /dev/null
@@ -1,140 +0,0 @@
-:107000006BC00000AAC000008EC000008CC0000051
-:107010008AC0000088C0000086C0000084C0000054
-:1070200082C0000080C000007EC000007CC0000064
-:107030007AC0000078C0000076C0000074C0000074
-:1070400072C0000070C000006EC000006CC0000084
-:107050006AC0000068C0000066C0000064C0000094
-:1070600062C0000060C00000EC2DFD2DB7B6B0FC82
-:10707000FDCF27BFE895B7B6B0FCFDCF21E1B7B68D
-:10708000B6FCF4CF08950902120001010080320914
-:10709000040000000000000012011001FF000008C1
-:1070A000C016DC050201010200010E035500530069
-:1070B00042006100730070001C03770077007700C6
-:1070C0002E00660069007300630068006C002E00EB
-:1070D000640065000403090411241FBECFEFD8E04B
-:1070E000DEBFCDBF24B7D8E0CEEF39913833399128
-:1070F00009F03FEF30933C0120933B0111E0A0E009
-:10710000B1E0E4E8F8E702C005900D92A630B107BF
-:10711000D9F721E0A6E0B1E001C01D92AB33B20780
-:10712000E1F785D1ADC36CCFA82FB92F80E090E0F7
-:1071300041E050EA609530E009C02D918227979593
-:10714000879510F084279527305EC8F36F5FA8F30A
-:107150000895EADF8D939D930895CF93CFB7CF9392
-:10716000DF93C3954B9BE9F74B9B0BC04B9B09C02F
-:107170004B9B07C04B9B05C04B9B03C04B9B01C067
-:1071800089C06F93C0911E01DD27CB5DDE4F2F9329
-:1071900065E54B9B03C02F916F91E6CF0F931F9333
-:1071A0004F9320E040E15F9309B10C7003FB27F996
-:1071B0003F9350E03BE039C01C7040642F77012FB3
-:1071C0005F5F1EC0406819B11C702F7752501FC0FE
-:1071D000406409B12F770C70D1F15F5F00C023C00C
-:1071E000406219B12F771C7091F15F5F00C025C01C
-:1071F0000C701027515012F45D5F0000115027955C
-:107200002C3F19B1C8F61C700127015027952C3F5F
-:10721000C8F64227499309B10C7010274F731150DB
-:1072200027952C3FA8F64695469519B11C7079F024
-:107230000127015027952C3F98F66B5A60F3315087
-:1072400009B1B0F600C011E01CBB002717C03B50CD
-:107250003195C31BD04011E01CBB0881033CF9F001
-:107260000B34E9F020911C011981110F1213EDCF9D
-:10727000093651F10D3211F0013E39F70093230127
-:107280003F915F914F911F910F912F916F91CCB3CF
-:10729000C0FD67CFDF91CF91CFBFCF9118952091DF
-:1072A0002301222369F310912101112339F5343090
-:1072B0003AF13093210120931D0110911E013BE012
-:1072C000311B30931E011CC0009121010130B4F428
-:1072D0000AE53091010134FD14C000930101C1E1C0
-:1072E000D1E013C0052710E000C000000BB91AC0A0
-:1072F000052710E0221F1DC010E021C04AE502C092
-:1073000032ED432FC4E1D0E032E01AB11C605B9A49
-:107310000BB11AB95CE020E865E320FF05270BB943
-:10732000279517951C3FF0F66695B8F7B1F720FF43
-:1073300005270BB9279517951C3FD0F6279517956C
-:1073400017FF052700001C3F0BB9B0F629913A95AD
-:1073500019F7037F10912201110FC651D0400BB9CC
-:1073600011F010931C0111E01CBB08601AB1137FCF
-:10737000402F437F54E05A95F1F70BB91AB94BB936
-:107380007FCFDC0113964C91139714963C91149780
-:1073900013968D919C911497982789279827129678
-:1073A0002C911297203339F43370E32FF0E0EE5F25
-:1073B000FE4F80810895283561F489E0E1E0F0E036
-:1073C000442371F089E0E3E0F0E0483049F080E0E8
-:1073D0000895203579F4411107C089E0F0E0E0E03C
-:1073E000809357008491089589E0E2E0F0E048300E
-:1073F00071F7F6CF203229F4880F991FFC01849190
-:107400000895283229F4FC01EE0FFF1F3196F7CFC3
-:10741000203A09F41FC2203C21F415966C9122D227
-:10742000D6CF2F3FA1F681EF80930F01D0CF1AB8AE
-:1074300080E28BB981E085BF82E085BFE0E0F1E7C3
-:10744000A89531978040E1F780913B01877F21F437
-:1074500080913C01882371F04D9B0CC0F894539AA5
-:107460001BB81DBA1092690081E085BF15BEF0E01F
-:10747000E0E009958EEF80930F0114BE0FB6F894EB
-:10748000A8958091600088618093600010926000F0
-:107490000FBE80916900826080936900E89A539AD8
-:1074A0008CE0E0E0F5E3A89531978040E1F7539850
-:1074B000789410912101135017FD5AC080911E013C
-:1074C000CCE0D0E0C81BD109CB5DDE4F80911D011F
-:1074D0008D3209F00BC1183009F048C083EC80935D
-:1074E00011018AE580930101109210013881832FE8
-:1074F00080769981882309F49BC046E051E050933F
-:10750000200140931F01933069F4CE013ADF80934C
-:10751000090184E09F81911127C09E81981720F571
-:10752000892F22C0953009F4DFC09A3009F4DCC0FD
-:107530008CEF890F863008F070C04A815B815093D0
-:107540000E0140930D01993009F46EC08E81809335
-:107550000C012D81227020930B0190930A0137FFBB
-:107560008FEF90E890931001809300011092210119
-:107570008091010184FF36C0C0910001CF3F91F19D
-:107580008C2FC93008F088E09C2F981B9093000145
-:107590009091110128E8922790931101CC23B1F02A
-:1075A0004091100147FF2FC190910C01C82F9817EF
-:1075B00008F4C92F9C1B90930C01D0900A01D0E0D5
-:1075C00082E1E82E81E0F82EDC1304C16C2F82E109
-:1075D00091E0BFDDCC5FCC3019F08FEF80930001DC
-:1075E000C093010184E199B19C7031F48150D9F7C5
-:1075F0001092220110921C0180910F01803108F439
-:107600001EC14D9B05C080910F01805180930F01D9
-:1076100080910F0181114DCF21CF80910F019230C8
-:1076200029F48E7F80930F0180E074CF8160FACFC0
-:107630002A8110921A0191110AC010921B012AE1AD
-:1076400031E082E03093200120931F0163CF953019
-:1076500029F4209322012AE131E0F4CF963099F504
-:107660009B81913059F488E990E7909320018093B1
-:107670001F0182E190E4909310014CCF923019F4F5
-:1076800086E890E7F2CF9330A9F7211108C084ED86
-:1076900090E79093200180931F0184E0EBCF21308D
-:1076A00041F488EB90E79093200180931F018CE1D7
-:1076B000E1CF2230F9F68AEA90E790932001809397
-:1076C0001F018EE0D7CF983059F0993019F42093EC
-:1076D0002401C1CF81E09A3009F4BDCF80E0BBCF57
-:1076E00024E231E081E0AECF81E014CF809110013F
-:1076F00087FF3CCF00910C01011708F4102F011BEC
-:1077000000930C01F12CF11628F001112FCF1092EB
-:1077100000012CCF80910D0190910E0120910A0162
-:10772000273058F069919C012F5F3F4F30930E0135
-:1077300020930D0197D0F394E6CF8115904738F749
-:10774000F394F394F894E0910D01F0910E012991D6
-:10775000399181E0090180935700E89511247894CC
-:1077600080910D0190910E01029690930E018093ED
-:107770000D018F779927892B51F00111C4CFF11694
-:1077800008F4C1CF80910B01882309F4BCCFF89491
-:10779000E0910D01F0910E01329783E08093570044
-:1077A000E895789407B600FCFDCFF894E0910D01C0
-:1077B000F0910E01329785E080935700E895789418
-:1077C00007B600FCFDCFF89481E180935700E8955F
-:1077D000789499CF00910D0110910E0126E02D159E
-:1077E00078F4C80137D0F7018083FFEFEF1AFF0A62
-:1077F0000F5F1F4F10930E0100930D01DF5FE4CE6A
-:10780000F8018491F0CF90911F0130912001282F31
-:10781000290FE92FF32FA2E1B1E046FF0BC09491AD
-:107820009D9331962E13FBCFF0932001E0931F011F
-:10783000C82FCCCE91919D932E13FCCFF5CF4D99AF
-:10784000E7CE80910F01823008F4E2CE80910F01E3
-:107850008250DCCEF999FECF92BD81BDF89A99276E
-:1078600080B50895262FF999FECF1FBA92BD81BD2C
-:1078700020BD0FB6F894FA9AF99A0FBE01960895B2
-:04788000F894FFCFAA
-:06788400FF5A1E950F00E3
-:040000030000700089
-:00000001FF
diff --git a/keyboards/xyz60/keyboard.json b/keyboards/xyz60/keyboard.json
index d605eb3..316e36a 100644
--- a/keyboards/xyz60/keyboard.json
+++ b/keyboards/xyz60/keyboard.json
@@ -74,7 +74,7 @@
{"matrix": [4, 1], "x": 0, "y": 0},
{"matrix": [4, 2], "x": 0, "y": 0},
{"matrix": [4, 6], "x": 0, "y": 0},
- {"matrix": [4, 10], "x": 0, "y": 0},
+ {"matrix": [4, 11], "x": 0, "y": 0},
{"matrix": [4, 12], "x": 0, "y": 0},
{"matrix": [4, 13], "x": 0, "y": 0}
]