IPC-2581 bottom pads are (sometimes) mirrored and rotated incorrectly vs. Valor/CST/Cadence/circuithub.com
Description
IPC-2581 export is expected to match other PCB analysis and manufacturing tools, in this case Valor, but this issue is the same with Cadence, CST Studio, and circuithub.com
KiCad 8.0.8 produces copper pads that are incorrectly mirrored unless the component and pad angle add up to zero (mod 360 degrees), then rotated incorrectly (probably correct angle * -1)
In this demo, an SOT-23-5 footprint was modified to have pads with no mirror symmetry. The silkscreen indicating the pad shape is completely separate from the footprint, and indicates the ideal orientation and mirroring of the pads.
KiCad bottom silk + copper + Courtyard
Valor bottom silk + copper + component body
Pad 1-3 are mirrored everywhere except U10
Pad 4-5 are mirrored everywhere except U14
CST Studio bottom copper + component body
Matches Valor
Steps to reproduce
- Use pads that have no mirror symmetry (we do this for newer footprints regularly)
- Place component on bottom side with a total pad rotation other than zero
KiCad Version
Application: KiCad x64 on x64
Version: 8.0.8, release build
Libraries:
wxWidgets 3.2.6
FreeType 2.13.3
HarfBuzz 10.0.1
FontConfig 2.15.0
Platform: Windows 10 (build 19045), 64-bit edition, 64 bit, Little endian, wxMSW
OpenGL: Intel, Intel(R) UHD Graphics P630, 4.6.0 - Build 31.0.101.2115
wxWidgets: 3.2.6 (wchar_t,wx containers)
Boost: 1.86.0
OCC: 7.8.1
Curl: 8.10.1-DEV
ngspice: 44
Compiler: Visual C++ 1942 without C++ ABI
Build settings: