Placing footprints on board as they lay on schematic

Hello,
I have an ingenious idea, but you’ll have to promise, that you won’t sell it and won’t earn million dollars from it. Is there any script, that would vulgarly copied schematic and placed footprints on board in exactly the same arrangement as in schematic? Like if I put C on schematic near uC, I usually mean it to be physically near each other on the board. It would be also a carrot to make decent schematics. Is there anything like this or would I be first?

Sorry, your million dollar idea was stolen right from under you

And they even give it out for free!

2 Likes

I can see where the idea may have some limited potential if interpreted intelligently. Such as your example of putting a certain bypass capacitor at the supply pin of a certain chip. But when my schematic was laid out by a pcb designer (I think he was using Cadence) and he said he would lay out the board as I laid out the schematic, this guy was one of the worst I can remember to give me a good layout.

The usefulness of a script like this is very dependent on the sort of PCB’s you make. For digital circuits it’s pretty much useless, but for analog stuff such as audio power amplifiers, which have a lot of discrete transistors and resistors, the layout on the PCB is likely to have a decent resemblance with the layout on the schematic. And therefore a script that does this is useful for the initial footprint sorting.

I would rather say, that usefulness of this feature is proportional to the effort.

I really like this feature compared to a confusing pile of parts. Even footprints sorted by ref designator is not that helpful. I challenge you to propose a better algorithm.

Digital design today uses devices with a lot of integral functions, not just AND/OR gates of old.
For analog, its great to have parts grouped per the schematic.

Go for it!
You would be the very first pesron to make quality schematics! :+1:

I guess I still sort of stick to the workflow I started with when all the footprints were stacked on top of each other long ago.
Back then I used the t shortcut and then typed the RefDes of a footprint to fetch it. (Glanced from the schematic, either printout or on Dual Monitor setup)

What I usually do these days for initial sorting and placement is:

  1. Open Schematic and PCB next to each other (Multi Monitor Setup).
  2. Click on a schematic symbol to highlight it (both in Eeschema and Pcbnew).
  3. Switch to Pcbnew without clicking on the drawing area (Footprint must stay highlighted).
  4. press m to move the footprint that is already selected.

Right click on a pad of a footprint, and then fetch another footprint that is:

  1. Listed in the same net.
  2. Outside of Edge.Cuts.
  3. Closest to first schematic symbol in the schematic.
4 Likes

The heuristics of the plugin could be augmented to assist more. For example, one would be to adopt the convention when drawing schematics that if there is a chip Ux, then the capacitor Cx is a bypass capacitor and should be located nearby. I already do this for my schematics as an aid to relocating components. Naturally this should be an option.

I don’t switch between schematic and Pcbnew. I press m in Pcbnew and I see that element at schematic and place it to its group. I considered 2 monitor setup, but this is only few minutes operation once per month so I can do it with having schematic and pcb at one screen.

I’m just saying there is not another method which is clearly superior to “like the schematic”. :smiley:

Two monitor setups are great. Not only for having Eeschema and Pcbnew next to each other, but also for using one monitor to read datasheets or look things up on the internet.

When I’m working on microcontroller firmware, I usually have one monitor for the C++ IDE and the other for (again) datasheets, Internet, or Sigrok Logic analyser software.

I also have the left monitor in portrait mode (great for Text (IDE, Internet, etc)) and the other in landscape (For graphic programs, CAD, Sigrok).

If you have “considered” dual monitor setup for anything but have not followed up on it, then do so now! Get some 2nd hand monitor for around EUR100. I have bought monitors on the flee market for EUR10.

Maybe you can lend a monitor for a week or two just to try it out.

2 Likes

That I have :slight_smile: - I have not two monitor but two PC setup.
On the left (rather center) - working one (connected to our internal net with backup disks, but not connected to internet).
On the right one connected to internet (so datasheets and other info are here).
I have also 3-rd PC with Protel on it so third monitor (on the left). Most time switched off now.
If I would like to have two monitor setup for schematic/Pcbnew I would need the place for 4-th monitor at my desk (I don’t have), or some kind of switch to switch right monitor between two PCs :slight_smile:

I haven’t seen a monitor with less then 2 inputs in the last 20 years, and also for video outputs on PC’s. So probably you only need an extra cable and use the buttons on the front of the monitor to switch.

KVM switch?

1 Like

You are right with monitor (I didn’t thought about it), but PC I am using currently has only one output. We have other one with 2 outputs, but it took us an year to find some time to do something about it. My brother just planned to buy some SSD HDDs to install in it while few days ago I told him that because of KiCad I will need Windows 10 but that PC is with Windows 7 so we start searching a time to do some reorganizations from the beginning now :slight_smile:

Download Balena Etcher and a Linux distro, maybe try Ubuntu Mate and LiveUSB the OS. I just was not that happy with Windoze 10; but your mileage may vary.

Don’t understand many words you have written, but I know that such possibility exists. I have never tried Linux and will not do it. Instead of having one program at other system then all others I would prefer to stay in 5.1.x till we find a time to change PC.
All our customers uses Windows and from time to time I have to write a program to be used by them (to upgrade our USB devices, to configure (via NET) our access control system).

I was die hard win7 user for a long time. Since upgraded to win10 never regret, overall experience is much better and after some tweaking i dont miss the Seven anymore.
Linux I dont like as a desktop, primarly due to the mess with desktop environments: each app does it own way, and the experience is far from unified.

@Piotr @fred4u I get it. I was exactly in your same shoes.

I’ll repeat what I said above with a few extra words.

Download Balena Etcther and grab a thumb drive. Spend a little time searching out a Linux distribution (distro) and install it onto the thumb drive and do a LiveUSB boot (NO changes to your current OS). In my opinion this is worth a couple of hours of someones time to see what is out there.

BTW, I’m running Ubuntu Mate, and feel that it is great for beginners.

To be honest, I will probably be forced to dual boot a Win10 installation. The fact that I will be forced will likely mean that I will lose access to some older Win7 software… which means that I will probably have to have a virtual drive with a Win7 install as well.