# Good tools for drawing schematics

I was going to add a bit of information to my post on a previous day using schematics and some instructions. What programs are being employed for this purpose?

I mostly want to see what others are using and that I can easily use to give descriptive schematics.

In a perfect world, and I know this is a case of me wishing, it would be:

1. Free.
2. Extremely easy to draw schematics in.
3. Allows simple production of waveforms for the inputs/outputs.
• Older comments here. Jan 18 at 2:04
• SE's aim is to provide high quality Q&A sets that will drive search engine traffic to the site. - I have reopened this question as it demonstrably meets that aim and is of considerable use and interest to many. Despite its age it provides current and useful information. | . It was closed more than 5 years after being asked with literally dozens of high quality answers. More answers were added over the intervening years. I accessed about 50! of the links in answers and comments and only two were dead - the rest lead to the material that you'd expect. Jan 18 at 2:10

Try KiCAD. Now it even does SPICE simulations, ngspice specifically, and it handles pretty much everything else. Other than that, if you wish, KiCAD has also the tools to design printed circuit boards, and even has a 3D viewer and exporter for the boards!

KiCAD runs on Windows, Linux and Apple OS X.

There is also a project called ESIM that bundles KiCAD with a SPICE simulator and differential equation solver.

• Despite it's UI, Kicad is really quite powerful for the price (free) - 16 layer boards, Gerber export and no limit on board size. May 7 '10 at 2:09
• Peter, you say "despite its UI". Can you elaborate on that? Nov 25 '10 at 17:07
• KiCAD is not usable. The authors of KiCAD need to go find a 1984 vintage Apple Macintosh, use it for a few weeks, and then redesign the user interface.
– Kaz
Jul 18 '13 at 19:26
• As of this date, KiCAD has quite an extensive library, and its UI is easy once you get used to it (actually adding components by typing their names instead of looking for them in a thumbnails list has proven very efficient) May 17 '14 at 2:35
• FYI: KiCad recently added SPICE simulation with NGspice under the hood. Sample tutorial here: ngspice.sourceforge.net/ngspice-eeschema.html Nov 28 '18 at 0:39

My favorite schematic capture tool is a pencil on green-gridded engineering paper, and a camera.

Once I have the schematic how I like it, it goes into gschem.

But for just sketching up circuits, paper is the way to go.

• I keep a field notebook around for that. It comes gridded, with ruled pages opposite for notes. It's also water-resistant, so if it comes with you everywhere and you live in a rainy climate there's an extra level of protection.
– Lou
Dec 16 '09 at 16:52
• I have design journals around that look the same, but I doubt my boss would enjoy me jotting down things for chiphacker in them. Dec 16 '09 at 18:13
• Point taken on the picture, I wish I always had paper with me. I also wish my handwriting was readable. Dec 16 '09 at 23:03
• This is what I do at work, too. I just scribble something down, take a picture of it, and email it to the factory. :) Dec 17 '09 at 21:31
• I use a scanner (better quality for line drawings than camera) + paper/pencil. Looks great! Dec 20 '09 at 15:18

And now you can do that inside a reasonably modern browser with CircuitLab.

The community version, which is free, is somewhat limited on its library of components, but the simulator running in the browser is a testament to the power of current JavaScript engines.

Update Jan 2015: CircuitLab is not free anymore; there's only a time-limited demo without a save feature. There are commercial and non-commercial plans available. For students whose university has an academical license, use is free of charge. See all plans. The embedded CircuitLab here on EE.SE is still available free of charge.

This is an example screenshot of the Circuitlab design environment:

This is an example screenshot of the Circuitlab simulation environment:

• CircuitLab is now embedded into Electronics Stack Exchange! meta.electronics.stackexchange.com/questions/963/…
– weiy
Feb 27 '13 at 19:40
• That simulation plot sure is ugly. May 14 '14 at 17:49
• (CircuitLab co-founder here.) Fortunately we've made the simulation plots much nicer looking since then: see circuitlab.com/editor/wt3nym to try this RLC resonance example. We do have partnerships with many universities now, making it free for their students and faculty. And we'd appreciate other feedback from the EE.SE community! Jan 18 at 2:38

Another option is KTechlab. I suspect most people have never heard of it, but it's a free electronics simulation program that lets you do simple circuits. Schematics are easy to draw and it produces waveforms easily. I find it more intuitive and quick than a SPICE simulator, but of course it's not as powerful. It's more a system for thinking about idealized circuits, while SPICE is more a system for modeling real-life circuits, along with all their flaws and frailties. It's Linux-only, but you can run it in Virtualbox or something.

