-
Notifications
You must be signed in to change notification settings - Fork 698
Add a buncha boards and add aliasing feature #805
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
Conversation
|
mm im a little unsure about the pink feather rp2040 separate - especially as soon we will only have pink (switching out black) |
|
I figured since we had variations already (such as https://circuitpython.org/downloads?q=Circuit+Playground) and it's a different PID, I would stick with the theme. I can remove it though. |
|
yah plz remove - thank u 🙏 |
|
Will the aliasing feature be documented? I have been trying to figure out how it works and see if it matches my case. Will the aliasing feature of cp.org allow multiple pages to document the different boards but all point to the same CP build? As you can see, my use case is slightly different as the build can run on multiple boards, all a subset of the largest configuration. This is quite different than the same hardware config but a different color PCB. |
Yeah, the alias feature basically tells the board you are adding it to which board it should give you a cp build for. As long as a specific build will run on the other board it should be fine. For instance the PyPortal and PyPortal Pynt are the same build, but the aliasing was done in CircuitPython so they appear to be different builds and would have worked fine here. I'll probably add a section to the guide on adding boards to circuitpython.org. |
|
Generally, I'd just have different builds. It'll be clearer what build someone has if |
tannewt
left a comment
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.
Looks good to me! I want to see the alias used very sparingly. Builds will all have the same board id even if the boards are different.
I agree. :) |
|
@tannewt Agreed on the occasional use of this. I guess it's a matter of keeping a fine balance between having lots of VID/PID requests to projects that allocate USB Product ID for Free Software / Open Hardware plus different CP builds vs different pages in CP.Org. These projects do push back when requests of multiple PIDs are made; especially when it's all for the same firmware. After all, these "open" PIDs are in finite supply... Openmoko commented the following in this PR: Since this is about a single firmware providing the same functionality, one USB ID should be enough. You can still figure out the actual board using USB strings or other USB configuration details. More importantly, we wouldn't want people to add aliases to the Pi Pico to a board that uses a Pi Pico as the controller. (same for all those keyboards that could potentially use the KB2040) |
I think you can currently alias in CP without additional VID/PIDs. I think you just add it here: https://github.com/adafruit/circuitpython/blob/main/docs/shared_bindings_matrix.py |
|
@makermelissa Thanks for the link. I'll need to look into this a whole lot more... I suspect the docs on this would be relatively thin... I will probably need to ask for more... @tannewt Any guidance on why one would prefer aliases here (CP.ORG) vs there (CP build)? |
|
It's mostly a convenience thing here either for boards that are electrically identical or if we wanted an alias and didn't want to wait for a new release of CP. |
|
@jpconstantineau I think having different board ids is valuable. Aliases circumvent that. So, in general, create separate boards for things. We already need to optimize for many boards so having more is fine. To reuse a PID you can add to the whitelist here: https://github.com/adafruit/circuitpython/blob/main/tools/ci_check_duplicate_usb_vid_pid.py#L32 If you are selling your boards, you should really consider purchasing a VID. It'll give you 65k PIDs and you won't burden the open source pools that way. |
|
Here is the guideline the way I understand it: 1 - if a user of your board might have the need to be able to differentiate the board variant using Most cases would fall under the first group... |
|
Ya, I'm skeptical 2 would exist without 1. |
This brings the board count from 254 to 256 by adding variants such as the Pink Feather RP2040, which was accomplished by adding an alias feature. It also brings the blinka boards from 77 to 86 because of the U2IF support.