15 1 / 2013

Advancing browser based PCB layout

Today we release two new advanced PCB layout features: live copper pour and trace snapping.

Copper pouring is the process of filling the empty space on a PCB with copper. This is required to reduce power problems and interference on the board. Any serious design uses it. In existing tools, the copper pour outline is defined, and in a later step the actual copper filling is computed. From a user experience view, this is quite problematic as you might have to redo part of your board if after copper filling it appears that some connections cannot be made. Another big problem with many tools is that connectivity of the copper areas are not checked or enforced. This can lead to unconnected copper areas that can cause interference.


The copper fill we implemented on circuits.io is computed live, a non-trivial feat using javascript! After every update you instantly see the final board design. It is also fully compatible with our live connectivity and manufacturabilty checking (ERC and DRC) so any design mistakes are directly visually shown. It even works accross modules so ground planes defined in a module can be extended in a circuit using the module. We have a short video showing the live copper pour.


Next we added trace snapping. While routing, traces snap to many things such as pads and grid lines, but will also snap parallel to existing traces with the minimal copper to copper clearance. This allows you to easily make tidy board designs and makes differential pair routing possible (which is needed for e.g. USB 2.0). As an extra, we also added the ability to select a whole net by shift-double clicking a track segment, super handy for moving a whole net or deleting the routing so it can be re-routed.

We made a couple of short video tutorials available walking you through each of the new features. You can now also find all tutorials under the new "learn" section in the menu bar.