Board Layout without schematic?

Is it possible to layout a board just using footprints without an associated KiCAD schematic? Manually place the traces to interconnect the devices? I’m trying to recreate an old board that I have a schematic for and an old physical board that is not useable but is intact that I can see where all the traces go. It is only double sided, I know there are no hidden layers. I just want to recreate the board layout to get a new copy made without having to enter the whole schematic.

Thanks,

Tim

For that purpose I dare to suggest the unstable development version a.k.a. v5.99, nightly builds.

It’s still unstable and under development, but stable enough for many purposes and it won’t get radical changes anymore while bugs are fixed towards v6.

The reason I suggest this is that it supports schematicless workflow better than 5.1. On the other hand this depends on the complexity of the board. To benefit from 5.99 you should use nets to make sure you don’t make mistakes, and you should understand to some degree how the original works (well, the latter is true anyway, whatever you use).

But if you don’t care about clearances and other features which make using an EDA feasible, you can use v5.1 and use the Highlight Collisions router mode, allowing DRC violations. Then you still have the benefit of using ready made footprints (if what you need happen to exist in the standard libraries).

If you tell or show what kind of board you want, we may be able to tell more.

How to make a PCB in KiCad without a schematic is a repeated request on this forum. KiCad is very much geared into having netlist information extracted from the schematic, and working around that is probably more of a nuisance then a shortcut.

If you already have a schematic (even on paper or a .pdf) Then re-entering it in KiCad is very likely the way I would do it. As eelik said, I’ve also read that the current KiCad-nightl V5.99 has some rudimentary way to edit / add / change netlist information, but I have not used that part yet.

A wonderful tool for reverse engineering a PCB would be to make photographs of an existing PCB and then load (and scale) those photographs in Pcbnew, but that is unfortunately not supported (yet). There is a nice writeup on the closest you can currently get, which you can find via:
https://html.duckduckgo.com/html?q=reverse+engineering+with+KiCad
Which gets you here:

At least, that was my opinion up to about 10 minutes ago.
I’ll be back shortly.

[Edit] In about an hour time I made the quick mini tutorial in the next post.

For a long time I’ve advised against attempting to make a PCB without a schematic, because Pcbnew is so dependent on a proper netlist, that re-creating a schematic for the netlist has always been mandatory. Trying to shortcut through it and making a PCB without the netlist has always been a kludge. It seemed attractive to some users (and there are KiCad users who do this), but loosing all the benefits of a proper netlist made this way a silent time consumer instead of a quick way to make simple PCB’s. Now creating a netlist inside Pcbnew itself works quite well and this makes this a viable route to follow.

I think this has enough potential to be split of and put into the FAQ part of this forum. Before this is done I’ll let it sit here for some time and maybe weave in some suggestions from others.

Making a PCB in KiCad-Nightly V5.99 without first drawing a schematic. Mini Tutorial.

  1. First create a new empty project.

  2. Start Pcbnew from the project manager.

  3. Use the O shortcut key to place some footprints on the PCB. I choose something resembling the classical one transistor amplifier:

  4. In the “Appearance Manager” (Right side of the window). Select the “Nets” tab and click on the icon for “Show Net Inspector”:

  5. In the “Net Inspector”, click on the plus button in the lower left corner to add a few nets, and give them names:


    At this point those nets are empty, but having the nets themself helps with adding the info later. (Press OK to confirm & exit the Net inspector).

  6. Start drawing a track (with X shortcut key) on any of the pads you placed on the PCB in step 3). At this point all pads of all footprints belong to the “No Net” and KiCad is ready to connect your track to the nearest pad. (See the yellow line from the mouse cursor to a pad:

  7. Draw tracks between some pads:

  8. Click on a segment of the track you just drew, and then press u shortcut key twice to select all the connected copper. It is now highlighted:

  9. Press the e shortcut key to edit the selected items. Because the selected items are tracks, it opens the Track & Via Properties. In that dialog open the “Net” drop down box and select one of the net names you created in step 5).
    image

  10. Press [OK]] and accept the changes:
    image

  11. If you now zoom in on your schematic, you can see the “Power” net name printed on both the copper track and the connected pads:

  12. Draw some more tracks. Make sure they only touch in areas you want them to connect:

  13. Repeat steps 8). and 9). for the other nets you drew. If you have put via’s in a net, then uncheck the “Automatically update via nets” checkbox. As long the box is selected, you can not choose a net name from the dropdown list.


    (Also: Note that if the selection contains both tracks and via’s, the dialog that pops up with e is different).

14). Next we draw the PCB outline. Change the active layer to: Appearance Manager / Layers (tab) / Edge.Cuts and then select: Main Menu / Place / Draw Rectangle and draw a rectangle for the PCB outline.

