Posted by Dave Vandenbout

Customized ERC!

Everybody wants ERC. Everybody hates ERC.

Electrical rules checking (ERC) looks for errors in how your circuit is constructed. It's like running lint, but for hardware. And as with lint, you get a whole bunch of warnings that don't matter but which obscure the ones that do.

SKiDL tries to …

Good Things Come In Packages!

Up to now, SKiDL supported hierarchy by applying the @subcircuit decorator to a Python function:

@subcircuit
def analog_average(in1, in2, avg):
    """Output the average of the two inputs."""

    # Create two 1K resistors.
    r1, r2 = 2 * Part('Device', 'R', value='1K', dest=TEMPLATE)

    # Each input connects thru a resistor to the …

New SKiDL Forum!

FYI: The forum has moved.

I created a Github Discussions forum for SKiDL. There, you can ask questions about SKiDL and post about projects you're doing with it. This will probably be a more convenient channel for such things rather than opening issues on the SKiDL GitHub repo.

Give it …

Version 0.0.30 Released!

I'm releasing version 0.0.30 of SKiDL today! It has some new features I'm excited about:

  • A new @package decorator to make subcircuits act like Parts.
  • A new tee() function for creating T-junctions in networks.
  • Custom ERCs can now be added using the new erc_assert() function.
  • Substring matching in …

xspice capability

Somebody asked about using XSPICE components in SPICE simulations with SKiDL. That wasn't possible since PySpice didn't really support these when I built the interface. So I added XSPICE parts to the SKiDL SPICE interface and released it as SKiDL 0.0.29.

Version 0.0.28 Released!

Well, that didn't last long.

I released version 0.0.27 of SKiDL yesterday, but I didn't like having the zyc utility bundled in there because that pulls in wxpython as a requirement. That's likely to cause problems for some people when they try to install it with pip.

So …

Version 0.0.27 Released!

It's been almost eleven months since I released a new version of SKiDL (not counting updates to the Github repo). So here's a new one: version 0.0.27. You can install it using pip just like all the other releases.

Check out the changes in this version here. I …

The Worst Part of SKiDL

I created SKiDL to replace the manual tedium of drawing schematics with the advantages of modern programming languages: iteration, abstraction, hierarchy, and modularization. But one thing always stood out as a problem:

Parts.

Here's a snippet of SKiDL code to show what I mean. It instantiates a PIC10 microcontroller and …

SKiDL at KiCon 2019

At the recent KiCon 2019, I gave a talk about SKiDL that's a good introduction to the language and why I created it. It's about 27 minutes in length if you can stand it.

I got a lot of great feedback after my talk. Almost everybody mentioned that they want …

Sweetening SKiDL

I've added a bit of syntactic sugar to SKiDL over the past few months:

It doesn't change what SKiDL does, but does make it easier to do it.

Series, Parallel, and Tee Network Constructors

Last year …