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 …

Others Use It, Too!

It helps when other people use SKiDL; then I can coast by just showing what they've done. Here are two examples.

Blinkenface

Blinkenface is a version of "LED glasses" made with a cascaded string of APA102 RGB LEDs controlled through an SPI interface:

Blinkenface PCB

Th majority of Blinkenface is just a …