Conclusion:
I experimented now for the first time in my life with this method and it works quite well. Creating the netlist inside Pcbnew is quite easy and intuitive and you get all the benefits that come with a netlist. Some of these are:

  1. Using net classes, track widhts, clearances etc.
  2. Using the Interacitve router to shove stuff around.
  3. Create net-aware zones that keep their distances where they should.
  4. DRC also works.

For anyone interested: Give it a try. Experiment with it. (I attached the example made above below. But beware that as of yet this only works in KiCad-nightly V5.99, and for more about the nightlies, be aware of:

The Project:
2021-03-01T02:33_no_schematic_5.99.zip (9.2 KB)

5 Likes

Great writeup!

One comment: Another workflow is to first assign all the nets to the pads, and then do the routing normally (instead of routing tracks with no net and then changing the track nets).

There are some advantages of doing it this way: it allows you to set up design rules and net classes if desired, and then the router will respect those design rules (when routing tracks with no net, you can’t do things like use net classes or custom design rules). It also means you don’t have to worry about turning off “automatically update via nets”. Plus, you get a working ratsnest showing where to route tracks.

1 Like

I have always thought that in the normal workflow changing pad’s net like Paul does it is weird, if not a bug, because if the net is defined in the schematic the pad’s net shouldn’t be changed in the layout, it goes out of sync and can’t be backannotated. Here it of course works.

I always redraw the schematic anyway as it forces a sanity check. It is really hard to figure out a fairly complex PCB accurately, even single sided

1 Like

I’m old-school and prefer hand-drawn schematics then, using Kicad’s PCBnew, I simply place footprints of desired items and draw the Traces on desired layers.

I never use DRC or Autorouters. So, my PCB’s are quick and straight forward to make.

On the rare occasion I use Eeschema, I most often regret it as it adds too much time (versus hand-sketching)…

Of course, I often need to make a new footprint but, that’s easy for me and there are many tutorials on doing it. (and different ways to do it…). And, once done, they’re available to other projects so the need to make new ones diminishes over time…

1 Like

Another answer to this case is to just re-enter the schematic as the time and effort to learn a workaround is wasted energy. Learn the process to do it correctly.

I honestly don’t like the idea of v5.99 allowing a pcb without a schematic.

1 Like

This reminds me of back during the 1980s when I first obtained use (at work) of a PC which I could use as a food processor…uh…word processor. At the beginning, my brain was not accustomed to composing on the computer and I wanted to hand write first. But I had wanted a word processor for years before I could get one, and I pushed myself over that minor “workflow hump.” Regarding circuit design I usually start out with a KiCad schematic unless I am really brainstorming a circuit design. But my hand (writing/drawing) is pretty bad and if the sketch gets at all complicated I need to then resort to KiCad or other computer interface which gives me straight lines and is more easily edited.

5.1 allows it, too. In 5.99 it has been made a bit easier because it’s possible to manipulate nets in pcbnew.

I’ve tried doing a couple of layouts without a schematic where there have been a very limited number of components but I don’t think I would now. There is a learning curve with eeschema but it is not difficult. Familiarity will increase speed. The self discipline required to formalise the schematic is very helpful in avoiding silly design errors and the advantage of having a documented design is significant when you come back to the project a few months later. If the design is “too trivial to need a schematic” then the schematic will take a trivial amount of time to draw.
The ‘no schematic’ workflow causes a disproportionate number of problems; it’s not surprising when working orthogonal to the intended workflow.

My drawing is far, far worse than “pretty bad”. Abysmal is a more suitable adjective that comes to mind. It is far quicker for me to draw a schematic straight onto a computer than try to decipher my hand drawn scribble.

I haven’t tried to lay up a board without a schematic since I started using “Protel for DOS”. The system requirements for that programme were:
IBM - PC 386 or compatible with 640K ram and a Hard Disc with MS Dos version 2.0 or later. A mouse was recommended. :slightly_smiling_face:

Oh, those were the days!

I kind of had the opposite problem. I was in grade school in the 80’s (class of '90). Our first computer was a Tandy Trash-80 (TRS-80) model III. No word processing there, but in '84 or '85 my family upgraded to an Amiga 1000 (pretty much right when they first came out) and we had Word Perfect for it. The last 5 years of my grade school I learned how to compose essays in a word processor and developed a bad habit of editing while composing. When I got to college I was worse than useless trying to write essays for composition book tests. I just couldn’t compose an essay worth anything if while writing the current sentence/paragraph I couldn’t edit the previous sentence/paragraph. Not to mention my penmanship was so unpracticed my hands would cramp up after writing a few paragraphs…

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.