-
Notifications
You must be signed in to change notification settings - Fork 715
why arduino footprints is mirror-like in the module.pretty. #864
Comments
Hello @shizi599, I could not verify that the foorprints are mirror-like (Arduino_Nano*, Arduino_Uno_R2*, Arduino_Uno_R3*). Could you explain/show what you mean? |
It's true, the footprints are mirrored. An arduino looks like this : The footprint looks like this : It is quite obviously mirrored about the X axis. I guess the idea is that if you are creating a shield, you might flip the arduino footprint so that the connectors are on the bottom of the shield. The KiCad footprints are weird and no one else does it like this, personally I use my own versions. |
When I designed these footprint the decision for this "mirroring" was done consciuously: The idea is to see the Arduino as a component like all other components. Then the component should reside on top of the PCB (that's how we make the KiCAD library and if you want it on the bootom ... you just flip, as with all other components/footprints). Therefore it appears "mirrored", because you would have pinheaders on the PCB that you plug the Arduino into. If you want to create a Shield, the Arduino is usually on the bottom. In that case you can use the footprint+flip, or youcreate a shield template, which simply contains the connectors on the bottom in the right positions |
I assumed it was deliberate.
The problem is literally no one actually does that. People design a shield which has the same orientation as the Arduino. If you flip the footprint, the silkscreen is then on the wrong side. Was omitting the SPI connector deliberate too? It's a shame, because the official KiCad Arduino footprints are basically useless. I really don't understand why we have to do it a different way to everyone else, based on one person's whim. |
If you want to design a shield, why would you not use the arduino templates? I think the argumentation makes sense: Templates give you the ability to design your own shield which attach to the arduino. Those are different usecases. |
I took the time to review the modules in the library. The footprints are for the cases in which the modules are daughterboards, because footprints are always something mounted on the pcb, not the other way around. @bobc Could you please link me to the standard way, or the way everyone else does it? Imho the way this is handled here is logical and consistent. But perhaps I did not take everything into consideration. This has multiple reasons, e.g.:
TL;DR: I only found three points I would address.
Just because one is accustomed to something does not mean it is logical or meaningful. So for the review:
Notes:
Notes:
Notes: Reference: https://www.farnell.com/datasheets/1682209.pdf Notes:
The footprint is ok.
Notes: Reference: https://www.st.com/en/evaluation-tools/nucleo-f446ze.html Notes: Thanks for everyone who read through my essay. The logic is consistent but should probably be better communicated as (although it is really the only consitens interpretation imo):
|
Is this issue settled? I think important steps and notes from this things are:
I will create a new issue that tracks these points, as I am currently working on templates myself. @shizi599 do you have anything to add or do you disagree with my previous assessment? |
No description provided.
The text was updated successfully, but these errors were encountered: