Atopile Wants you to Code Schematics

Atopile Wants you to Code Schematics

We’d wager that, if you’re reading Hackaday, you’ve looked at more than a few circuit diagrams in your day. Maybe you’ve even converted a few of them over to a PCB. It’s a workflow that, at this point, is well-understood. But as designs become more complex, the schematics are harder to create and maintain. That’s why Atopile wants to treat hardware design more like writing code.


We can see some real benefits to this but also some possible drawbacks. On the plus side, reusing chunks of PCB description should be easy. On the other hand, detecting certain errors on a schematic or PCB layout is easier than spotting them in code. Of course, there are probably types of errors that are easier to catch in code, too, so maybe that’s not a problem. Certainly, if you can spit out a schematic from your code, you could — potentially — have the best of both worlds.



Here’s an example circuit (from the documentation):


import Resistor from "generics/resistors.ato"

module VoltageDivider:
signal top
signal out
signal bottom

r_top = new Resistor
r_top.footprint = "R0402"
r_top.value = 100kohm +/- 10%

r_bottom = new Resistor
r_bottom.footprint = "R0402"
r_top.value = 200kohm +/- 10%

top ~ r_top.p1; r_top.p2 ~ out
out ~ r_bottom.p1; r_bottom.p2 ~ bottom

Then again, you can use Verilog-A or even Spice netlists to get the same effect (and those aren’t the only attempts at doing this). Will Atopile catch on? Maybe. Should it? Tell us what you think in t ..

Support the originator by clicking the read the rest link below.