Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updates to Ploopy Classic, Mouse, and Thumb for RP2040 hardware upgrade #24880

Open
wants to merge 22 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 10 commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
f49fde0
added r1.007 definition for ploopy classic trackball; reorganized code
ploopyco Dec 10, 2024
f94e472
added r1.007 definition for ploopy classic trackball; reorganized code
ploopyco Dec 10, 2024
6538d2f
Merge branch 'ploopyco/rp2040-updates' of https://github.com/ploopyco…
ploopyco Jan 15, 2025
510d789
added r1003 version of mouse, with new rp2040 changes
ploopyco Jan 15, 2025
2479fcc
added thumb rp2040 changes
ploopyco Jan 15, 2025
775b207
fixed thumb issues
ploopyco Jan 23, 2025
e29309a
added r1.007 definition for ploopy classic trackball; reorganized code
ploopyco Dec 10, 2024
5b1ea44
added r1003 version of mouse, with new rp2040 changes
ploopyco Jan 15, 2025
bfec432
added thumb rp2040 changes
ploopyco Jan 15, 2025
accf6a9
using fixes
ploopyco Jan 29, 2025
9ffd8e7
Update keyboards/ploopyco/mouse/rev1_002/config.h
ploopyco Feb 3, 2025
6986b1f
Update keyboards/ploopyco/mouse/rev1_002/rules.mk
ploopyco Feb 3, 2025
0f700e4
Update keyboards/ploopyco/trackball/rev1_004/config.h
ploopyco Feb 3, 2025
f9403e5
Update keyboards/ploopyco/trackball/rev1_004/rules.mk
ploopyco Feb 3, 2025
2e2d30d
Update keyboards/ploopyco/trackball/rev1_005/config.h
ploopyco Feb 3, 2025
57bb1db
Update keyboards/ploopyco/trackball/rev1_005/rules.mk
ploopyco Feb 3, 2025
d3e8caf
Update keyboards/ploopyco/trackball_thumb/rev1_001/config.h
ploopyco Feb 3, 2025
d19b833
Update keyboards/ploopyco/trackball_thumb/rules.mk
ploopyco Feb 3, 2025
0b65152
Update keyboards/ploopyco/mouse/rules.mk
ploopyco Feb 3, 2025
a0237f1
Update keyboards/ploopyco/trackball_thumb/rev1_001/rules.mk
ploopyco Feb 3, 2025
f51e9f1
fixes
ploopyco Feb 5, 2025
971e559
lint and ci fixes
ploopyco Feb 7, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 0 additions & 11 deletions keyboards/ploopyco/mouse/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,25 +18,14 @@

#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
//#define NO_ACTION_ONESHOT

// #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 }
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"keyboard_name": "Mouse",
"manufacturer": "PloopyCo",
"manufacturer": "Ploopy",
"url": "www.ploopy.co",
"maintainer": "drashna",
"usb": {
Expand All @@ -9,6 +9,9 @@
"device_version": "0.0.1",
"max_power": 100
},
"bootmagic": {
"matrix": [0, 3]
},
"features": {
"bootmagic": true,
"extrakey": true,
Expand All @@ -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"
},
Expand Down
6 changes: 3 additions & 3 deletions keyboards/ploopyco/mouse/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -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).

Expand Down
33 changes: 33 additions & 0 deletions keyboards/ploopyco/mouse/rev1_002/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
* 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 }
ploopyco marked this conversation as resolved.
Show resolved Hide resolved
21 changes: 21 additions & 0 deletions keyboards/ploopyco/mouse/rev1_002/keyboard.json
Original file line number Diff line number Diff line change
@@ -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
}
}
}
3 changes: 3 additions & 0 deletions keyboards/ploopyco/mouse/rev1_002/readme.md
Original file line number Diff line number Diff line change
@@ -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.
2 changes: 2 additions & 0 deletions keyboards/ploopyco/mouse/rev1_002/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Processor frequency
F_CPU = 8000000
ploopyco marked this conversation as resolved.
Show resolved Hide resolved
32 changes: 32 additions & 0 deletions keyboards/ploopyco/mouse/rev1_003/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
/* Copyright 2024 Colin Lam (Ploopy Corporation)
* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
* 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 }
4 changes: 4 additions & 0 deletions keyboards/ploopyco/mouse/rev1_003/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"processor": "RP2040",
"bootloader": "rp2040"
}
23 changes: 23 additions & 0 deletions keyboards/ploopyco/mouse/rev1_003/keyboard.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"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"
}
}
3 changes: 3 additions & 0 deletions keyboards/ploopyco/mouse/rev1_003/readme.md
Original file line number Diff line number Diff line change
@@ -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.
5 changes: 2 additions & 3 deletions keyboards/ploopyco/mouse/rules.mk
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
# Processor frequency
F_CPU = 8000000

POINTING_DEVICE_DRIVER = pmw3360

DEFAULT_FOLDER = ploopyco/mouse/rev1_003
ploopyco marked this conversation as resolved.
Show resolved Hide resolved
11 changes: 1 addition & 10 deletions keyboards/ploopyco/trackball/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -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 }
5 changes: 2 additions & 3 deletions keyboards/ploopyco/trackball/info.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"keyboard_name": "Trackball",
"manufacturer": "PloopyCo",
"keyboard_name": "Classic Trackball",
"manufacturer": "Ploopy",
"url": "www.ploopy.co",
"maintainer": "drashna",
"usb": {
Expand All @@ -12,7 +12,6 @@
"bootmagic": {
"matrix": [0, 3]
},

"features": {
"bootmagic": true,
"extrakey": true,
Expand Down
25 changes: 16 additions & 9 deletions keyboards/ploopyco/trackball/readme.md
Original file line number Diff line number Diff line change
@@ -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.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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 }
ploopyco marked this conversation as resolved.
Show resolved Hide resolved
2 changes: 2 additions & 0 deletions keyboards/ploopyco/trackball/rev1_004/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Processor frequency
F_CPU = 8000000
ploopyco marked this conversation as resolved.
Show resolved Hide resolved
9 changes: 9 additions & 0 deletions keyboards/ploopyco/trackball/rev1_005/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -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 }
ploopyco marked this conversation as resolved.
Show resolved Hide resolved
4 changes: 2 additions & 2 deletions keyboards/ploopyco/trackball/rev1_005/readme.md
Original file line number Diff line number Diff line change
@@ -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.
2 changes: 2 additions & 0 deletions keyboards/ploopyco/trackball/rev1_005/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Processor frequency
F_CPU = 8000000
ploopyco marked this conversation as resolved.
Show resolved Hide resolved
32 changes: 32 additions & 0 deletions keyboards/ploopyco/trackball/rev1_007/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
/* Copyright 2024 Colin Lam (Ploopy Corporation)
* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
* 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 }
4 changes: 4 additions & 0 deletions keyboards/ploopyco/trackball/rev1_007/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"processor": "RP2040",
"bootloader": "rp2040"
}
Loading