Skip to content

[Bug]: Wrong rotation applied to EasyEDA footprints - transformations.csv patterns match dimension-based names #231

@Steffen-W

Description

@Steffen-W

Preflight Checklist

  • I have searched the issue tracker for a bug report that matches the one I want to file, without success.

Fabrication Toolkit Version

5.2.0

KiCad Version

9.0.7

What operating system are you using?

Ubuntu

Operating System Version

No response

What arch are you using?

None

Last Known Working Fabrication Toolkit version

5.2.0

Expected Behavior

Footprints imported from EasyEDA/LCSC (e.g. via easyeda2kicad) should not receive any additional rotation offset from transformations.csv. Since EasyEDA and JLCPCB share the same coordinate system and reference orientation, these footprints are already correctly oriented for JLCPCB assembly at 0° — no correction should be applied.

Actual Behavior

EasyEDA footprints use a dimension-based naming convention (e.g. SOT-23-3_L2.9-W1.3-P1.90-LS2.4-BR) that matches existing regex patterns in transformations.csv (e.g. ^SOT-23 → +180°). As a result, an unintended rotation offset is applied, causing the component to be assembled 180° rotated on the PCB. The user is forced to manually correct the rotation in the JLCPCB order portal after upload.

Additional Information

EasyEDA footprint names follow a consistent pattern: _L-W-...
(e.g. SOT-23-3_L2.9-W1.3-P1.90-LS2.4-BR, QFN-32_L5.0-W5.0-P0.50-TL-EP3.7).
This dimension-based suffix reliably distinguishes them from KiCad standard library
footprints (e.g. SOT-23-3, QFN-32-1EP_5x5mm_P0.5mm) which the existing
transformations.csv patterns were designed for.

A suggested fix is to add a single catch-all rule at the top of transformations.csv
that matches the EasyEDA naming pattern and applies 0° correction, ensuring it takes
precedence over all other entries (first-match-wins):

"_L[0-9][0-9.]*-W[0-9]",0,0,0

Verified with LCSC component C20917 (SOT-23-3_L2.9-W1.3-P1.90-LS2.4-BR): without
this fix the component is assembled 180° rotated; with the fix applied the orientation
is correct.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions