I have a large board that I want to plug an Arduino Mega into. I found KiCad files for an Arduino Mega shield that I want to import into an existing project. I can copy/paste the schematic and PCB from the shield project into the schematic and PCB of my project, and everything looks OK until I update the PCB from my schematic. Then KiCad creates another set of footprints for the headers and drops them on the side, for me to position. The original shield layout is still there but none of those headers can be connected in my schematic, only the new ones with the incorrect locations. The main point of me trying to do this is to maintain the shield layout so that the socket headers align with the Arduino. What is the correct way to this?
Hi @lens42
Where did you find the files?
Also, Kicad version and OS please. (Kicad > Help > About Kicad > top RH corner, “Copy Version Info” then Paste directly into forum post).
Why are you importing the schematic? You’re plugging a ready-made Mega board into your PCB right, so it’s just a footprint you want. You should be able to create one using the DIP footprint wizard.
Application: KiCad Schematic Editor x64 on x64
Version: 7.0.6, release build
Libraries:
wxWidgets 3.2.2
FreeType 2.12.1
HarfBuzz 6.0.0
FontConfig 2.14.1
libcurl/7.88.1-DEV Schannel zlib/1.2.13
Platform: Windows 10 (build 19045), 64-bit edition, 64 bit, Little endian, wxMSW
Build Info:
Date: Jul 6 2023 04:56:45
wxWidgets: 3.2.2 (wchar_t,wx containers)
Boost: 1.81.0
OCC: 7.6.3
Curl: 7.88.1-DEV
ngspice: 40
Compiler: Visual C++ 1936 without C++ ABI
Build settings:
KICAD_SPICE=ON
I thought this would be easier, but it’s turning out not to be. I will probably do what you suggest but at this point I’m curious how the process of inserting one project into another might work. SHOULD I be able to simply paste one schematic and layout into the schematic and pcb of another project, OK?
As far as your project is concerned, the Mega is a giant component. So all you need is a symbol that abstracts the functions of the pins, and a footprint that matches the two rows of headers. The symbol can be just a rectangular yellow box.
This isn’t just a simplyfing exercise. If you insert the whole schematic, you get a heap of labels and references to components that you are not going to source whch wrecks the BOM. Plus it may give you ERC warnings or even errors if the schematic isn’t up to scratch. All you need is a black, er yellow, box.
Cutting and pasting projects together is another can of worms but you don’t need to go there.
OK. Thanks. I now realize that my approach was flawed. For what it’s worth, the shield project file I got (from somewhere I can’t now find) has no components other than the headers.
You could maybe use that symbol, but first you would have to place it in a personal library and modify the pin layout to match your PCB pad layout.
Probably easier to go the @retiredfeline approach and create your own yellow box.
This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.