There are many PCB editors. Large and strong teams create and maintain them. Why do we need another one?
Because it is simple.
It is probably the simplest PCB editor in the world, it took me just four days of coding.
As I am going to build robots here, "in front of your eyes" so to speak, I want it to be done right. And spagetti-wiring it is NOT a good style. Like this (though it is kind of ok for prototyping):
But to design simple PCB, we do not need software capable of simulating components. We do not need it to comply to standards that our robot doesn't care about. We particularly do not need it to be Web-based and expensive.
So I have created a simple one. Probably, the simplest PCB editor ever. Note how I am doing my best to avoid using the term "primitive".
The PCB editor is part of archive. Use it from there or
move its folder wherewer you want. To run it, start terminal and run
pyrtoh3 pcb_editor.py
It has, of course, dependencies. Most of them come with Ubuntu, you will need TkInter, PIL and OpenCv.
Editor has max. 2 layers (2-sided PCB), so you can switch between them. Wires on non-active layer fade to make it easier to distinguish.
Works on components (not on wires). When component is at the opposite side of PCB, it should be mirrored, unless it is up side down. So select component and click this button.
Loads YAML file describing component. You are responsible for your components. But good news - it is very easy to make one. Find image on Google, and enter its dimensions, that's all. Dimensions are in millimeters.
Example:
Moves object (either selected component or selected wire) from front to back and from back to front.
Here you can change size of end point, its type and width of the wire.
To select wire, click on one of its points (not on a connector). Make sure this wire is on the layer currently active, or selecting will not work. Shift-click outside wires to start a new one. Control-click on a point to change its type and size according to what is selected in combo boxes. Pressing Delete deletes a segment where selected point is. Control-clicking also changes color.
Control-mouse move rotates component.
You can change transparency of front or back components. You can change transparency of wires of a non-active layer.