-
-
Notifications
You must be signed in to change notification settings - Fork 40.2k
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
VIA support for Planck Rev6 #9144
Conversation
create pull request
@jackhumbert wanted me to tag him for approval of the vendor / product IDs before merging. |
Co-authored-by: Joel Challis <[email protected]>
Co-authored-by: Joel Challis <[email protected]>
Co-authored-by: Joel Challis <[email protected]>
Co-authored-by: Joel Challis <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM pending approval of the Vendor and Product IDs.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is going to be a problem with this.
Rev6 uses a different matrix from all the others (rev1-rev5, ez).
Since the PID is defined at the keyboard level, it will be used for all revisions, VIA will recognize them but will not work.
My proposal is to:
- either move the PID definition to the revision level for each board
- or use one PID for rev6 (defined at the rev level) and another one for all the other boards. (since they have the same matrix layout, one VIA json should work for them)
@Erovia it seems like the latter option would be the easiest to implement as you would only need two JSONs (for now). Perhaps the PID could refer to matrix revision rather than actual product. @jackhumbert did you have any further thoughts on VID / PID? Thanks for looking at this, everyone! |
In any case, 2 json should be enough. I kinda hate the idea of repeating the same thing 6 different places, but also hate the idea of having 1 exception. ¯\(ツ)/¯ |
Does VIA not read the |
It does not. |
Thanks everyone, I guess that leaves me in a holding pattern until it is decided how to handle PIDs for the multiple Planck matrices. |
Personally I'd like to see VIA take into account the |
The split between the versions happens at the microcontroller level (rev1-5 vs rev6 & ez), so I think we can use these values (all have the Vendor ID of
These were generated with the strings "Planck AVR" and "Planck ARM" using the (somewhat) standard command:
|
Good info, @jackhumbert, thank you. Do you have any thoughts on VendorID? I don't think we can use For @noroadsleft, @Erovia, @fauxpark: Does the microcontroller level distinction get us around this particular block for the purpose of officially supporting VIA for planck? |
I think we should probably also make a distinction between the rev6 (ARM) and EZ, which would be |
It should, I think. The AVR versions have no real differences, other than backlight/rgb support, and bootloader, IIRC. Everything else is the same.
For the Planck EZ, would prefer this, specifically: #define VENDOR_ID 0x3297
#define PRODUCT_ID 0xC6CF |
Would the olkb pcb's have the same VID as the EZ, or is that vendor ID unique to ZSA boards? |
The Vender ID is unique and belongs to ZSA. It shouldn't be used for the OLKB boards (the EZ is a collaboration board between ZSA and OLKB/jack, but is sold and maintained by ZSA) https://www.the-sz.com/products/usbid/index.php?v=0x3297&p=&n= |
Hey all, I'd like to give this a try. Can I compile a firmware from this branch, and expect it to work with the VIA app? I assume this requires a .json file for Via with a keymap, any hints on how I can generate one? |
Here you go: https://github.com/mixedfeelings/keyboards/tree/planck-rev6.1/src/olkb/planck/rev6 I haven't submitted a PR to VIA yet, as I am waiting for the blockers here to get resolved. |
Just to recap, the Planck EZ should remain untouched (it already has its VID/PID set) and these settings for #undef PRODUCT_ID
#define PRODUCT_ID 0xAE01 the Planck Rev 6: #undef PRODUCT_ID
#define PRODUCT_ID 0xA4F9 and the Planck Light: #undef PRODUCT_ID
#define PRODUCT_ID 0xBEA2 I'd like to keep |
Thanks, @jackhumbert! Understood on all the above points, but unfortunately |
Right! Some of that is coming back to me - let's use |
@jackhumbert You beat me too it, thank you so much!! |
For reference, is there a Product ID to use for the Planck THK (#12597)? |
|
Co-authored-by: Joel Challis <[email protected]> Co-authored-by: George Wietor <[email protected]> Co-authored-by: Jack Humbert <[email protected]>
Co-authored-by: Joel Challis <[email protected]> Co-authored-by: George Wietor <[email protected]> Co-authored-by: Jack Humbert <[email protected]>
Co-authored-by: Joel Challis <[email protected]> Co-authored-by: George Wietor <[email protected]> Co-authored-by: Jack Humbert <[email protected]>
Co-authored-by: Joel Challis <[email protected]> Co-authored-by: George Wietor <[email protected]> Co-authored-by: Jack Humbert <[email protected]>
Description
Adds simple VIA support for Planck Rev6 with a default QWERTY layout
Types of Changes
Issues Fixed or Closed by This PR
Checklist