• Looks interesting. Dec 17 '09 at 18:51
• You forgot to mention that you can use it as an IDE too for programming the chips you design into your circuit.
– Amos
Dec 20 '09 at 22:19
• I've never used that part. :) Dec 21 '09 at 15:36
• Interesting! I really have never heard of it. Thanks. Jul 10 '10 at 13:14

gschem of geda makes nice schematics, with real fonts.

1. It's free software (GPL license).

2. It's as easy as it gets. All the schematic capture programs need some learning.

3. I've not tried that, but there ought to be something in the gEDA suite.

• Thanks for the info, I will take a look at it. Dec 15 '09 at 20:28
• WOW have never heard about geda, did an apt-get and checking it out now. Really cool, thanks for sharing! Dec 17 '09 at 3:01
• Since 'me' resurrected this thread with the Webtronix program a few hours ago, I thought I'd add for future reference that gEDA does include the Icarus and GTKWave simulators. These take more work than an LTSpice simulation (You either have to add simulation data to all the parts you use, or write up a Verilog simulation), but gEDA (Unlike most PCB design packages) definitely does have a simulator. Jul 14 '10 at 2:06
• There is also gnuspice and ngspice. Really, simulation and schematic capture are two separate problems, and it would be better to consider them separately. There's hardly a schematic or simulation tool out there that doesn't speak a common netlist format. Jan 6 '13 at 14:02

This Java circuit simulator is pretty easy to draw schematics in, and it has a way to export them as plain text:

\$ 1 5.0E-6 0.9891409633455756 46 5.0 50
I 240 256 304 256 0 0.5
I 352 256 416 256 0 0.5
w 416 256 416 192 0
w 240 192 240 256 0
r 320 272 320 336 0 220000.0
c 320 352 320 400 0 4.7000000000000004E-8 1.4535908873993098
g 320 416 320 432 0
s 224 384 224 320 0 1 true
w 240 256 224 256 0
w 224 256 224 320 0
w 272 384 224 384 0
w 320 352 320 336 0
w 320 400 320 416 0
w 272 384 272 352 0
w 272 352 320 352 0
w 304 256 320 272 0
w 352 256 320 272 0
r 240 192 416 192 0 5000.0
o 1 64 0 35 5.0 0.0015625 0 -1


The above code will produce this circuit:

Maybe there's a way to integrate it into a site, so that users can draw a circuit, paste the above code into the answer box, surround it with special tags, and it will create a pop-up applet?

Even better, a schematic image could be generated from the code, which, when clicked on, opens a simulation applet of that schematic.

Maybe talk to the author about something like this? He has the applet zipped up for you to use on your own computer, but I don't know about distributing it on other websites.

Update: I talked to the author, and he implemented URL data within hours of me proposing it. There is now an "Export Link" menu option that generates links like this, without requiring a directory or hashtable on the server or anything. You can use the same URL to display the same circuit while using the java file on your own computer:

This should display the above circuit

And he pointed out the licensing agreement, which I think permits us to modify it and use it on here to embed schematics, like this.

You have permission to modify the applets and/or copy the applets onto your own web site as long as you credit me (Paul Falstad) and provide a link to my page

This 4000 character URL should show a 7-segment decoder

• I think you should flag this up on Meta (unfortunately I'm on my phone so the simulation applet doesn't work).
– Amos
Oct 22 '10 at 20:22
• What do you mean "flag it up"? Oct 22 '10 at 20:43
• 4000 character URLs!? Oct 25 '10 at 15:38
• That's one of the most complicated circuits in the examples. Internet Explorer only accepts 2000 characters, unfortunately. :) Oct 25 '10 at 17:52
– user105009
May 7 '17 at 7:25

For more limited media there's AACircuit - source code now at https://github.com/Andy1978/AACircuit, binaries from http://tech-chat.de/download.php

                        ___
.---|___|-----.
|             |
|             |
___   |  |\|        |
-|___|-----|-\        |
|  >-------'
.--|+/
|  |/|
|    |
===  ===
GND  GND
(created by AACircuit v1.28.6 beta 04/19/05 www.tech-chat.de)

• I have to admit, that is quite fun. May 6 '10 at 11:56
• This is a cool idea since you can't upload files to this site... So a small ascii-art can probably help showing some simple things :) May 6 '10 at 14:15
• It seems to work with wine under Ubuntu as well. May 6 '10 at 20:13
• I have now used it, and for just throwing a schematic together, awesome! Jun 16 '10 at 18:01
• Looks awesome! But the web site is all in german! Aug 31 '10 at 13:16

