My EasyEDA to KiCad conversion tool

I started learning C++ about a year and a half ago, in my spare time, and it’s still the only language I can code in fluently. Though I’m not really good at it, I started LC2KiCad project a year ago as I think there eventually will be people who need to convert EasyEDA designs to KiCad (and it is not supported by either side). Project is at https://github.com/RigoLigoRLC/LC2KiCad.

Also available as AUR package aur/lc2kicad

I’m not good at designing architecture for programs. So this project is basically a practice playground for all that I’ve learned through C++ Primer Plus book. If anyone is willing to carry out a big overhaul then it’d be really awesome :smirk:

Things that works right now are:

  • symbols (arc is still funky)
  • PCBs (with no SVG graphics support, like images, text and something else)
  • footprints (fill regions will be discarded because KiCad doesn’t allow them)

Currently experiencing some problems in understanding V6 library format so I just stopped migrating to new format. There’s also some difficulties identifying sub-parts in EasyEDA schematics.


(This one is a WIP screenshot taken last year; footprint from a user in LCEDA chat, with permission)

(A recently converted board of my friend, with permission)

Hope this is going to be useful for someone else; as a hobbyist I originally started with EasyEDA and switched to KiCad after on for being too laggy on larger boards.

P.S. Why is it called LC2KiCad? Because there’s already easyeda2kicad project, and LCSC owns EasyEDA. Also because it’s just called LCEDA in China.

4 Likes

I sometimes use EasyEDA to make footprints though, cause it’s got this nice distance constraint feature they called “smart dimensions” to organize pads. And then export to KiCad with the tool. This might not be a good example use case but I’ll just put it here.


This is very nice! After v6 releases, it would be great if you wanted to bring this into the KiCad codebase. We can help you with the tie-ins to our plugin architecture.

1 Like

I agree. Having the code already written in C++ should make the integration into kicad fairly straightforwad.

Main problem is… LC2KiCad codebase is now simply a giant block of mess :joy: hacks are everywhere, the overall architecture is already falling apart so I’d have to rewrite by looking at these properly implemented importers integrated into KiCad.

There’s also a minor issue: is there importer invoing functionality in footprint/symbol import dialog? I currently only see KiCad formats there and don’t really know if this could work.

Thanks!

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.