I am about to create a new board, and since this is a RF board, and there’s a very good reference design from ST, albeit done in Altium, I thought I should test to import it to KiCad.
Well - it worked over my expectations, even the 3d view looks proper, so this is a great start.
Annotation of schematics worked fine.
But then I have issues with so much else, from schematics grid warnings, foot prints missing to linking the schematics to the PCB.
So, I am close to give up on this, and start from scratch, drawing the schematics and PCB manually, creating missing components.
Unless…
There’s a trick that I am missing, to connect PCB and schematics and work through the errors and warnings?
I am a relative newbie in KiCad, so it is highly likely that I am missing some steps.
For a small board where you don’t care too much about matching the existing layout as closely as possible for EMC reasons I would say maybe . . . but as you are quite new to KiCad I would also say no . . . you will learn a lot in fixing all those little issues.
OK, maybe I’ll give it some more try then. I like to learn, but I guess I don’t know what should be expected.
First question would be, if there’s any way to retrieve the footprints from the PCB KiCad converted from the Altium job? Or should I simply bite the bullet, and use existing KiCad footprints as much as possibe, and then create the ones missing? Or should I substitute the missing components altogether?
It’s been a while (a year or so) when I last imported an altium schematic & PCB into KiCad and back then it worked quite well. But back then (and now still brobably) you imort the schematic and the PCB separately, and not the “project”. As a result, KiCad does looses the connection between schematic symbols and the footprints on the PCB, and this is probably the problem you encountered too.
To fix it, the normal method is to use Update PCB from Schematic [F8] with the option: Re-link footprints to schematic symbols based on their reference designators. Maybe there are some other issues too, but they are easily fixable if you have a bit more KiCad experience. There is definitely no need to:
I downloaded the project you linked to, and fiddled a bit with it.
Some things are a bit weird in this project.
First something simple. I attempted to fix the grid issue in the usual way by selecting everything in the schematic and execute Align Elements to grid from the context menu, but that did not work this time. Then I noticed the grid was set to metric in the schematic editor, and that does not work in KiCad (Why does KiCad even allow this?) So I set the grid to mill, and those grid warnings went away.
After that I did a few rounds of Update PCB from Schematic [F8] and Update Schematic from PCB, and also exported the footprints to Library_2.pretty, updated the schematic with those links and exported the symbols to Library_2.pretty/Library_2.kicad_sym. I did that twice (First to Library.pretty), but after that DRC still gives: Warning: Footprint ‘XXX’ does not match copy in library ‘Library_2’ And it does so for (nearly?) all footprints. I’m not sure why.
I’ve put around half an hour into this. It “mostly works” now, but there are still issues. I’ve now reached the limit of the time I want to put into this. If you wish, you can continue from:
Most issues are related to text and overlapping silkscreen (KiCad is a bit annoying in that regard). I also removed all altium files from this zipped project to make the zip file smaller. You’ve already got those files.
The Kicon 2023 task was very useful, and actually, the most important finding is that one have to start the PCB and schematic editors outside the “project program”. This was messing stuff up for me greatly, until I realized.
Well, anyway, I spent a lot of time today, trying to convert this board, and I certainly learnt a lot, so it was useful, but I think tomorrow, I’ll start from scratch, because there’s still over 4-500 warnings and maybe 50-60 errors left in DRC, and I am feeling that I am loosing control over all the changes I have been doing. Honestly, at one low point, I thought of putting the job out to an Altium consultant.
Hopefully, tomorrow I have more energy again.
Wow, while I am writing this, I see that you Paul have also had a go at it! Thanks a bunch!
I am too tired to start this again now (getting late here), but I’ll have a look at your progress first thing in the morning. I’m sure you have gotten much further than me, even though I spent many hours with this.
Yes, I also have a lot of silkscreen issues, with font size warnings and what not.
If this was my project and I wanted to continue with it, my next step would be to replace most of the symbols and footprint with native KiCad parts. That would fix most of the font and silkscreen issues, and the project has to be checked anyway. I also noticed that a bunch of the capacitors did not have any values but I did not look into that.
I can not say in which order I clicked the KiCad buttons, I did most things 3 or 4 times. This project did give me some more trouble then other altium projects, but I’m a bit fuzzy lately and can’t recall much details. You should be able to continue from my upload quite easily though.
Even so. The schematics grid alignment are still messed up in my work, so you have given me a lot of solutions and clues for why my day was tougher than most.
It is good to know, that this was worse to convert than the average Altium job, that gives me some extra strength.
I’ll see if I can change the symbols and footprints, the good is that there are not too many of them.
One thing that I did not understand, one of the last before I shut off my work computer, was that I deleted a component, and its associated connections in the schematic editor, annotated and updated it from the PCB, but still both the component, its traces and even the net name was present.
I had to remove/delete them manually. But maybe this is how it is in KiCad. In previous CAD softwares I have used, they tend to disappear automatically. Or maybe something is messed up in my job now, and KiCad is as confused as I am…
It may be worthwhile to put this project though the new Altium Project importer. I had some weird issues and right after the import KiCad (V8.0.8) was reacting very slow. I also had a very weird thing where the mouse pointer moved to even outside of the schematic editor window, but I doubt that would be repeatable.
I think this sounds good. Not sure I can wait a week, but I’ll try. Maybe I can shift to another small board in the mean time. Since I’m a relative newcomer, I’d like to keep using KiCad, so much that I get enough proper hang of it, to not forget between the sessions.
But I see now that Project importer is heading for v. 10, given that it is so early on, I presume v10 might not be good to use for daily work. At this point (after project importing), can I simply continue with version 9, if needed (or will there be file format incompatibilities)?
Maybe not so easy to answer for you at this point in time.
I decided to build it, but it takes forever, since make defaulted to one job, and I don’t dare to abort now, (73%). Once it is done, I can at least try and see if it is the way forward, or if I should return to 8.06.
OK, great, so this build was still on v9, so I can hopefully use it going further.
However, it did not work fully;
The board was imported, and the schematic. But it now is failing on some non-existing “MB1582.SCHLIB” that is not available in the directory. Which I guess is the reason that some components in the 3d viewer of board are missing.
If I import in a similar fashion of how I did in 8.06 (from within the PCB editor), they are also missing. So I guess this is some kind of bug?
The errors and the warnings looks to be similar.
Edit: There’s also some cli output, that might be related;
*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug