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

[Keyboard] Add PloopyCo devices #7935

Merged
merged 35 commits into from
Sep 27, 2020
Merged

Conversation

drashna
Copy link
Member

@drashna drashna commented Jan 18, 2020

Description

This adds QMK Firmware support for the PloopyCo Trackball and Mouse to the repo, as the first mouse/trackball. (fight me)

This uses spi_master, as well. It allows for decent amount of customization options, and some unique behavior.

Types of Changes

  • Keyboard (addition or update)

Checklist

  • My code follows the code style of this project.
  • [no] I have read the CONTRIBUTING document.
  • I have tested the changes and verified that they work and don't break anything (as well as I can manage).

@drashna drashna requested a review from a team January 18, 2020 23:54
@noroadsleft
Copy link
Member

We'd have to rewrite a bunch of the makefile logic to put this in qmk_firmware/(mice|mouses)/ or something, wouldn't we?

@drashna
Copy link
Member Author

drashna commented Jan 20, 2020

Probably. Or at least a decent amount.

The other issue ... it would be nice to be able to have a way to disable the HID Keyboard endpoint, and just have the HID mouse endpoint.

@germ
Copy link
Contributor

germ commented Jan 21, 2020

Whynot just use SHARED_ENDPOINT? That's how I get around my devices needing 3 for serial

@fauxpark
Copy link
Member

@germ that doesn't disable the 6KRO interface though, their report data is just sent through the same USB endpoint, and differentiated with report IDs.
I'm not sure we want to disable it, anyway - I have a G700s and find it extremely useful to have the side buttons do Back/Forward/Ctrl+T/Ctrl+W etc. so there is definitely a use case for it on mice.

@drashna
Copy link
Member Author

drashna commented Jan 24, 2020

It may be nice to disable it, or at least have the option. But yeah, having the "macro" support and stuff would be nice too.

Either way, any issues with the code?

@stale
Copy link

stale bot commented Apr 24, 2020

Thank you for your contribution!
This pull request has been automatically marked as stale because it has not had activity in the last 45 days. It will be closed in 30 days if no further activity occurs. Please feel free to give a status update now, or re-open when it's ready.
For maintainers: Please label with awaiting review, breaking_change, in progress, or on hold to prevent the issue from being re-flagged.

@stale
Copy link

stale bot commented Apr 24, 2020

Thank you for your contribution!
This pull request has been automatically marked as stale because it has not had activity in the last 45 days. It will be closed in 30 days if no further activity occurs. Please feel free to give a status update now, or re-open when it's ready.
For maintainers: Please label with awaiting review, breaking_change, in progress, or on hold to prevent the issue from being re-flagged.

Copy link
Member

@tzarc tzarc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also needs a valid info.json.

keyboards/mouse/ploopyco_trackball/config.h Outdated Show resolved Hide resolved
keyboards/mouse/ploopyco_trackball/config.h Outdated Show resolved Hide resolved
keyboards/mouse/ploopyco_trackball/ploopyco_trackball.c Outdated Show resolved Hide resolved
keyboards/mouse/ploopyco_trackball/ploopyco_trackball.h Outdated Show resolved Hide resolved
keyboards/mouse/ploopyco_trackball/spi.c Outdated Show resolved Hide resolved
keyboards/mouse/ploopyco_trackball/spi.c Outdated Show resolved Hide resolved
keyboards/mouse/ploopyco_trackball/spi.c Outdated Show resolved Hide resolved
keyboards/mouse/ploopyco_trackball/spi.h Outdated Show resolved Hide resolved
keyboards/mouse/ploopyco_trackball/spi.h Outdated Show resolved Hide resolved
@ameyp
Copy link

ameyp commented Sep 10, 2020

Has this been abandoned?

@drashna
Copy link
Member Author

drashna commented Sep 10, 2020

Nope. I've been meaning to work on it, and get it "up to snuff". I'll probably do that this week.

