Repository navigation
GUI #79
PeasyB
started this conversation in
Show and tell
GUI
#79
Replies: 1 comment
|
Hi there 🤗 |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Greetings!
When I went from EasyEDA to using Kicad as my go-to ECAD software, one thing I missed was EasyEDA's awesome library.
It was therefore a big relief for me when I found uPesy's Easyeda2Kicad project. It has helped me immensely and saved me a lot of time. However, I found it tedious that I could only interact with it through the command line. Especially when I had many components I wanted to convert. I also recall there being a thread here somewhere discussing a GUI for this project.
As a hardware designer, having little to no experience with coding, I wanted to develop and strengthen my knowledge in this realm. So went to work on picking up Python, quickly discovered TKinter and immediately thought of this Kicad tool I had used so much, and how it could really do with a GUI. This took me on a journey of learning (having a small problem-solving project to work is an awesome way to learn new skills, no matter the topic!). TKinter was great in that it comes bundled with Python, however its Windows 95 appearance makes it about as appealing as tasteless, dry stale bread. I was therefore happy to discover Ttkbootstrap, a wrapper for TKinter that makes it look, in my opinion, very sexy and modern-looking. The downside is that it adds a dependency, but I figured it was worth it. I think I can make a version with vanilla TKinter appearance at a later time anyways.
TLDR; uPesy made an awesome tool for Kicad that got me into programming, and inspired me to make something that (hopefully) can be used by many others! Thank you, uPesy!
The way the UI works is that it simply interacts with Easyeda2kicad by running commands in the command line, just like the user would manually do it without UI. It takes advantage of the fact that LCSC part numbers all start with the letter "C", and uses regex to separate the numbers and put them in a list. When the user hits the convert button, it will run the easyeda2kicad command for each item in the list and append parameters according to the selected checkbuttons. As you can see, I've added the option to choose an output folder to put the files in. However, because we don't yet have this in Easyeda2kicad, this feature of the UI currently doesn't do anything.
I have yet to do some polishing (I haven't looked too much at the different parameters other than full, symbol, footprint and 3D yet), and add some error handling. Other than that the UI works for me, and I'm using it with much success.
I intend to release my code after I've made the aforementioned additions. It's a single *.py file, probably containing as many bad practice and badly read writing that you can expect from a novice coder that has only touched programming for a couple of months.
I hope this contribution will be useful and time saving for many Kicad users, and I'll take every constructive feedback with great appreciation.
All reactions