aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorploopyco <[email protected]>2025-02-21 03:01:29 -0500
committerGitHub <[email protected]>2025-02-21 00:01:29 -0800
commit50967dbe7e5137f74365b9989e10f03e94d92926 (patch)
treebe0e5e81482f60a91616533b4c304a329a5b2135
parent2f27b3dc78ee41f2372477af129aaab934497d2f (diff)
downloadqmk_firmware-50967dbe7e5137f74365b9989e10f03e94d92926.tar.gz
qmk_firmware-50967dbe7e5137f74365b9989e10f03e94d92926.zip
Updates to Ploopy Classic, Mouse, and Thumb for RP2040 hardware upgrade (#24880)
Co-authored-by: Drashna Jaelre <[email protected]>
-rw-r--r--keyboards/ploopyco/mouse/config.h11
-rw-r--r--keyboards/ploopyco/mouse/info.json (renamed from keyboards/ploopyco/mouse/keyboard.json)27
-rw-r--r--keyboards/ploopyco/mouse/post_rules.mk1
-rw-r--r--keyboards/ploopyco/mouse/readme.md6
-rw-r--r--keyboards/ploopyco/mouse/rev1_002/config.h33
-rw-r--r--keyboards/ploopyco/mouse/rev1_002/keyboard.json21
-rw-r--r--keyboards/ploopyco/mouse/rev1_002/readme.md3
-rw-r--r--keyboards/ploopyco/mouse/rev1_002/rules.mk (renamed from keyboards/ploopyco/mouse/rules.mk)2
-rw-r--r--keyboards/ploopyco/mouse/rev1_003/config.h32
-rw-r--r--keyboards/ploopyco/mouse/rev1_003/keyboard.json25
-rw-r--r--keyboards/ploopyco/mouse/rev1_003/readme.md3
-rw-r--r--keyboards/ploopyco/trackball/config.h11
-rw-r--r--keyboards/ploopyco/trackball/info.json5
-rw-r--r--keyboards/ploopyco/trackball/post_rules.mk1
-rw-r--r--keyboards/ploopyco/trackball/readme.md25
-rw-r--r--keyboards/ploopyco/trackball/rev1_004/config.h (renamed from keyboards/ploopyco/trackball/rev1/config.h)6
-rw-r--r--keyboards/ploopyco/trackball/rev1_004/keyboard.json (renamed from keyboards/ploopyco/trackball/rev1/keyboard.json)0
-rw-r--r--keyboards/ploopyco/trackball/rev1_004/readme.md (renamed from keyboards/ploopyco/trackball/rev1/readme.md)0
-rw-r--r--keyboards/ploopyco/trackball/rev1_004/rules.mk2
-rw-r--r--keyboards/ploopyco/trackball/rev1_005/config.h9
-rw-r--r--keyboards/ploopyco/trackball/rev1_005/readme.md4
-rw-r--r--keyboards/ploopyco/trackball/rev1_005/rules.mk2
-rw-r--r--keyboards/ploopyco/trackball/rev1_007/config.h32
-rw-r--r--keyboards/ploopyco/trackball/rev1_007/keyboard.json25
-rw-r--r--keyboards/ploopyco/trackball/rev1_007/readme.md3
-rw-r--r--keyboards/ploopyco/trackball/rules.mk6
-rw-r--r--keyboards/ploopyco/trackball_thumb/config.h6
-rw-r--r--keyboards/ploopyco/trackball_thumb/info.json14
-rw-r--r--keyboards/ploopyco/trackball_thumb/post_rules.mk1
-rw-r--r--keyboards/ploopyco/trackball_thumb/readme.md4
-rw-r--r--keyboards/ploopyco/trackball_thumb/rev1_001/config.h6
-rw-r--r--keyboards/ploopyco/trackball_thumb/rev1_001/keyboard.json12
-rw-r--r--keyboards/ploopyco/trackball_thumb/rev1_001/readme.md4
-rw-r--r--keyboards/ploopyco/trackball_thumb/rev1_001/rules.mk2
-rw-r--r--keyboards/ploopyco/trackball_thumb/rev1_002/config.h32
-rw-r--r--keyboards/ploopyco/trackball_thumb/rev1_002/keyboard.json25
-rw-r--r--keyboards/ploopyco/trackball_thumb/rev1_002/readme.md3
-rw-r--r--keyboards/ploopyco/trackball_thumb/rules.mk6
38 files changed, 311 insertions, 99 deletions
diff --git a/keyboards/ploopyco/mouse/config.h b/keyboards/ploopyco/mouse/config.h
index 0f8774dcd7..0645283880 100644
--- a/keyboards/ploopyco/mouse/config.h
+++ b/keyboards/ploopyco/mouse/config.h
@@ -18,11 +18,6 @@
#pragma once
-// These pins are not broken out, and cannot be used normally.
-// They are set as output and pulled high, by default
-#define UNUSABLE_PINS \
- { B4, D6, F1, F5, F6, F7 }
-
/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
@@ -30,13 +25,7 @@
// #define DEBUG_LED_PIN F7
-/* PMW33XX Settings */
-#define PMW33XX_CS_PIN B0
-
#define ENCODER_BUTTON_COL 1
#define ENCODER_BUTTON_ROW 0
/* Custom encoder needs to specify just how many encoders we have */
#define NUM_ENCODERS 1
-
-#define ENCODER_A_PINS { F0 }
-#define ENCODER_B_PINS { F4 }
diff --git a/keyboards/ploopyco/mouse/keyboard.json b/keyboards/ploopyco/mouse/info.json
index 4c81ee7338..1a70989f25 100644
--- a/keyboards/ploopyco/mouse/keyboard.json
+++ b/keyboards/ploopyco/mouse/info.json
@@ -1,6 +1,6 @@
{
"keyboard_name": "Mouse",
- "manufacturer": "PloopyCo",
+ "manufacturer": "Ploopy",
"url": "www.ploopy.co",
"maintainer": "drashna",
"usb": {
@@ -9,6 +9,9 @@
"device_version": "0.0.1",
"max_power": 100
},
+ "bootmagic": {
+ "matrix": [0, 3]
+ },
"features": {
"bootmagic": true,
"extrakey": true,
@@ -17,28 +20,6 @@
"pointing_device": true,
"encoder": true
},
- "bootmagic": {
- "matrix": [0, 3]
- },
- "ws2812": {
- "pin": "B5"
- },
- "rgblight": {
- "led_count": 4,
- "max_brightness": 40,
- "animations": {
- "breathing": true,
- "rainbow_mood": true,
- "rainbow_swirl": true
- }
- },
- "processor": "atmega32u4",
- "bootloader": "atmel-dfu",
- "matrix_pins": {
- "direct": [
- ["D4", "D2", "E6", "B6", "D7", "C6", "C7", "B7"]
- ]
- },
"encoder": {
"driver": "custom"
},
diff --git a/keyboards/ploopyco/mouse/post_rules.mk b/keyboards/ploopyco/mouse/post_rules.mk
new file mode 100644
index 0000000000..0d1a00b89e
--- /dev/null
+++ b/keyboards/ploopyco/mouse/post_rules.mk
@@ -0,0 +1 @@
+POINTING_DEVICE_DRIVER = pmw3360 \ No newline at end of file
diff --git a/keyboards/ploopyco/mouse/readme.md b/keyboards/ploopyco/mouse/readme.md
index 060448c2bf..c5c6bb7dce 100644
--- a/keyboards/ploopyco/mouse/readme.md
+++ b/keyboards/ploopyco/mouse/readme.md
@@ -6,14 +6,14 @@ It's a DIY, QMK Powered Mouse!!!!
* Keyboard Maintainer: [PloopyCo](https://github.com/ploopyco), [Drashna Jael're](https://github.com/drashna/), [Germ](https://github.com/germ/)
-* Hardware Supported: ATMega32u4 8MHz(3.3v)
+* Hardware Supported: ATMega32u4 8MHz(3.3v), Raspberry RP2040
* Hardware Availability: [Store](https://ploopy.co), [GitHub](https://github.com/ploopyco)
Make example for this keyboard (after setting up your build environment):
make ploopyco/mouse:default:flash
-
-To jump to the bootloader, hold down "Button 4" (the "forward" button on the left side)
+
+To jump to the bootloader, hold down "Button 4" (the "forward" button on the left side)
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/ploopyco/mouse/rev1_002/config.h b/keyboards/ploopyco/mouse/rev1_002/config.h
new file mode 100644
index 0000000000..49b53bc8dd
--- /dev/null
+++ b/keyboards/ploopyco/mouse/rev1_002/config.h
@@ -0,0 +1,33 @@
+/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <[email protected]>
+ * Copyright 2019 Sunjun Kim
+ * Copyright 2020 Ploopy Corporation
+ *
+ * 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
+
+// These pins are not broken out, and cannot be used normally.
+// They are set as output and pulled high, by default
+#define UNUSABLE_PINS \
+ { B4, D6, F1, F5, F6, F7 }
+
+// If board has a debug LED, you can enable it by defining this
+// #define DEBUG_LED_PIN F7
+
+/* PMW33XX Settings */
+#define PMW33XX_CS_PIN B0
+
+#define ENCODER_A_PINS { F0 }
+#define ENCODER_B_PINS { F4 }
diff --git a/keyboards/ploopyco/mouse/rev1_002/keyboard.json b/keyboards/ploopyco/mouse/rev1_002/keyboard.json
new file mode 100644
index 0000000000..bfed3232f0
--- /dev/null
+++ b/keyboards/ploopyco/mouse/rev1_002/keyboard.json
@@ -0,0 +1,21 @@
+{
+ "processor": "atmega32u4",
+ "bootloader": "atmel-dfu",
+ "matrix_pins": {
+ "direct": [
+ ["D4", "D2", "E6", "B6", "D7", "C6", "C7", "B7"]
+ ]
+ },
+ "ws2812": {
+ "pin": "B5"
+ },
+ "rgblight": {
+ "led_count": 3,
+ "max_brightness": 40,
+ "animations": {
+ "breathing": true,
+ "rainbow_mood": true,
+ "rainbow_swirl": true
+ }
+ }
+}
diff --git a/keyboards/ploopyco/mouse/rev1_002/readme.md b/keyboards/ploopyco/mouse/rev1_002/readme.md
new file mode 100644
index 0000000000..a9400ea100
--- /dev/null
+++ b/keyboards/ploopyco/mouse/rev1_002/readme.md
@@ -0,0 +1,3 @@
+See the [main readme](../readme.md) for more details.
+
+This is for the R1.002 version of the Mouse. It's easily distinguishable from the R1.003+ versions of the Mouse because it has an ATmega32u4 on the board.
diff --git a/keyboards/ploopyco/mouse/rules.mk b/keyboards/ploopyco/mouse/rev1_002/rules.mk
index 3d1d3fc961..3437a35bdf 100644
--- a/keyboards/ploopyco/mouse/rules.mk
+++ b/keyboards/ploopyco/mouse/rev1_002/rules.mk
@@ -1,4 +1,2 @@
# Processor frequency
F_CPU = 8000000
-
-POINTING_DEVICE_DRIVER = pmw3360
diff --git a/keyboards/ploopyco/mouse/rev1_003/config.h b/keyboards/ploopyco/mouse/rev1_003/config.h
new file mode 100644
index 0000000000..b4291e307b
--- /dev/null
+++ b/keyboards/ploopyco/mouse/rev1_003/config.h
@@ -0,0 +1,32 @@
+/* Copyright 2024 Colin Lam (Ploopy Corporation)
+ * Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <[email protected]>
+ * Copyright 2019 Sunjun Kim
+ *
+ * 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 UNUSABLE_PINS \
+ { GP1, GP3, GP4, GP6, GP8, GP10, GP11, GP16, GP18, GP20, GP25, GP27, GP29 }
+
+/* PMW3360 Settings */
+#define PMW33XX_LIFTOFF_DISTANCE 0x00
+#define PMW33XX_CS_PIN GP5
+#define SPI_SCK_PIN GP2
+#define SPI_MISO_PIN GP0
+#define SPI_MOSI_PIN GP7
+
+#define ENCODER_A_PINS { GP26 }
+#define ENCODER_B_PINS { GP28 }
diff --git a/keyboards/ploopyco/mouse/rev1_003/keyboard.json b/keyboards/ploopyco/mouse/rev1_003/keyboard.json
new file mode 100644
index 0000000000..46eca8012f
--- /dev/null
+++ b/keyboards/ploopyco/mouse/rev1_003/keyboard.json
@@ -0,0 +1,25 @@
+{
+ "processor": "RP2040",
+ "bootloader": "rp2040",
+ "usb": {
+ "device_version": "1.0.0"
+ },
+ "diode_direction": "COL2ROW",
+ "matrix_pins": {
+ "direct": [
+ ["GP15", "GP21", "GP23", "GP17", "GP19", "GP22", "GP14", "GP24"]
+ ]
+ },
+ "rgblight": {
+ "led_count": 1,
+ "max_brightness": 40,
+ "animations": {
+ "breathing": true,
+ "rainbow_mood": true,
+ "rainbow_swirl": true
+ }
+ },
+ "ws2812": {
+ "pin": "GP12"
+ }
+}
diff --git a/keyboards/ploopyco/mouse/rev1_003/readme.md b/keyboards/ploopyco/mouse/rev1_003/readme.md
new file mode 100644
index 0000000000..3e402f4280
--- /dev/null
+++ b/keyboards/ploopyco/mouse/rev1_003/readme.md
@@ -0,0 +1,3 @@
+See the [main readme](../readme.md) for more details.
+
+This is for the R1.003+ version of the Mouse. It's easily distinguishable from the previous versions of the Mouse because it has an RP2040 on the board.
diff --git a/keyboards/ploopyco/trackball/config.h b/keyboards/ploopyco/trackball/config.h
index 2aac27437a..1a9b4ad225 100644
--- a/keyboards/ploopyco/trackball/config.h
+++ b/keyboards/ploopyco/trackball/config.h
@@ -23,20 +23,11 @@
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
+/* PMW3360 settings */
#define ROTATIONAL_TRANSFORM_ANGLE 20
-
-// If board has a debug LED, you can enable it by defining this
-// #define DEBUG_LED_PIN F7
-
-/* PMW33XX Settings */
-#define PMW33XX_CS_PIN B0
#define POINTING_DEVICE_INVERT_Y
-
#define ENCODER_BUTTON_COL 1
#define ENCODER_BUTTON_ROW 0
/* Custom encoder needs to specify just how many encoders we have */
#define NUM_ENCODERS 1
-
-#define ENCODER_A_PINS { F0 }
-#define ENCODER_B_PINS { F4 }
diff --git a/keyboards/ploopyco/trackball/info.json b/keyboards/ploopyco/trackball/info.json
index 8014db1d63..9e3312d4bc 100644
--- a/keyboards/ploopyco/trackball/info.json
+++ b/keyboards/ploopyco/trackball/info.json
@@ -1,6 +1,6 @@
{
- "keyboard_name": "Trackball",
- "manufacturer": "PloopyCo",
+ "keyboard_name": "Classic Trackball",
+ "manufacturer": "Ploopy",
"url": "www.ploopy.co",
"maintainer": "drashna",
"usb": {
@@ -12,7 +12,6 @@
"bootmagic": {
"matrix": [0, 3]
},
-
"features": {
"bootmagic": true,
"extrakey": true,
diff --git a/keyboards/ploopyco/trackball/post_rules.mk b/keyboards/ploopyco/trackball/post_rules.mk
new file mode 100644
index 0000000000..0d1a00b89e
--- /dev/null
+++ b/keyboards/ploopyco/trackball/post_rules.mk
@@ -0,0 +1 @@
+POINTING_DEVICE_DRIVER = pmw3360 \ No newline at end of file
diff --git a/keyboards/ploopyco/trackball/readme.md b/keyboards/ploopyco/trackball/readme.md
index c668c5dd03..cca2c15114 100644
--- a/keyboards/ploopyco/trackball/readme.md
+++ b/keyboards/ploopyco/trackball/readme.md
@@ -1,27 +1,34 @@
-# Ploopyco Trackball
+# Ploopy Classic Trackball
-![Ploopyco Trackball](https://i.redd.it/j7z0y83txps31.jpg)
+![Ploopy Trackball](https://i.redd.it/j7z0y83txps31.jpg)
It's a DIY, QMK Powered Trackball!!!!
-* Keyboard Maintainer: [PloopyCo](https://github.com/ploopyco), [Drashna Jael're](https://github.com/drashna/), [Germ](https://github.com/germ/)
-* Hardware Supported: ATMega32u4 8MHz(3.3v)
+* Keyboard Maintainer: [Ploopy](https://github.com/ploopyco), [Drashna Jael're](https://github.com/drashna/), [Germ](https://github.com/germ/)
+* Hardware Supported: ATMega32u4 8MHz(3.3v), Raspberry RP2040
* Hardware Availability: [Store](https://ploopy.co), [GitHub](https://github.com/ploopyco)
Make example for this keyboard (after setting up your build environment):
- make ploopyco/trackball/rev1:default:flash
+ make ploopyco/trackball/rev1_004:default:flash
make ploopyco/trackball/rev1_005:default:flash
-
-To jump to the bootloader, hold down "Button 4" (immediate right of the trackball)
+ make ploopyco/trackball/rev1_007:default:flash
+
+To jump to the bootloader, hold down "Button 4" (immediate right of the trackball)
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).
## Revisions
-There are two main revisions for the PloopyCo Trackball, everything up to 1.004, and 1.005-1.006.
+There are three main revisions for the Ploopy Classic Trackball:
+
+- Everything up to 1.004 (very rare)
+- Revision 1.005 and 1.006 (commonly sold between 2020 and 2024)
+- Revision 1.007 (first available in 2025)
+
+In the 1.005 revision, button four was changed from pin B5 to B6, and the debug LED pin was changed from F7 to B5.
-In the 1.005 revision, button for was changed from pin B5 to B6, and the debug LED pin was changed from F7 to B5.
+In the 1.007 revision, the board was switched from an ATMega32u4 architecture to the Raspberry RP2040 architecture.
The PCB should indicate which revision this is.
diff --git a/keyboards/ploopyco/trackball/rev1/config.h b/keyboards/ploopyco/trackball/rev1_004/config.h
index 35ab215341..25bcf86391 100644
--- a/keyboards/ploopyco/trackball/rev1/config.h
+++ b/keyboards/ploopyco/trackball/rev1_004/config.h
@@ -25,3 +25,9 @@
// If board has a debug LED, you can enable it by defining this
#define DEBUG_LED_PIN F7
+
+/* PMW33XX Settings */
+#define PMW33XX_CS_PIN B0
+
+#define ENCODER_A_PINS { F0 }
+#define ENCODER_B_PINS { F4 }
diff --git a/keyboards/ploopyco/trackball/rev1/keyboard.json b/keyboards/ploopyco/trackball/rev1_004/keyboard.json
index 8e372e7c2b..8e372e7c2b 100644
--- a/keyboards/ploopyco/trackball/rev1/keyboard.json
+++ b/keyboards/ploopyco/trackball/rev1_004/keyboard.json
diff --git a/keyboards/ploopyco/trackball/rev1/readme.md b/keyboards/ploopyco/trackball/rev1_004/readme.md
index a824c4690e..a824c4690e 100644
--- a/keyboards/ploopyco/trackball/rev1/readme.md
+++ b/keyboards/ploopyco/trackball/rev1_004/readme.md
diff --git a/keyboards/ploopyco/trackball/rev1_004/rules.mk b/keyboards/ploopyco/trackball/rev1_004/rules.mk
new file mode 100644
index 0000000000..3437a35bdf
--- /dev/null
+++ b/keyboards/ploopyco/trackball/rev1_004/rules.mk
@@ -0,0 +1,2 @@
+# Processor frequency
+F_CPU = 8000000
diff --git a/keyboards/ploopyco/trackball/rev1_005/config.h b/keyboards/ploopyco/trackball/rev1_005/config.h
index 014d67f9c1..404caca093 100644
--- a/keyboards/ploopyco/trackball/rev1_005/config.h
+++ b/keyboards/ploopyco/trackball/rev1_005/config.h
@@ -22,3 +22,12 @@
// They are set as output and pulled high, by default
#define UNUSABLE_PINS \
{ D1, D3, B4, B7, D6, C7, F6, F5, F3, F7 }
+
+// If board has a debug LED, you can enable it by defining this
+// #define DEBUG_LED_PIN F7
+
+/* PMW33XX Settings */
+#define PMW33XX_CS_PIN B0
+
+#define ENCODER_A_PINS { F0 }
+#define ENCODER_B_PINS { F4 }
diff --git a/keyboards/ploopyco/trackball/rev1_005/readme.md b/keyboards/ploopyco/trackball/rev1_005/readme.md
index a923d16591..980f118a10 100644
--- a/keyboards/ploopyco/trackball/rev1_005/readme.md
+++ b/keyboards/ploopyco/trackball/rev1_005/readme.md
@@ -1,3 +1,3 @@
-See the [main readme](../readme.md) for more details.
+See the [main readme](../readme.md) for more details.
-This is just the rev 1.005+ trackball
+This is for the R1.005-R1.006 version of the Classic. It's easily distinguishable from the R1.007+ versions of the Classic because it has an ATmega32u4 on the board. \ No newline at end of file
diff --git a/keyboards/ploopyco/trackball/rev1_005/rules.mk b/keyboards/ploopyco/trackball/rev1_005/rules.mk
new file mode 100644
index 0000000000..3437a35bdf
--- /dev/null
+++ b/keyboards/ploopyco/trackball/rev1_005/rules.mk
@@ -0,0 +1,2 @@
+# Processor frequency
+F_CPU = 8000000
diff --git a/keyboards/ploopyco/trackball/rev1_007/config.h b/keyboards/ploopyco/trackball/rev1_007/config.h
new file mode 100644
index 0000000000..97f2e46b5c
--- /dev/null
+++ b/keyboards/ploopyco/trackball/rev1_007/config.h
@@ -0,0 +1,32 @@
+/* Copyright 2024 Colin Lam (Ploopy Corporation)
+ * Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <[email protected]>
+ * Copyright 2019 Sunjun Kim
+ *
+ * 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 UNUSABLE_PINS \
+ { GP1, GP3, GP4, GP6, GP8, GP10, GP11, GP14, GP16, GP18, GP20, GP22, GP24, GP25, GP27, GP29 }
+
+/* PMW3360 Settings */
+#define PMW33XX_LIFTOFF_DISTANCE 0x00
+#define PMW33XX_CS_PIN GP5
+#define SPI_SCK_PIN GP2
+#define SPI_MISO_PIN GP0
+#define SPI_MOSI_PIN GP7
+
+#define ENCODER_A_PINS { GP26 }
+#define ENCODER_B_PINS { GP28 }
diff --git a/keyboards/ploopyco/trackball/rev1_007/keyboard.json b/keyboards/ploopyco/trackball/rev1_007/keyboard.json
new file mode 100644
index 0000000000..4098c86fda
--- /dev/null
+++ b/keyboards/ploopyco/trackball/rev1_007/keyboard.json
@@ -0,0 +1,25 @@
+{
+ "processor": "RP2040",
+ "bootloader": "rp2040",
+ "usb": {
+ "device_version": "1.0.0"
+ },
+ "diode_direction": "COL2ROW",
+ "matrix_pins": {
+ "direct": [
+ ["GP15", "GP21", "GP23", "GP17", "GP19"]
+ ]
+ },
+ "rgblight": {
+ "led_count": 1,
+ "max_brightness": 40,
+ "animations": {
+ "breathing": true,
+ "rainbow_mood": true,
+ "rainbow_swirl": true
+ }
+ },
+ "ws2812": {
+ "pin": "GP12"
+ }
+}
diff --git a/keyboards/ploopyco/trackball/rev1_007/readme.md b/keyboards/ploopyco/trackball/rev1_007/readme.md
new file mode 100644
index 0000000000..6b8da3a959
--- /dev/null
+++ b/keyboards/ploopyco/trackball/rev1_007/readme.md
@@ -0,0 +1,3 @@
+See the [main readme](../readme.md) for more details.
+
+This is for the R1.007+ version of the Classic. It's easily distinguishable from the previous versions of the Classic because it has an RP2040 on the board.
diff --git a/keyboards/ploopyco/trackball/rules.mk b/keyboards/ploopyco/trackball/rules.mk
deleted file mode 100644
index 9ea10ba6e8..0000000000
--- a/keyboards/ploopyco/trackball/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-# Processor frequency
-F_CPU = 8000000
-
-POINTING_DEVICE_DRIVER = pmw3360
-
-DEFAULT_FOLDER = ploopyco/trackball/rev1_005
diff --git a/keyboards/ploopyco/trackball_thumb/config.h b/keyboards/ploopyco/trackball_thumb/config.h
index f03ffc7699..0f269bd21a 100644
--- a/keyboards/ploopyco/trackball_thumb/config.h
+++ b/keyboards/ploopyco/trackball_thumb/config.h
@@ -29,9 +29,6 @@
// If board has a debug LED, you can enable it by defining this
// #define DEBUG_LED_PIN F7
-/* PMW3360 Settings */
-#define POINTING_DEVICE_CS_PIN B0
-
#define ENCODER_BUTTON_COL 1
#define ENCODER_BUTTON_ROW 0
@@ -41,6 +38,3 @@
#define ENCODER_HIGH_THRES_B 90
/* Custom encoder needs to specify just how many encoders we have */
#define NUM_ENCODERS 1
-
-#define ENCODER_A_PINS { F4 }
-#define ENCODER_B_PINS { F0 }
diff --git a/keyboards/ploopyco/trackball_thumb/info.json b/keyboards/ploopyco/trackball_thumb/info.json
index e27bf47252..7e93296d24 100644
--- a/keyboards/ploopyco/trackball_thumb/info.json
+++ b/keyboards/ploopyco/trackball_thumb/info.json
@@ -1,22 +1,22 @@
{
- "keyboard_name": "PloopyCo Thumb Trackball",
+ "keyboard_name": "Thumb Trackball",
+ "manufacturer": "Ploopy",
"url": "www.ploopy.co",
"maintainer": "ploopyco",
- "manufacturer": "Ploopy Corporation",
- "processor": "atmega32u4",
- "bootloader": "atmel-dfu",
"usb": {
"vid": "0x5043",
"pid": "0x5C46",
+ "device_version": "0.0.1",
"max_power": 100
},
+ "bootmagic": {
+ "matrix": [0, 3]
+ },
"features": {
"bootmagic": true,
- "command": false,
- "console": false,
"extrakey": true,
"mousekey": true,
- "nkro": true,
+ "nkro": false,
"pointing_device": true,
"encoder": true
},
diff --git a/keyboards/ploopyco/trackball_thumb/post_rules.mk b/keyboards/ploopyco/trackball_thumb/post_rules.mk
new file mode 100644
index 0000000000..0d1a00b89e
--- /dev/null
+++ b/keyboards/ploopyco/trackball_thumb/post_rules.mk
@@ -0,0 +1 @@
+POINTING_DEVICE_DRIVER = pmw3360 \ No newline at end of file
diff --git a/keyboards/ploopyco/trackball_thumb/readme.md b/keyboards/ploopyco/trackball_thumb/readme.md
index 8299c08809..bb870d2003 100644
--- a/keyboards/ploopyco/trackball_thumb/readme.md
+++ b/keyboards/ploopyco/trackball_thumb/readme.md
@@ -3,13 +3,13 @@
It's a DIY, QMK Powered Trackball...for thumb ballers!
* Keyboard Maintainer: [PloopyCo](https://github.com/ploopyco), [Drashna Jael're](https://github.com/drashna/), [Germ](https://github.com/germ/)
-* Hardware Supported: ATMega32u4 8MHz(3.3v)
+* Hardware Supported: ATMega32u4 8MHz(3.3v), Raspberry RP2040
* Hardware Availability: [Store](https://ploopy.co), [GitHub](https://github.com/ploopyco)
Make example for this keyboard (after setting up your build environment):
make ploopyco/trackball_thumb/rev1_001:default:flash
-
+
To jump to the bootloader, hold down "Button 4" (button closest to the USB port).
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/ploopyco/trackball_thumb/rev1_001/config.h b/keyboards/ploopyco/trackball_thumb/rev1_001/config.h
index a648e8e8e4..108a104cdc 100644
--- a/keyboards/ploopyco/trackball_thumb/rev1_001/config.h
+++ b/keyboards/ploopyco/trackball_thumb/rev1_001/config.h
@@ -22,3 +22,9 @@
// They are set as output and pulled high, by default
#define UNUSABLE_PINS \
{ D1, D3, B4, B7, D6, C7, F6, F5, F3, F7 }
+
+/* PMW33XX Settings */
+#define PMW33XX_CS_PIN B0
+
+#define ENCODER_A_PINS { F0 }
+#define ENCODER_B_PINS { F4 }
diff --git a/keyboards/ploopyco/trackball_thumb/rev1_001/keyboard.json b/keyboards/ploopyco/trackball_thumb/rev1_001/keyboard.json
index db12ee6217..04457f19b9 100644
--- a/keyboards/ploopyco/trackball_thumb/rev1_001/keyboard.json
+++ b/keyboards/ploopyco/trackball_thumb/rev1_001/keyboard.json
@@ -1,13 +1,14 @@
{
- "usb": {
- "device_version": "1.0.0"
- },
- "diode_direction": "COL2ROW",
+ "processor": "atmega32u4",
+ "bootloader": "atmel-dfu",
"matrix_pins": {
"direct": [
["D5", "B6", "D4", "D2", "E6", "D7"]
]
},
+ "ws2812": {
+ "pin": "B5"
+ },
"rgblight": {
"led_count": 3,
"max_brightness": 40,
@@ -16,8 +17,5 @@
"rainbow_mood": true,
"rainbow_swirl": true
}
- },
- "ws2812": {
- "pin": "B5"
}
}
diff --git a/keyboards/ploopyco/trackball_thumb/rev1_001/readme.md b/keyboards/ploopyco/trackball_thumb/rev1_001/readme.md
index 5a5f0563e7..658a71df0a 100644
--- a/keyboards/ploopyco/trackball_thumb/rev1_001/readme.md
+++ b/keyboards/ploopyco/trackball_thumb/rev1_001/readme.md
@@ -1,3 +1,3 @@
-This is the R1.001+ version of the Thumb. Future versions may have other features.
+See the [main readme](../readme.md) for more details.
-See the [main readme](../readme.md) for more details.
+This is for the R1.001 version of the Thumb. It's easily distinguishable from the R1.002+ versions of the Thumb because it has an ATmega32u4 on the board. \ No newline at end of file
diff --git a/keyboards/ploopyco/trackball_thumb/rev1_001/rules.mk b/keyboards/ploopyco/trackball_thumb/rev1_001/rules.mk
new file mode 100644
index 0000000000..3437a35bdf
--- /dev/null
+++ b/keyboards/ploopyco/trackball_thumb/rev1_001/rules.mk
@@ -0,0 +1,2 @@
+# Processor frequency
+F_CPU = 8000000
diff --git a/keyboards/ploopyco/trackball_thumb/rev1_002/config.h b/keyboards/ploopyco/trackball_thumb/rev1_002/config.h
new file mode 100644
index 0000000000..e25f50604e
--- /dev/null
+++ b/keyboards/ploopyco/trackball_thumb/rev1_002/config.h
@@ -0,0 +1,32 @@
+/* Copyright 2024 Colin Lam (Ploopy Corporation)
+ * Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <[email protected]>
+ * Copyright 2019 Sunjun Kim
+ *
+ * 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 UNUSABLE_PINS \
+ { GP1, GP3, GP4, GP6, GP8, GP10, GP11, GP14, GP18, GP20, GP22, GP24, GP25, GP27, GP29 }
+
+/* PMW3360 Settings */
+#define PMW33XX_LIFTOFF_DISTANCE 0x00
+#define PMW33XX_CS_PIN GP5
+#define SPI_SCK_PIN GP2
+#define SPI_MISO_PIN GP0
+#define SPI_MOSI_PIN GP7
+
+#define ENCODER_A_PINS { GP28 }
+#define ENCODER_B_PINS { GP26 }
diff --git a/keyboards/ploopyco/trackball_thumb/rev1_002/keyboard.json b/keyboards/ploopyco/trackball_thumb/rev1_002/keyboard.json
new file mode 100644
index 0000000000..a3a50a536e
--- /dev/null
+++ b/keyboards/ploopyco/trackball_thumb/rev1_002/keyboard.json
@@ -0,0 +1,25 @@
+{
+ "processor": "RP2040",
+ "bootloader": "rp2040",
+ "usb": {
+ "device_version": "1.0.0"
+ },
+ "diode_direction": "COL2ROW",
+ "matrix_pins": {
+ "direct": [
+ ["GP17", "GP16", "GP15", "GP21", "GP23", "GP19"]
+ ]
+ },
+ "rgblight": {
+ "led_count": 1,
+ "max_brightness": 40,
+ "animations": {
+ "breathing": true,
+ "rainbow_mood": true,
+ "rainbow_swirl": true
+ }
+ },
+ "ws2812": {
+ "pin": "GP12"
+ }
+}
diff --git a/keyboards/ploopyco/trackball_thumb/rev1_002/readme.md b/keyboards/ploopyco/trackball_thumb/rev1_002/readme.md
new file mode 100644
index 0000000000..c1e95d9a8e
--- /dev/null
+++ b/keyboards/ploopyco/trackball_thumb/rev1_002/readme.md
@@ -0,0 +1,3 @@
+See the [main readme](../readme.md) for more details.
+
+This is for the R1.002+ version of the Thumb. It's easily distinguishable from the previous versions of the Thumb because it has an RP2040 on the board.
diff --git a/keyboards/ploopyco/trackball_thumb/rules.mk b/keyboards/ploopyco/trackball_thumb/rules.mk
deleted file mode 100644
index 0bd44d316a..0000000000
--- a/keyboards/ploopyco/trackball_thumb/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-# Processor frequency
-F_CPU = 8000000
-
-POINTING_DEVICE_DRIVER = pmw3360
-
-DEFAULT_FOLDER = ploopyco/trackball_thumb/rev1_001