Design and simulate digital logic circuits with LogicCircuit


Today's Hardware Friday post isn't about hardware...directly. What if you'd just like to play around creating logic circuits? Or maybe use a program to help you learn how to design them? Oh yeah, and where the source for that program was available too?



LogicCircuit – is educational software for designing and simulating digital logic circuits.
Intuitive graphical user interface, allows you to create unrestricted circuit hierarchy with multi bit buses, debug circuits behavior with oscilloscope, and navigate running circuits hierarchy.

Official Web site

The official web site was created. Please visit it at:


How does it work? How do you create your own?

Short user guide

There are two modes the program can be in: edit mode and running mode. To switch use power button on the status bar, checkbox on the sliding tool panel on the bottom or use short cut: Ctrl+W.

In edit mode on the left side you can see all available circuits. Just drag and drop them where you want on the diagram – right part of the window. In order to wire circuits just click connector – bold dot on the side of the circuits and then click where you want your wire be extended to. Wires are connected only if their ends are in the same location. If you just cross two wires they are not connected.

By double clicking items on the diagram you can start editing them. So double click on pin, constant, memory, or button will open dialog where you can change properties of the item. Double click symbol of logical circuit you’ve created will switch you to this circuit. To change properties of the entire project select menu Circuit/Project, to change properties of the currently edited logical circuit either double click anywhere in empty space on the diagram or select menu Circuit/Logical Circuit.

In order to select an item on diagram, just click it. To add an item to selection or remove it from - hold Ctrl and click. Press and move mouse you can select everything in marked area. Hold Shift and click wire to select entire conductor. Ctrl+A will select everything on the diagram. Edit menu contains some other useful commands to select and unselect symbols on the circuit diagram.

When you create a new circuit it becomes available for you to use on other circuits.

  • Use input and output pins as interface with external circuits.
  • Use probes to observe state of the circuits when it is in running mode.

When in running mode you can interact with you circuits through buttons and double clicking constants – which increment value of constant within it bit width.
If you have some probes connected on your circuits you can open oscilloscope and watch history of the states of your probes.

To switch between your circuits you can double click them on the left panel or pressing Ctrl + Tab or Ctrl + Shift + Tab to navigate through circuits in reverse historical order. Press Tab more than once while holding Ctrl to navigate further in the history.

Happy designing!

Logic Circuit - Editing circuits

When you first open LogicCircuit it will be one empty logical circuit visible on the right pane of the program window named "Main".


Following the above getting started guides, I had my first circuit running in seconds.


What can you build with?


I mentioned the source was available? Yep! And the latest check-in ran for me the first time... Here's a snap of the Solution.


That's right, you get all the source behind this cool tool.

If you want to play with building circuits but soldering iron phobia, want to quickly play with some design ideas or are looking for some really interesting code to spelunk, LogicCircuit is a project that's under active development and just a download away...

The Discussion

  • User profile image

    nice and sympa!

  • User profile image

    Dsch, the next generation?

  • User profile image
    Dan Sutton

    Cool - I'm going to check this out. I've always wanted something like this to play with...

  • User profile image

    Project was inspired by the book of Petzold “The Code”.
    Eugene built a simple microprocessor on LogicCircuit and macro assembler for it: “Fusion”.

  • User profile image

    this would had been awesome....... 7 years ago!!!!

    Still, pretty rad

Conversation locked

This conversation has been locked by the site admins. No new comments can be made.