TeX can be used to generate publication-quality schematics. Here are some examples.

CircuiTikz is a set of LaTeX macros designed to make it easy to draw electrical networks in scientific publications. It provides a convenient syntax based on to-paths to place the various components.

• Beautiful circuits! Aug 7 '15 at 17:59
• I totally agree with @chicks. They look a lot with my text books drawings! :) Dec 21 '15 at 16:44

I personally use EAGLE, but the learning curve is somewhat high. You might want to check out Fritzing; it's open source and built with the beginner in mind.

• I know how to do schematics/simulations/layouts and I am not finding this to be the issue. The problem I have had is having one that is very fast to use for when I want to give more detailed answers on chiphacker. I have some time for chiphacker, but not enough to be doing full simulations for questions regularly. Dec 16 '09 at 6:43
• The simple/intuitive nature of Fritzing will lend itself to your goals I think. I encourage you to take a look. Dec 16 '09 at 10:24
• Fritzing seems to have a lot of community potential. If it takes off in the same way as the Arduino project, it could be really great. Right now, it's lacking some essential components, but seems to be moving forward.
– Greg
Jun 16 '10 at 14:27
• This looks interesting. Apr 20 '11 at 1:58
• I use it for all my PCB design so useful. Oct 29 '13 at 21:38

The top recommendation there seems to be Inkscape + a nice collection of public-domain electrical symbols you can download from Wikipedia.

I find that a little surprising, because Inkscape is a general-purpose graphics editor which knows nothing about diagrams or electronics.

• Inkscape outputs SVG images, which is a requirement: 3. It has to be able to export in SVG: the SVG is the format that was proposed by wikipedia for diagrams. It provides the best quality at the minimum space. Most schematic capture programs have the same view you took - Graphics as such (other than PDF export) are useless. Wikipedia wants the prettiest, smallest graphics. What we want is different: The fastest, easiest way to create a schematic and its simulation. Jun 16 '10 at 2:14
• Still an interesting solution Jun 16 '10 at 15:16
• I came here looking for exactly this: a symbol library in SVG for use with Inkscape. Thanks! Jun 15 '11 at 4:45
• Examples of schematics made using this collection: commons.wikimedia.org/wiki/… Aug 24 '11 at 15:34
• Here is another group of symbols meant to be used this way luciani.org/not-quite-ready/not-quite-ready-index.html#symbols Aug 24 '11 at 15:52

I use DipTrace, and I'm very satisfied. It's not free, but it is quite inexpensive. I tried EAGLE, which seems to be the most widely used, but I was horrified about its unfriendliness.

To me, it's not only a thing about learning curve, but simply making things harder to do than it should be. It made me remember a traumatic experience with AutoCAD during the late 1980s. I tried many other low-cost and free alternatives, but they either were also a bad-UI, unstable, or had a poor component library. The only under-100s package that worked well was DipTrace. Its weakness is that the PCB router is not very efficient (it was unable to route some boards that I was able to route manually without much effort), in particular when you have few layers, but to my use this was a minor limitation in comparison.

• DipTrace is easy to use in a way that's really hard to describe. It's my favorite out of all the packages I've tried. Dec 19 '14 at 0:19
• Currently diptrace is also available in a 300pin limited freeware according to their site. Aug 28 '15 at 14:52

An option is Quite Universial Circuit Simulator (qucs).

(But I'm not sure if it is ready for prime time yet, but so far so good.)

• Yeah. I use this.
– Tom
Aug 4 '15 at 23:55

Try TinyCAD: it's open-source. For schematic capture (this doesn't do simulation, although you can export netlists to PSPICE).

(Disclosure of bias: I work with the project maintainer.)

