Altium FootPrint and Model import management

I hereby certify that I am not simply asking someone else to design a footprint for me.

Importing a project from Altium. Tried several strategies and ended up by coincidence the same as recommended in the help file. So I have the Schematics imported and the the PCB imported. I was impressed that symbols, objects and footprints were imported automatically. I am really not at all familiar with Altium file structure.

I cannot edit imported footprints. Neither as applied to the PCB or the original. Attempting to find where KiCad has stored the file is futile. It’s like trying to find the logout menu in Sword Art Online. Additionally I cannot see how any symbol is linked to a footprint. Though I can add a new one from the library. I cannot save out or edit the original. There are no project specific files under footprints, unlike with symbols where there is one library per schematic imported.

Is this a work in progress thing?

2024-06-04. This has been resolved. It started with some of the objects being locked. Became further compounded when the I tried to gain access to them without realizing i had not unchecked the box to allow me to select them. Annoyingly, you cannot select the shadow, so if Silk, courtyard, or any other part (not pads) is not showing the footprint cannot be selected. I thought something was broken, or missing. -It was not.

I would like to make some touch ups to the old PCB without reworking the whole thing.
Will I have to inevitably re-acquire every single symbol, footprint and object?
I am fortunate there are only 33 unique components.

2024-06-04. This has also been resolved. I appreciate that files shared or imported no long need the rescue files. However why the objects remained inaccessible was unclear. Having been reminded that we can export the Symbols and Footprints. This lead directly to a resolution.

Sorry I cannot share the files, they are unpublished private work.
If I have over looked details in the help files as is entirely possible, please remark it and I will look again.

I recognize that most forums, enjoy to see the files being worked with when asking for help. But while this might be best practice in nailing down a bug or glitch, it’s unpaid labor for you, and the person you are helping might not learn what they need too.
Asking for help from peers while under NDA is hard. It’s like talking anything covered by HIPAA. I can talk in broad and general terms but not specifics, nothing that can leak the authors work or expose identity.

This is an auto-generated message that is in place on the “footprints” section of the KiCad.info forum. If I remove it and ask for a footprint to be designed anyway, I understand that I will be subject to forum members telling me to go design my own footprint or referring me to a 3rd party footprint site.

I am not looking to have any one design anything. This is an inquiry as to the state of the import and management functions for Footprints where import from Altium is concerned.

I’m nearing the end of my first iteration of mods to a board that was originally done in Solidworks PCB (re-badged Altium).

Any non-standard symbols I wanted to save I’ve opened the board copy in the symbol editor and then saved it to my own library, then replaced the symbol with the one I’ve just saved, and I’ve done a similar thing for the footprints.

Sadly, if you get the reference to Sword Art Online, the option doesn’t exist. Maybe, it does for the variant you are importing?? It seems to me that there are references to several variants of Altium and it’s files.

I was able to locate the ICs used, most I have already archived knowing that it might be years before KiCad gets them native. But the Headers… On the upside the object and the footprints load. On the downside they are magically locked. Locked Shadow as its listed. So, at this moment the only thing I know to do is to change the entry in Schematic, after locating a suitable alternative footprint. There is a folder of objects, so I hope that after I resolve the footprint the stp will be in that folder.

The whole of KiCad is a work in progress. Every year a mayor update with new features, and a bug fix update (third number in KiCad version numbers) approximately once a month.

Starting from KiCad V6, all used symbols are stored in the schematic itself, and all used footprints are stored in the PCB file of the project. As soon as you have saved a project with the schematic and PCB files, you can delete (backup) the old altium files. KiCad may complain a bit, but it will still be able to show the schematic and PCB.

I’m not sure which help file you are referring to, but I did an experiment with some altium projects too a while back. I used one of the nucleo development boards from ST. From what I can remember my procedure was:

  1. Create KiCad project.
  2. Open altium schematic in KiCad (possibly in “standalone mode”) and save it.
  3. Open altium PCB file in KiCad (possibly in “standalone mode”) and save it.
  4. Open the KiCad project (definitely NOT in “standalone mode”)
  5. Open the KiCad schematic from within the project.
  6. Schematic Editor / Tools / Update PCB from Schematic [F8] and make sure that the checkbox for: Re-link footprints to schematic symbols based on their reference designators is on. Normally KiCad uses UUID’s to link schematic symbols with footprints on the PCB, but this does not work when the schematic and PCB are imported separately, and thus this Re-linking is needed to create matching UUID’s. Once the links are re-created this checkbox should be off again.

According to the KiCad manual, KiCad can directly use altium symbol and footprnit libraries, but I have never tested this. But you can also re-create native KiCad libraries from any KiCad project.

  1. Open the PCB editor from within a project.
  2. PCB Editor / File / export / Footprints to new Library. Make it either global or project specific, choose a filename and location, and when KiCad asks you to update the links in the PCB to link to the new library, answer with Yes.
  3. PCB Editor / Tools / Update Schematic from PCB This is the reverse direction from the normal workflow. This pushes the changed library footprint links you made in step 2 back to the schematic. This is needed because the schematic is the main data source of a KiCad project. If you forget this step, then the links to your newly created library get lost the next time the PCB is updated.
  4. Schematic Editor / File / Export / Symbols to new Library. Pretty similar to step 2. but for the symbols in the schematic. There is no equivalent for step 3 because the schematic is already the reference.

