I just wanted to share a simple approach to design a perfboard circuit with Kicad. It helps with the components placement, wiring and as a reference to do the soldering.
This is nothing new in Kicad, it's just an adapted workflow and some hints to be able to do the routing point to point crossing the wires as needed, but always keeping the integrity of the circuit to take advantage of the Kicad support and electrical validations.
You can flip the PCB board view, to see it from the back to do the soldering. You can also use the 3D view as a reference for the final look and components distribution:
PCB view with the point to point wires:
PCB view back side
The main idea consist in using many layers, 10 or 12, to do the point to point connections, crossing the wires as needed without conflicts. It helps to plan the distribution of the components, the wiring, and rearrange it visually. Kicad will tell you if you forget some wire or connect something in the wrong pin.
First after finishing your schematic, do some adjustments in PCB editor:
Adjustments
- In the Board setup -> Physical Stackup -> Copper layers: enter 10 or 12
- Set the grid to 2.54mm (top drop-drown selector or right mouse click on the PCB editor)
- Optionally set the grid to Small crosses and tickness to 1.5 pixel, in the Kicad preferences -> PCB editor
- Set the tracks width to 0.4mm, in board setup -> Pre-defined sizes.
- Uncheck the tracks constrain to 90 and 45 degrees, in the left bar icon.
- In the layers panel hide all the non relevant layers, like Fab, Courtyard, etc. It helps to have a more clean view of the board. You can still move some relevant texts to the silkscreen, if needed.
- Assign the hotkey 'F' to flip the PCB board view, like it is already in the 3D view. Kicad preferences -> Hotkeys.
- Optionally customize the colors of the layers, that will be the colors of the wires. Visually it helps.
Placing the components
- The component pins will stick automatically to the holes. But not all, in those cases align them properly moving them a bit with CMD + left mouse button (os CTRL + left mouse button).
- For the components or breakout boards that you don't have a footprint (and you don't want to create it), you can use the pinheader or pinsocket footprints and then add a rectangle with the correct size in the silkscreen layer, and group both together. Or just create a simple footprint.
- Check the 3D view to make sure that there will be no placement problems.
Wiring
- Draw the tracks as you want the wires to be in the real perfboard. Use CMD + left mouse button to force the track to follow your path.
- When you need to cross the wires, choose different layers.
- Group the tracks of the same net in the same layer when possible.
- If you plant to solder some wires in the front side of the perfboard, place those tracks in the first layers, e.g. 1,2,3. Then when you are soldering in one side, hide all layers of the other side. This way you will see only the relevant wires in that side.
- Optionally, use the front layer for power and the back layer for ground wires.
- You can also cross (carefully) between socket pins without electrical conflicts.
- When you do the DRC check probably you will need to disable the warnings related to silkscreen and courtyard overlappings, but anyway they are not relevant for the perfboard.
- Fix all the other DRC errors and warnings. This will be still a valuable help to avoid errors.
You can do several placement and wiring iterations easily, with a good overview of the final board layout and the potential cable mess and soldering problems. Better doing the rework in the screen than soldering and desoldering things.
3d View
You have to find the 3d version of all the components. Most of development boards have a 3D file freely available, or you can use a similar one and shrink to the correct size in Kicad. Otherwise you can just use the pinheader or package dip with the correct pin count.
You can also simulate the holes in the 3D view. It helps to have a better view of the space left and the alignment of the components. And to do some layout improvements. You can check if that chip fits in that place just by counting the holes and the bulk of the components around.
To achieve that first I tried with tuned vias and holes, but I discarded it because they disturb the routing a lot.
I think that the best solution is to use solid circles with a radius of about 0.45mm, all placed in one user layer. This way you can hide the circles in the PCB view to have it not so crowded, but show them in the 3D view.
To place the circles is easy and fast, they stick to the crosses, no measurements or fine adjustments needed. You can just replicate them quickly by rows.
Probably there are other methods and tricks that could be added. This is just what I have experimented so far and I think that it works quite well. At least is better than schematic + paper + pencil