• Looks interesting. Dec 20 '09 at 21:20
• I have used TinyCAD in production. There was a serious bug with netlist generation but it has since been resolved. TinyCAD works pretty well and is easy to learn. Nov 24 '11 at 6:24
• the link is broken, here is a correct link : sourceforge.net/projects/tinycad/?source=directory (I don't have editing privileges, if someone who does want to update the anwser...) Nov 17 '17 at 8:31

Probably not the best solution, but most of time I use Eagle to make schematics. Now, that doesn't really cover points 2 and 3 of your requirements, but it's what I use. Additionally I frequently use OrCad PSPICE.

I would, however, strongly recommend gEDA http://www.gpleda.org/

• Eagle is a good idea too as long as you have the libraries all set up. Plus if you plan to make a board eventually, this would be a good start so you can later get a board layout going. Dec 15 '09 at 14:56
• I am not planning to make a board, I have programs for doing real schematics and layouts, the problem is that they have a large overhead in my time when it comes to me answering something on this board and require a dongle, which means I do not have them at home. Dec 15 '09 at 18:27

XCircuit is designed for publication-quality diagrams. It outputs PostScript. I remember finding the UI awkward and the output a little weird, myself, but it's maybe improved since I last used it, and it's certainly better quality than a screenshot of a schematic capture program.

You can find some examples of its output on Wikimedia Commons.

• I just gave XCircuit a go. Ughh, the UI is so awkward and terrible. It's probably a great tool, but the UI is just so bad. May 14 '14 at 17:47
• @ChrisZeh, I agree that the interface is 80's (especially the dialogs...), but the quality of the output and the speed you can achieve in drawing outweighs (at least for me) the steep learning curve... (I use it only on Unix, though. Never managed to use it in windows and without a mouse with middle-click). Nov 11 '14 at 16:16

Just learned (as of March 2012) of a new web-based schematic drawing tool called "Scheme-It" that uses HTML5 to enable drawing of schematics online, and it also allows export to PNG & PDF formats.

Apparently it's supported by Digi-Key, I'm sure it's intended to drive you to buy components from them but there is no registration or anything required, no lock-in, and it seems to be very usable. Within 60 seconds of visiting the site I'd dragged some components for a basic circuit & exported it as a PNG.

No simulation capabilities though -- I use LTSPICE for that, others have already covered LTSPICE in other answers.

• can you give us some images of how it works? Mar 1 '12 at 1:43

Usually whenever I'm doing this, I'd just plop out a circuit in SPICE and then print to a PDF. Not the most elegant solution, but not the most difficult either.

LTSpice is free and pretty great. Also, I hear they keep waveforms inside some of those circle and triangle things on the schematics; you just need to push some buttons to let them out :-)

• Yeah, I was hoping for something like google docs of schematics, as I have never heard of any thing that nice, I thought I would just ask if anyone knew something about it. Dec 15 '09 at 18:25
• National Webench does a lot, but it's more wizard oriented and doesn't let you lay out circuits. You get to play with parameters and simulation very much like spice, though.
– XTL
Jul 6 '10 at 14:57
• Update to this is you can use Google Drawing but it's not the BEST option. Oct 19 '10 at 18:42
• I wrote a little lt2circuitikz script (github.com/ckuhlmann/lt2circuitikz) to convert LTspice .asc files to .tex files with circuiTikZ graphics and create nice PDF schematics. It also contains symbols for most of the circuiTikZ library elements for LTspice. The script is in Python3. Take a look if you use LTspice anyway, might be a good way to get high quality pdf files.
– cx05
Mar 5 '20 at 21:05

There's also this web-based thing, meant to have screenshots taken of it:

http://www.qsl.net/wd9eyb/klunky/framed.html

But could it be modified to generate code that could be copied and pasted into this site? Something that generates a single image would be preferable, of course.

There's a real need for a quick web-based schematic drawing tool, not just here, but everywhere. I would code it if I knew how, but my skills are weak. Could we somehow commission someone at Stack Overflow to write something in exchange for reputation points? In exchange for money? Kickstarter? A simple JavaScript editor could allow for blocks to be put next to each other, like this Klunky editor, then it could generate a URL with a bunch of gibberish at the end, which then causes the server to generate a single PNG, for instance.

The image could be linked directly from forums or copied to Imgur automatically by the Stack Exchange software. The URL of the image could be plugged back into the editor to allow modifications, etc.

The text labels in Klunky could use some work, too.

Or if Stack Exchange accepted data: URLs, it could generate an image that could be copied and pasted into the URL box without requiring a server at all. :)

Or SVG. Or Flash. Or something. But I think a simple block-based editor would be sufficient for the vast majority of online schematic examples, rather than a full-fledged schematic capture program that allows you to draw wires manually and move components one pixel at a time and change all their parameters.

Here's an HTML 5 image editor that generates images as data: URLs, for instance:

Data URLs can be converted into tinyurls!

http://preview.tinyurl.com/smallreddot

• This is awesome Endolith. You brought the goods with your answer. I will try it out and will consider it as an easier option then my selected as it looks nicer also. Oct 19 '10 at 14:39

Some that I recommend for small projects and prototyping is Fritzing.

They are very good to convert the schematic to a prototype board. And very easy to use.

And the best, it's free!