After these steps you have a fully working KiCad project with matching libraries. Everything is fully editable, changeable, updatable, etc, just like any other KiCad project.

As far as I know, only items on the PCB can be locked in KiCad, but not in the schematic. To be able to modify locked items, you first have to be able to select them. To do that, turn on the Locked Items checkbox in the Selection Filter in the lower right corner of the PCB editor. When you are able to select locked items, you can manipulate or override the locks.

If you get stuck in the workflow, you can probably find some small / dummy altium project and use that to post here if you think that can help us with helping you to debug your workflow.

1 Like

I had at first tried to create a new project for every importable sketch, and actually completed this. But realized they all had the same PCB… Then I also realized that even though I had linked the PCB file to the new project, KiCAD had created a generic set of files in the source folder… Already pondering if I was going to leave the files as separate projects considering they had a common PCB… I realized the new files in the source folder were only lacking schematic data. So I opened the new Project with with just the PCB attached. Clocked Schematic and agree to create new file. Save. Open directory in new file explorer. Manually copied the schematic file it as many times as were needed to equal the total number of Altium Schematic files. Now renamed each copy the same as the source to avoid confusion. Popped each one one in stand alone and imported it’s original. Saved. Now back Project proper, insert schematic sheet content, for each of the files. A built in sanity check throws an error if I try to import twice. Saved. Done. This seems to be pretty close to as you and the help files have described.

Relink… I will take a moment to confirm if that is working. But prior experience says unless certain conditions are met I get new objects. If Kicad cant figure out whats what, stuff vanishes, orientations are lost. Its a bit painstaking at this point to fix associations and replace objects.

I had for a moment forgotten about this. I think, I had considered but decided that if I could not even edit the local copy there was nothing to be saved out.

However did this and indeed the missing parts were recovered. Now I can pull them into global.
By this hour I have already pulled in missing data from the BOM, and reconnected footprints that had lost their objects with known good footprints within both KiCAD footprints and user footprints.

The header pins were the ones going to be trouble. Generic 2.54mm not so much. The PinsHeader repository has been expanded allot and is quite useful now. But the source file needed a B16B-PASK-1 which does not yet exist in eit5her of our archives.

The lesson of the day:
Once the import is completed.
Export the Symbols and Footprints to local libraries in order toe gain access and import back if needed. :slight_smile:

This is what I have been fighting and its made no sense, within PCB editor. It’s like I had ghost parts, I could select the pins but not the outline. Even changing orientation doesn’t effect them. Created a problem right out the gate as I tried to orient the PCB to fit a printable page outline, and the pins could not be changed. And of course the page cant be altered to fit the drawing. So it was an immovable vs an unstoppable. With the export in hand, I can banish the mess, I think. To be tested. Worst case I have to rebuild the PCB file… But I hope that is not needed.

Just to be sure . . . you are allowing locked items to be selected ?

image

and once you have selected them you can make then no longer locked.

image

1 Like

It’s definitely locked. Fought with this over and over. I could isolate the graphic. But to no avail they could not be selected to allow for a unlock. Finally got something right and was able to select. The whole thing. Now I can control them.

Tried to erase, tried to update, used the option to select locked items.

If it weren’t that I was finally able to get this working I was ready to submit was some kind of aberration as part of the import. But, no just a well buried option to select even with the Locked Items toggled.

I think we have enough to make a good edit to the help files, specific to Altium. What to look for, best practice and what to be aware of during import. I will for sure do a write up to share with colleagues

Maybe you can delete big parts in a copy of one of your projects until you feel comfortable enough to post the remaining parts of the project here.

Have to be careful of anything I repost since the work is not my own. I am simply asked to help with the process. The author had work done by some one that took several years to make a proto. So now I am stepping in to see what can be done. But as per the topic, the OEM work was done in Altium.

I recognize that most forums, enjoy to see the files being worked with when asking for help. But while this might be best practice in nailing down a bug or glitch, its labor for you and the person you are helping might not learn what they need to. Also asking for help from peers while under NDA is hard. It’s like talking anything covered by HIPAA. I can talk broad and general but not specifics, nothing that can leak the authors work or expose identity.

Anyway everyone who replied gets credit. Every one was helpful, and thankfully this was less a bug and more a set of steps and best practices to be aware of. Sadly the forums wont let me bark more than one reply as a solution. Though you both offered solutions to different parts of the issue.

I am planing to do a nice write up to detail everything I have learned here from this process. And a few extras that popped up along the way.
-Like that even after you export the Symbols and give KiCAD permission to associate the records, it still doesn’t. I missed this the first time through because I was already moving to associate the symbols and footprints with known libraries. But imported a second document following what I learned and realized I still had to fix the association. Thankfully, not hard. Just fixed one then copied the missing location string into each of the symbol fields table.
-To bad I cannot do this on the PCB side, maybe a feature request? The table is extremely useful on the Schematic side.