@drashna drashna changed the title [Keyboard] Add PloopyCo Trackball [Keyboard] Add PloopyCo devices Sep 27, 2020
keyboards/ploopyco/pmw3600.c Outdated Show resolved Hide resolved
keyboards/ploopyco/trackball/trackball.h Outdated Show resolved Hide resolved
keyboards/ploopyco/mouse/mouse.h Outdated Show resolved Hide resolved
@drashna drashna merged commit fbdc65e into qmk:master Sep 27, 2020
tomohisa pushed a commit to tomohisa/qmk_firmware that referenced this pull request Sep 28, 2020
* 'master' of https://github.com/qmk/qmk_firmware: (3643 commits)
  Swapparoo of bottom row keys (qmk#10277)
  [Keyboard] Add PloopyCo devices (qmk#7935)
  Keyboard update: SL40 (qmk#10445)
  [keyboard] Add SP-111 support (qmk#10193)
  Add logic for AT90USBxx7 where needed (qmk#10203)
  Trifecta Keymap
  [Docs] Wording & formatting changes in the Tapping Force Hold section of the Tap Hold page + removed trailing whitespaces (qmk#10391)
  `setrgb()`: Use arrow operator (qmk#10451)
  [Keyboard] add Percent Canoe Gen2 (qmk#10344)
  [Keyboard] add hannah65 by Team Mechlovin (qmk#10284)
  Fix Belgian sendstring properly (qmk#10444)
  Add VIA support for lazydesigners/the30 (qmk#10374)
  [Keyboard] add duckboard by doodboard (qmk#10318)
  Fix Belgian sendstring file (qmk#10443)
  [Keyboard] added Bolsa65 keyboard by FJLabs (qmk#10394)
  CLI/Doctor: Print QMK_HOME (qmk#10398)
  Add Wyvern Keyboard (qmk#10378)
  Adding Bear 65 Ergo Keyboard To QMK (qmk#10384)
  VIA Support: Gray Studio HB85 (qmk#10329)
  format code according to conventions [skip ci]
  ...
rgoulter pushed a commit to rgoulter/qmk_firmware that referenced this pull request Oct 4, 2020
* Initial Commit for Ploopyco Trackball

This is a WIP at this point.  Most of it compiles, but the SPI commands are non-functioning as they come from Arduino, so don't exist in LUFA

* Convert SPI commands from arduino to LUFA

But I have no idea if this is actually correct or not

* Update keyboard readme

* Clean up ploopyco trackball

* Update readme

* Update mouse key stuff

* last minutue cleanup

* Add caveat about scroll wheel

* Fixup to code

* Additional fixup

* Add movement multiplier

* Rename folders

* mid changes

* temp

* Got it working!!!!!

* Additional cleanup of code

* Make unused pin calls more compact

* Rotation info

* Add debouncing checks

* Make everything replaceable

* Add info.json

* Include ISP flashing info

* Better handling for user customization

* Reconfigure CPI stuff

* fix issues with debug printing

* Fix tiny scroll issue

* Add and update scroll code from ploopy mouse

* Update licensing

* Add PloopyCo Mouse

* Cleanup and layout stuff

* Move common files to main folder for reuse

* Increase polling rate

* Update image for mouse

* Apply changes from code review

* Add VIA support
@drashna drashna deleted the trackball/ploopyco branch October 6, 2020 17:49
@drashna drashna mentioned this pull request Oct 6, 2020
6 tasks
kjganz pushed a commit to kjganz/qmk_firmware that referenced this pull request Oct 28, 2020
* Initial Commit for Ploopyco Trackball

This is a WIP at this point.  Most of it compiles, but the SPI commands are non-functioning as they come from Arduino, so don't exist in LUFA

* Convert SPI commands from arduino to LUFA

But I have no idea if this is actually correct or not

* Update keyboard readme

* Clean up ploopyco trackball

* Update readme

* Update mouse key stuff

* last minutue cleanup

* Add caveat about scroll wheel

* Fixup to code

* Additional fixup

* Add movement multiplier

* Rename folders

* mid changes

* temp

* Got it working!!!!!

* Additional cleanup of code

* Make unused pin calls more compact

* Rotation info

* Add debouncing checks

* Make everything replaceable

* Add info.json

* Include ISP flashing info

* Better handling for user customization

* Reconfigure CPI stuff

* fix issues with debug printing

* Fix tiny scroll issue

* Add and update scroll code from ploopy mouse

* Update licensing

* Add PloopyCo Mouse

* Cleanup and layout stuff

* Move common files to main folder for reuse

* Increase polling rate

* Update image for mouse

* Apply changes from code review

* Add VIA support
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants