Computer Algebra for Electronic Design

Don’t get me wrong. Like most people, there’s nothing I enjoy more than solving a long, involved math problem by hand. But, sometimes, a few pages of algebraic scratches on paper is just a means to an end. I find this especially true during electronic design sessions, be it circuit design or PCB layout; I just need the answer, and any time spent finding it distracts me from the larger task at hand. For me, at least, this seems to happen at least once a week, and about five years ago I decided to do something about it. I had heard of computer algebra packages, of course, but they weren’t taught as part of the undergraduate engineering curriculum when I went to school. So, I set about learning one: let the computers do the math!

The package I chose is wxMaxima, a document-based front-end to the Maxima computer-algebra system. Descended from code originally written in the late 1960s, it’s a general-purpose package supporting symbolic computation for algebra and calculus. There’s solid, mature code underneath with a modern UI veneer on top. Plus, it’s FOSS.

As I’ve progressed, I’ve found that some additional functions make the Maxima environment especially convenient for circuit design. A few are simple enough that I’d typically just re-create them as needed, so I never really got organized – there were several versions of my “library” floating around on various machines. I finally got my act together, cleaned up the most-frequently used functions, and put them into a GitHub repo.

Let’s have a look at how we can use them to take the tedium out of math for some design problems.

Continue reading “Computer Algebra for Electronic Design”

Designing Circuits with Switching Algebra

We return once again to the work of Dr. Claude E. Shannon, this time to his Masters thesis on relay switching circuit design. This thesis introduced switching algebra that allows the systematic design and optimization of logical circuits. While Shannon’s work applied to switches and relays, it is equally applicable to all the modern forms of digital circuits. His thesis received widespread notice when published as “A Symbolic Analysis of Relay and Switching Circuits” in 1938. This work built on the Boolean algebra developed by George Boole and an analysis of logic by Augustus De Morgan which these mathematicians published nearly simultaneously in 1847. To some extent, it was the beginning of the age of modern digital logic. Continue reading “Designing Circuits with Switching Algebra”

A Breadboard In A Browser

[Flownez] sent in a tip that a port of the venerable Falstad circuit simulator is now available that doesn’t require Java (it uses HTML 5). This is a welcome port since some modern browsers (particularly Chrome) make it difficult to run Java applets and prevented the Falstad simulator’s execution.

spice2Like the original simulator, this one is great to show a classroom circuits and encourage building or studying circuits in the browser. There’s no extra software to install, which is handy for an impromptu demo. Another cool feature is the visualization of current flow as animated dots. The dots move in the direction of the current flow and the speed of motion is proportional to the amount of current. Watching a capacitor charge with the moving dots is very illustrative. You can also view data in a scope format or hover the mouse over things to read their values.

You can open a blank circuit and add quite a few components (use the right click button on your mouse or the menu to add components and wires). However, you can also pick from a number of predefined circuits ranging from the simple (a voltage divider, for example) to the illustrative (a PLL frequency doubler comes to mind). There’s even an AM radio (see below) that you can tune to find several “stations” by varying the tuning capacitor’s value. Circuit elements include many types of analog and digital components.

Continue reading “A Breadboard In A Browser”

Altium Gives Away The Farm With New Circuit Maker Software

Things are about to get interesting in the world of PCB design software for the open source hardware community. This week, Altium launched the open public beta for its new Circuit Maker software, and it’s a major change from what we looked at previously. Everything is free.

You heard that right, free. Unlimited board size, and unlimited layers – all free. And this isn’t some stripped-down, bare-bones software here. They’ve thrown in almost everything under the sun; a 3D viewer, team project collaboration, EagleCAD and DFX import, integrated Octopart supplier and pricing information, no commercial usage limits, and project sharing. And if that isn’t enough, the “engine” seems to be the exact same back-end that is used in the full $10,000 Altium Designer as well(with a bit easier to use user interface on top). This is a major departure from the pre-beta we covered back in September. Altium was going have board size and layer limits, with the ability to “upgrade” at a cost. So by now you’re thinking to yourself “OK, what’s the catch?” Well there are a few gotchas – but only a few.

The software uses cloud based storage for your project files, and is community based. It won’t work without an Internet connection, there is no local storage, and it forces you to share your projects with the world. You do get two “Sandbox” designs that you can hide from the world before you generate your gerber files, but after that, your project is online for the whole world to see. Will that be a deal killer for the OSHW community? We’ll find out soon enough.

One thing is for sure, anyone with a doggy Internet connection is not going to enjoy using Circuit Maker (we’re hoping they remove that limitation in the final product). And as with any cloud based service, we wonder how many people will be willing to trust their designs to a free service that could be turned off on a whim? Or will the unlimited board size and layers, combined with Altium’s name and robust software win people over in the end?

If you want to see in-depth review of Circuit Maker, we highly recommend you watch the video after the break.  [Dave Jones] of the eevblog, gives you a full rundown on the beta version. Dave’s in a unique place to review this software, not only has he been using Altium since the mid-80’s as a professional engineer, he’s also a former Altium employee.

Continue reading “Altium Gives Away The Farm With New Circuit Maker Software”

Volumetric Circuits

Building a circuit Manhattan style with small bits of copper and solder is a skill all its own, and building a prototype dead bug style is close to a black art. [Anderson] is taking it to the next level with his volumetric circuits. Not only is he building a free-form circuit that’s also a one-bit ALU, he’s also designing software to make these sort of circuits easy to design and build.

[Anderson] is calling his 3D circuit design software Pyrite, and it does exactly what it says on the tin: creates three-dimensional, grid-aligned physical circuits. Automating the construction of a circuit  is not a trivial task, and soldering all these components together even more so.

With the first prototype of his software, [Anderson] entered the schematic of a simple one bit ALU. The resulting layout was then carefully pieced together with solder and hot glue. It didn’t work, but that’s only because the schematic was wrong. Designing the software is still an incredible accomplishment, and now that [Anderson] has a rudimentary system of automatically designing free form and dead bug circuits, there are a lot of interesting possibilities. Ever wonder if the point to point wiring found in old radios was the most efficient layout? [Anderson] could probably tell you.

You can check out a few videos of [Anderson]’s work below.

Continue reading “Volumetric Circuits”