1 Like

I guess it must be frustrating to be unable to share the information needed to diagnose / fix your problem. If you still can’t select your locked part when the Locked Items checkbox is on (as in your screenshot) then it’s starting to look like a Bug in KiCad. For us it’s simpler. Without more information from your side there is just not much we can do. Unless maybe someone has a very bright idea we just go on to the next topic, and within a few days this thread starts to fade in our memories.

To stay within your frame of mind, I see two options. You can open a confidential bug report on gitlab. It will require an upload of your project, but in that case very few people can see your design. The other option is to contact kipro-pcb They do commercial support, may even sign an NDA themselves if you require it.

Thanks. Case is solved.

Ultimately it was a mixture of the locked items check box and my own edit and remove shadow. I would like to see a way to select that shadow, otherwise it will frustrate others too.

Somehow I overlooked that you were able to solve the issue.
So the “locked items” checkbox was a part of it. But I do not understand your problem with:

This *Locked Item Shadow is not a selectable thing on itself. Why would you want it to be selectable? It is just an indication of where locked items are.

There are a number of times, where when selecting a foot print something invisible part of another footprint gets selected. It can some times be very hard to not select parts. Conversely there are times that for whatever reason only the pads want to be selected and the footprint itself pretends to not exist. It then requires a selection of the Silk area in order to become active and collectable. As a result some pads can be nearly impossible to select especially in odd cases where we literally don’t want to use any silk. A custom footprint with only pads can be daunting.

This particular case was a new addition to that file. So now I am aware there are more immortal objects as part of the program and files and I can recognize that obnoxious pink as an immortal/immovable object, or locked.

Why would I want to be able to select a locked object? Maybe so I can unlock it, or get information.
That there is an immortal, untouchable, immovable attribute is not favorable. At least it will not get in the way and cause issues when selecting many objects, as per my first reference.

That was not my question. My question was why you would want to select it’s shadow?

Some other items that can not be selected are:

  • Anchors.
  • Drawing Sheet.
  • Ratsnest Lines.

I guess your problems are mostly a result of inexperience with KiCad.

Have you tought for example of only setting Footprints and Locked Items in the selection filter:

image

Another option for easier selection is to do a long click by holding the left mouse button down for about a second. This brings up a context menu which shows all objects under the mouse cursor.

Not as much an inexperience as I don’t use it every day. I have been a user since 4.x and have fought a lot of various issues. Some have been resolved. Some are new new. Others no one will take credit for or even just pretend don’t exist. -But I am not going into side topics.

This topic in it’s entirety exists because we can now import Altium Files, which coincidentally I was looking to do. Otherwise I would have had to tried to find a trial version or viewer for Altium.

KiCAD used to move pretty slow. Recently it is moving pretty fast as are several other tools I use. I am neither a developer for the projects nor a die hard user. So it is natural that there are those who will know those products better, especially the developers. Naturally I ignore it when developers get upset because I don’t know the product or code as well as they think they do.

Because again there are times when you cannot select an object at all. This is useful sometimes. But other times it is all there is. What I might add would be that if I click and hold, double click, or special key and click, eventual the properties will pop up. At the very least a notice of the object ref and status, ie that it is locked. Possibly including a shortcut to unlock or leave untouched.

As I said there are times when otherwise only the pads can be selected, not the footprint itself and this was the reason w for why I was trying to get access to the Libraries. I had forgotten that there was the ability to export, as I mentally associated this with a complete project I am heading off or archiving. So I was not considering there was enough data salvaged to create those footprints into a library.

In the process of trying to re-associate files, and to isolate the objects that could not be selected or accessed I turned off most of the visabilities. This left only the annoying bright pink box on the screen. Even with everything on I newer saw the outline of the silk, and the OEM never included other layers like Fab, Courtyard, Eco, User, etc. This meant there were exactly three things to be seen and clicked. The largest and easiest to click being the bright pink box. I mean if it’s not mean to be clicked, why make it like a glowing button?! It took time, but I did find the faint silk layer and with the Locked items selected I was able to now finally select the footprints.
-But seriously, if the OEM had not included a silk, there would have been no way at all to select the object and unlock it. Selecting pads only selects pads. Meaning a backdoor is needed.

This is from my Solidworks PCB project, lots of locked items came that way when Imported and I’ve added more as some items (e.g. ATE test points) can’t be moved . . .

image

I can select stuff easily with a long left click . .

image

1 Like

Will test that soon, have yet been able to make that work. But it is one of the ways I suggested. You say it works. I will try it. :slight_smile:

1 Like

image
Long left Click, nothing no reply.
Right Click you get the above box.
True with and without Locked Items selected.

Only if you click on a black part of the background . . . the whole point of the long Left click is that if your cursor is over several overlapping items it will show you them all so you can select what you want. If you long left click over nothing you will get nothing . . .