• Can you show an example of drawing a schematic in Fritzing? Oct 2 '13 at 18:22
• @ThePhoton Done! Oct 2 '13 at 18:27
• Sometimes it exits without any error message just right in the middle of design process.. :( Feb 16 '15 at 19:23
• I've had a few problems with Fritzing on Linux. It seems to not like certain components (like strip board) and hangs for some time, particular when re-calculating complex layouts. But its nice for generating pix of simple stuff.
– Tom
Aug 4 '15 at 23:57

Personally I don't like the traditional electronics schematics, because I'm normally making stuff for non engineers. So I use Photographs and a regular drawing program to label the components. Thought it may be of interest to people checking out this thread

Posc Board http://sonodrome.co.uk/Pboard-01.png

I like this method as it's easy to understand and quick to draw up. (obviously this picture comes with a key describing each label)

• just curious: what drawing program did you use for the annotations? Dec 20 '09 at 15:19
• But that's a parts placement diagram, not a schematic. The schematic is for explaining a circuit's operation, the parts diagram is for building a physical copy. Dec 21 '09 at 2:26
• But how do you connect the parts to each other? This isn't anything like a schematic. Dec 21 '09 at 15:40
• I normally have a photo of the tracks too, unless it's single side surface mount. And No, you're right it's nothing like a schematic. "Thought it may be of interest to people checking out this thread " I just thought it was interesting when looking at sharing circuit designs, it's so easy to take a hi res image nowadays, and sometimes this can share a greater amount of detail for less effort.
– Jim
Dec 22 '09 at 13:24
• @Jim - photo link broken as at January 16th 2012. It's a good idea to import pictures into the stack exchange system so the links don't break. (Maybe that feature was not available in Dec 09). Jan 16 '12 at 18:27

Could generate them in PostScript in conjunction with TeX?

pst-circ is a PSTricks package to draw electric and electronic circuits. It can be used either with TeX or LaTeX.

Check out this javascript program on google code. It's not ready to be used yet but it's getting close. It doesn't work in IE and it has some glitches. I wouldn't embed it in a web page yet, but you can use it separately. I'm not much of a javascript programmer but with some help we can create our own editor. It won't create waveforms though. It would be awesome if you could somehow include spice models in the xml .I think that would be a little too much for javascript though. this is just for quick sketches.

• Still needs work. :D Anything web-based that could output an image would be great, though. Oct 15 '10 at 17:43

I use gEDA as well. gschem for schematics and PCB for printed circuit board layout. As an open source example I did a remix of the ladyada Drawdio circuit. The files and documentation are at http://tinyurl.com/bq8pq4

My PCB footprint library and various EDA automation scripts are at http://www.luciani.org

• gEDA is looking nicer, I think I may install it on my personal laptop soon. Dec 17 '09 at 18:52

My personal favorites are:

1) EAGLE:

2) Multisim:

This program from National Instruments combines schematic and PCB design along with simulation to provide a very versatile tool for electronic engineering applications. Its libraries are great and simulations are quite accurate. Unfortunately, it comes at a slightly higher price, but is definitely worth it. Link: http://www.ni.com/multisim/buy/ Image:

3) Proteus:

This is one of my all-time top favorites, though it comes at quite a price. This is generally better for professional applications that require extensive tools, and applications where software price isn't an issue. Like Multisim, Proteus combines Schematic/PCB design with simulation, making it a very useful tool in the workplace. Link: http://www.labcenter.com/index.cfm Image:

While these are probably my top picks, other options include:

There are loads more out there, and there's not really one that's better than all the others. Schematic/PCB design tools are really the type of thing you need to try out for yourself and decide which you prefer personally. Use what you're most comfortable with!

• I suppose TINA-TI deserves a mention. It's free but somewhat crippled and one major version behind the non-free TINA, but it comes with most TI chips in its library, which for me makes it more useful out of the box than Linear's LTSpice.
– Fizz
Dec 11 '14 at 0:24

gEDA is a free and open source tool. The gEDA package includes a schematic editor, PCB layout editor, Gerber viewer, bill of materials (BOM) generation, etc.

It also has a huge symbol library.

Check gEDA/PCB Stuff for a bunch of projects designed using gEDA.

MetaPost has a library MakeCirc for making publication-style schematics. Here is the manual.

I use DipTrace http://www.diptrace.com/ it has a schematic tool, schematic capture, PCB layout, back propagation, auto routing and most important of all a very good library.

Designing custom libraries are as easy as the schematic tool. The learning curve is smooth and one can pick up the essentials in about an hour or two.

If you don't mind an online tool, may I sugest easyEDA:

Also upverter and 123d circuits are online viable options.

You should check out Upverter.com. They dont do simulation yet, but can do everything else you're looking for.