# 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.

Would enjoy any pointers people could toss me.

-
 LTSpice for simulations and circuit creation though its heavily biased towards Linear Technologies products, KiCAD for PCB layout, schematics and Gerber files. – Chef Flambe Feb 6 at 3:43

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.

This is an example screenshot of the Circuitlab design environment:

This is an example screenshot of the Circuitlab simulation environment:

-
Put some informations, and eventually a screenshot – clabacchio May 10 '12 at 14:07
There are screen shots other places, just copy on over @monoman. – Kortuk May 10 '12 at 14:42
CircuitLab is now embedded into Electronics Stack Exchange! meta.electronics.stackexchange.com/questions/963/… – weiy Feb 27 at 19:40

Surprised no one mentioned KiCAD. It doesn't do SPICE simulations, but handles pretty much everything else. You might be able to use other SPICE tools with it's netlist, but I haven't tried.

-
Despite it's UI, Kicad is really quite powerful for the price (free) - 16 layer boards, Gerber export and no limit on board size. – Peter Gibson May 7 '10 at 2:09
One up vote for KiCAD. Very good tool. – Daniel Grillo Jul 10 '10 at 13:16
@DoxaLogos, For making a schematic or PCB, it is actually very easy to get accustomed to. Is there any way to get more parts added, or do I need to add them myself? – Kortuk Nov 24 '10 at 17:23
Peter, you say "despite its UI". Can you elaborate on that? – stevenvh Nov 25 '10 at 17:07
@Kortuk, It has some libraries you can download, but I think most you'll have to add them yourself. – Jay Atkinson Dec 6 '10 at 3:45

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. – Kortuk 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! – morgellon 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. – Kevin Vermeer 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. – Phil Frost Jan 6 at 14:02

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. – Kortuk 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. – Kortuk 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. :) – endolith Dec 17 '09 at 21:31
I use a scanner (better quality for line drawings than camera) + paper/pencil. Looks great! – Jason S Dec 20 '09 at 15:18

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. – Kortuk 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. :) – endolith Dec 21 '09 at 15:36
Interesting! I really have never heard of it. Thanks. – Daniel Grillo Jul 10 '10 at 13:14
Wow - thanks for that – tronixstuff Jul 14 '10 at 18:02

For more limited media there's AACircuit http://www.tech-chat.de/aacircuit.html

                        ___
.---|___|-----.
|             |
|             |
___   |  |\|        |
-|___|-----|-\        |
|  >-------'
.--|+/
|  |/|
|    |
===  ===
GND  GND


(created by AACircuit v1.28.6 beta 04/19/05 www.tech-chat.de)

-
I have to admit, that is quite fun. – Kortuk 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 :) – Johan May 6 '10 at 14:15
It seems to work with wine under Ubuntu as well. – Johan May 6 '10 at 20:13
I have now used it, and for just throwing a schematic together, awesome! – Kortuk Jun 16 '10 at 18:01
Looks awesome! But the web site is all in german! – Brad Hein Aug 31 '10 at 13:16

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"? – endolith Oct 22 '10 at 20:43
4000 character URLs!? – Kevin Vermeer Oct 25 '10 at 15:38
That's one of the most complicated circuits in the examples. Internet Explorer only accepts 2000 characters, unfortunately. :) – endolith Oct 25 '10 at 17:52

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. – Kortuk 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. – MrEvil 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. – antony.trupe Apr 20 '11 at 1:58

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. – Chris Gammell 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. – Kortuk♦ Dec 15 '09 at 18:27

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, just need to push some buttons to let them out :-)

Is this what you meant? Or did you mean something that is modifiable like a GoogleDocs for schematics? That'd be nice, wouldn't it?

-
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. – Kortuk 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. – Chris Gammell Oct 19 '10 at 18:42

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. – Kortuk♦ 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. – Series8217 Nov 24 '11 at 6:24

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

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

But it could 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 rep? 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 Stackexchange 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 stackexchange 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:

http://softwareas.com/ajaxjavascript-8-ways-to-create-graphics-on-the-fly

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. – Kortuk Oct 19 '10 at 14:39

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

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? – Jason S 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. – markrages Dec 21 '09 at 2:26
But how do you connect the parts to each other? This isn't anything like a schematic. – endolith 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). – Russell McMahon Jan 16 '12 at 18:27

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. – Kevin Vermeer Jun 16 '10 at 2:14
Still an interesting solution – Kortuk Jun 16 '10 at 15:16
ktechlab does have (experimental) svg export. – Yann Vernier Oct 1 '10 at 18:11
I came here looking for exactly this: a symbol library in SVG for use with Inkscape. Thanks! – nibot Jun 15 '11 at 4:45
Examples of schematics made using this collection: commons.wikimedia.org/wiki/… – endolith Aug 24 '11 at 15:34
show 1 more comment

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. – endolith Oct 15 '10 at 17:43

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.

-

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.

-

How about a Quite Universial Circuit Simulator (qucs)?

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

-

I use DipTrace and I'm very satisfied. It's not free, but is quite inexpensive. I tried Eagle, which seems to be the most widely used, but 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. Made me remember a traumatic experience with AutoCAD during the late 80s. 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.

-

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. – Kortuk♦ Dec 17 '09 at 18:52

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.

-

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? – Kortuk Mar 1 '12 at 1:43

http://www.designspark.com/pcb

I recently started to use it and have found that it works ok for whipping up quick circuits etc.

It's by RS Components and does require registration at their website, however the product appears to be free.

It will handle schematics as well as PCB and it is supposed to do Gerber files as well. Note I am not affiliated with RS Components in anyway.

-
 Thanks for the info. – Kortuk♦ Jul 17 '10 at 17:10

If you just want to draw schematics not for PCB . you can try DrawSCH,it can draw schematics online for free. try it http://www.dz863.com/

-

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

-

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

-

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.

-

There another interesting one - www.DoCircuits.com - real like schematics can be captured and shared.

-

I use FastStone capture to post screen shots.

Here are the steps:

1. ctrl-printscreen
2. Drag the area I want to capture
3. It pops up the image
4. I click on ftp. it knows my domain and where to put it. It makes up a name based on the date. It copies the url to the clipboard
5. I ctrl-v the url to the insert picture icon

That's it. You still have to have a schematic in your computer but this addresses a large part of your question.

Here's an example:

-
clearly a quick way to get it done when you are setup. I use multiple computers, many of them in a computer lab. I also like a solution I can quickly have working without installing software. If i set something up on one computer I think this may be the ticket. – Kortuk Jul 17 '10 at 17:11
I usually use alt-printscreen + mspaint + imageshack.us. Same effect as above, maybe slightly more steps to follow, but works on every version of windows without installing anything. – davr Aug 23 '10 at 18:19
Stack Exchange now has a network-wide pro account with imgur. Clicking the button above your answer will allow you to upload an image from your computer. With this host, we won't loose images when other sites go down/out of business/expire. Please don't host screenshots on your own site (or other image hosts, or anonymously on imgur). – Kevin Vermeer Oct 25 '10 at 15:36
@reemrevnivek, now when you link a picture from your own site it automatically takes it and uploads it with their account. – Kortuk Dec 22 '10 at 18:12
@mmccoo Do you still have a screen shot that you can post for us? Your current one doesn't make a whole lot of sense. – Kellenjb Jan 27 '12 at 18:15