Cheap, Cross-Platform Electronic Circuit Simulation Software?
dv82 writes "I teach circuits and electronics at the undergraduate level, and have been using the free student demo version of OrCad for schematic capture and simulation because (a) it comes with the textbook and (b) it's powerful enough for the job. Unfortunately OrCad runs only under Windows, and students increasingly are switching to Mac (and some Linux netbooks). Wine and its variants will not run OrCad, and I don't wish to require students to purchase Windows and run with a VM. The only production-quality cross-platform CAD tool I have found so far is McCad, but its demo version is so limited in total allowed nets that it can't even run a basic opamp circuit with a realistic 741 opamp model. gEDA is friendly to everything BUT Windows, and is nowhere near as refined as OrCad. I would like students to be able to run the software on their laptops without a network connection, which eliminates more options. Any suggestions?"
spice
Spice
If booting off a live DVD is OK then you may want to look at https://fedoraproject.org/wiki/ElectronicLab_Spin .
Eagle is pretty good: http://www.cadsoftusa.com/
Excuse me, but please get off my Pennisetum Clandestinum, eh!
For simulation, you can get Spice versions for all platforms.
For the CAD part, there is the EAGLE Light Edition from CadSoft http://www.cadsoftusa.com/freeware.htm It runs on Linux, Windows and Mac.
Whether running Linux or Windows - aren't you going to run into some serious horsepower issues if you try to accommodate students who own netbooks?
Also, don't forget that Macs can run Windows inside of a VM perfectly well, and Sun's VirtualBox is still free; plus VMware and Parallels offer significant student discounts.
#DeleteChrome
pirate McCad.
the DMCA requires provisions for circumventing copyright for the purposes of classroom instruction.
It's not infringement if you're using it in the classroom. that's the law plain and simple.
They're using their grammar skills there.
try ltspice
it's 100% professional, unlimited and free
though not open-source.
It runs perfect in Linux under wine
emulator
http://www.linear.com/designtools/software/
We had finance apps that students had to use in their coursework. Trying to get them to work on a Win/Linux/Mac system would have been painful and time consuming.
So we created a terminal server environment that let anybody RDP in to use the course apps. That way nobody had to pay for a real version, we paid for the terminal license.
That might work well for you rather than finding an app to support in 3 environments.
Good luck!
My mom says I'm cool.
You might look at JMCAD. I haven't built it since v0.08.087, but v1.4 is current.
This might not be anywhere near what you need, but this application definitely helped out my friend in his intro to electronics class
Falstad Circuit Simulator Applet
Really good on rudimentary stuff, done in Java for cross platform goodness.
Electronics CAD != Circuit Simulation.
LTSpice is free as in beer and works nicely even with more complicated problems. There is only a windows version available, but Linux support with wine should not be a problem. http://www.linear.com/designtools/software/
For simple circuits SolveElec runs on windows and mac, has a very nice user interface and is a good tool for teaching. http://www.physicsbox.com/indexsolveelec2en.html
A java applet, now in public domain. That's what we used in our school.
Professionally, I use Capilano's DesignWorks schematic capture on a Mac (they also support Windows). They have demos and some educational deals . (I use MacSpice for analog simulation and Osmond for PCB layout.) HTH.
Look, it's trying to think - Albert Rosenfield
Isn't this the reason we have computer labs at schools? So what if they can't work on their own computer. P
There is a nice applet at http://www.falstad.com/circuit/ - it might not be sufficiently sophisticated but it does at least handle op-amps.
I've had to use a handful of circuit simulators, and I've always found SPICE brittle. Perfectly reasonable circuits just refuse to simulate, even when good initial conditions are set. Now it's possible I've been doing something wrong. But on the whole I find SPICE deeply frustrating.
The most robust simulator I've used so far has been a demo version of SiMetrix. HSPICE also does a bang-up job... when it doesn't segfault. Unfortunately, HSPICE is very un-free (and buggy-as-hell), and although SiMetrix does have a demo, it's artificially limited in the size of circuits it can simulate.
Thoughts?
LTspice looks very cool.
I've never used it on Windows, though I see there's an installer for it. I use qucs on linux quite a lot, though.
http://sourceforge.net/apps/mediawiki/qucs/index.php?title=Main_Page
http://www.linear.com/designtools/software/
I've actually been in the same situation myself, two free (as in beer) SPICE derivatives I've found to work well are LTspice and TINA-spice (from linear and Texas Instruments respectively). They are windows binaries but function very well in WINE (in fact the developer(s) for LTspice have designed it to function as well as possible with WINE).
I've mostly used LTspice and it works very well and has a low learning threshold. Of course you can insert spice directives in the schematic to do more advanced functions like basic parameter sweeps as well as monte-carlo simulations and so on and so forth. Check out LTspice's yahoo group for a bunch of documentation.
As far as other recommendations for eagle go I doubt that's what you're looking for as eagle is solely for schematic capture and pcb design, there are no simulation capabilities in it.
FREE! It is Windows only but runs great on Wine. The author supposedly is very supportive of making sure it runs well on Wine.
http://www.linear.com/designtools/software/
It is optimized for analyzing switching power supply circuits so it probably is the fastest spice implementation out there. I have quit using all the other spice based simulators out there in favor of LTSpice. User support can be found on the yahoo group:
http://tech.groups.yahoo.com/group/LTspice/
Try Electric CAD (www.staticfreesoft.com) in combination with LTSpice (previously mentioned).
I don't know if it's been mentioned already or not, but Multisim from National Instruments is a very good software. It's been used by the professors at the school where I work for as long as I can remember.
The game.
If you can get over the fact that it's a basically a marketing tool for Linear Technologies, SwitcherCAD is pretty easy to get working under WINE (I think it's an officially-supported way to run it, actually). The standard set of components is focused on prototyping power supplies, but I've had good luck importing PSPICE macromodels from other manufacturers into my library. Of course, if you get to that point, you'll probably have to set up the library yourself and give the students a package -- it's possible to do, the formats are straightforward and there's some information on the net, but it's not for the faint of heart and certainly not for students just trying to simulate a circuit.
Of course I don't know how much you want your students to be able to do. SwitcherCAD only does schematic capture and simulation; you'd have a hard time going from the schematic to board artwork, for example, and there aren't really any reasonable digital logic components (I was able to import some Philips models into my own components for this purpose, but they didn't simulate very fast). But if all you want to do is simulate the guts of a 741 and plot voltage and current over time, it will probably do the job pretty well.
MacOS X 10.5 ships with BootCamp which can boot a Windows partition (Parallels and Fusion can use this partition for their copy of Windows) and run it instead of MacOS X.
There are two commercially available to run Windows on MacOS X. Parallels and VMware's Fusion both require a commercial FULL RETAIL copy of Windows to run a Windows application in a virtual environment (not emulation).
There's also Crossover for Macintosh that can run _some_ Windows applications like Office without installing Windows.
The Linux users are out of luck it seems, but if you use SPICE instead of your Windows-only solution, everyone wins.
Since windows, mac and linux are generally all being run on the same hardware these days perhaps the bootable live linux CD would be a option for your students.
There is one already available for the gEDA 2007 suite.
http://www.brorson.com/gEDA/
I recommend repacking a live ISO image with your own customizations. This could provide the same environment and tools to all your students saving each class the hassle of custom building these tools.
I like to use this, please don't laugh, I am an electronics novice. http://www.falstad.com/circuit/ It may be too simplistic to warrant being mentioned along the likes of OrCad, Spice, etc. but boy, does it help build intuition!
I *totally* missed that.
I'll go sit in the corner.
My mom says I'm cool.
I don't use it frequently, and I'm an uber novice at electronics, but a couple of months back I was looking for a decent simulation app as well, and out of all the ones I tried (most of them referred to above), KTechLab came out as the best option for me. Just my two cents.
LTSpice formerly known as SwitcherCAD is a good one. Its available on Linear Technology's website along with some other great SIM tools No limit of the number of nets. Runs on Linux too and it's a free full version.
Edacious. It's open source, and runs on Mac and Linux, but is still in beta. Currently only DC and transient analysis are supported by its simulator, but it can export simple circuits to SPICE.
You can download the fully functioning demo of CircuitMaker 2000 here
Install it with Wine. It will run for 30 days. Delete ~/.wine, reinstall.
Or if you want students to really learn SPICE, use WinSPICE from Hong Kong Polytechnic, and teach them to build netlists by hand.
Qucs is very capable.
What about Linux circuit simulation software? At least that can be run in a VM for free.
No, I will not work for your startup
http://www.logicworks5.com/
Only for windows, but I have made it run in wine with no problems. Pretty powerful, you can simulate a full datapath.
FYI- Cost shouldn't really be a factor for acquiring Windows for your students. The Microsoft Windows operating systems are free for students in Science, Technology, Engineering, and Math. Ask around- your university should have a MSDNAA repository for students to check out Windows for free. They're also aloud to keep their license once they graduate. http://msdn.microsoft.com/en-us/academic/dd759402.aspx If you can't find multiple platform software that meets your needs, perhaps virtualization isn't a bad idea.
I have used it in windoze and running under wine and it rocks! It has many special features people don't seem to know about including the ability to use .wav files as input and to create .wav files as output. You can simulate a LPF circuit with a square wave input and output a .wav file and hear what a LPF does. I made an instructable here: http://www.instructables.com/id/Analog-Sound-Synthesis-on-Your-Computer/
It in the contest so vote for me if you like the 'ible!
Ansoft is the world's leading provider of FEM based design software. They also have circuit simulation products Designer Nexxim etc. All have free student versions. It is something your students can put on their resume. www.ansoft.com.
sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
I ask this because IIRC you can get 90 day eval versions of Windows for free. They also have a 180 day eval version of Win2K3 server, which will run just about anything the desktop runs. There are even plenty of places around the net that will show you how to turn 2K3 server into Workstation, but for a single class this would probably be overkill.
So why don't you try contacting Microsoft? Since you are teaching a class I wouldn't be surprised if they'd be willing to send you the eval discs for Vista or 2K8 server. Or you could just go here and get the 180 day 2K3 straight from MSFT. So unless your class lasts longer than 6 months there really isn't any reason why they just can't run the software on 2K3 in a VM. With 2K3 they can easily turn off the unneeded server roles and have it run decent on pretty much anything. IMHO this would be the cheapest (free) and quickest way to fix your problem without having to learn a new software.
ACs don't waste your time replying, your posts are never seen by me.
I did some basic simulations in Ngspice using Kjwaves as a waveform viewer and it worked pretty well for my purposes (I did end up editing a little of the Kjwaves code to fix some issues I had with autoscaling axes, but it was pretty minor). The interface is comparable to using HSPICE + Awaves in my experience. http://ngspice.sourceforge.net/kjwaves.html
I have an Idea......Teach your students to analyze circuits manually. In 30 years of analog design, I have had only one simulation that told me something I hadn't already discovered with a quick manual analysis. Even though the simulation predicted a problem. It only warned me there was a problem. The problem the simulation predicted didn't exist in the real circuit. Instead the real circuit had a problem far more serious and difficult to fix.
Far more useful to your students will be an understanding of the effect of capacitance and non linearity in the feedback loop or the effect of capacitance at the summing junction. Also an understanding of how real devices differ from theory is also a good idea.
34 years ago I had a professor warn us that simulations were useful if you knew how to sort the useful data out of the reams of data simulators produce. In the years since, this is still sound advice.
Finally teach your students that they need to build the circuits they design. The electrons follow the rules, we have to discover what those rules actually are.
Check out Capilano's Designworks. There is both Mac & Windows (no Linux) versions. I have used several different schematic capture packages, and Designworks is really very good. In all honesty, I have found Orcad to crash way too often. In fact I've had Orcad crash so bad that a reinstall was necessary. Thankfully, this was an older version (11 I think).
No, I don't trust in god. He'll have to pay up front, like everybody else.
http://www.falstad.com/mathphysics.html There's a bunch of Java applets here that I've always found useful. Not sure if it'll do EVERYTHING you want, but for circuitry the "Analog Circuit Simulator Applet" would likely be sufficient. Plus it's got a lot of other potentially related applets.
http://www.cs.drexel.edu/~bjb39/
We used this system to simulate processor functions, it is an open source senior design project from drexel
http://en.wikipedia.org/wiki/Rocky's_Boots
There's a nice bit of software called PUFF that was written at Caltech. It is available as an MS-DOS binary, which you can run on XP or Mac through DOSBox. Also, on the PUFF website they report that the source code comes with the program, and some have had success in compiling it for Linux. Unfortunately, you can't buy the software directly. Some textbooks come packaged with it, though. I can recommend the Rutledge book as a nice overview of lab electronics.
I would say that it these students are in an engineering or science program, they must know how to use these tools, just like someone in a science/math program must know how to use Mathematica. That said, if the course in question is just a survey course, the specific tools may be less important than the exposure. For this there may be alternatives. For instance, an only breadboard simulator is available. Google circuit simulators and there may be more available. I am not sure what is available for CAD.
Here is another issue. If the class teaches the design techniques and not the application, the maybe students can use whatever they want. What distresses me is that we are no longer teaching the high level concepts, but the mouse based menu selection. Instead of teaching the concept of cut and paste, we are teaching the menu commands. The problem is when the menu changes, the students are SOL. For career training, this is fine, but I think we should be teaching at a higher level for college. For instance, in my college, we were just told to write a program to solve the problem or create a simulation. How we did it using the available tools were up to us.
"She's a scientist and a lesbian. She's not going to let it slide." Orphan Black
Not sure if electric [1] provides all the features you want. It is free, made in java (hence cross platform).
[1] http://www.staticfreesoft.com/index.html
You could use coloured petri-nets, a tool created by some phd student at daimi in aarhus (the Computer Science faculty of Aarhus University). Here is a link: http://wiki.daimi.au.dk/cpntools/cpntools.wiki I am not sure if it is useful, but surely a test worthy.
If your school has Simulink, there's a physical modeling (e.g. circuits) module for it called Simscape.
The first time I ran SPICE was on a CDC-6400 and used punched cards for the input - and this was for a course taught by Leon Chua (of memristor fame).
How about you do the students a favor and make them use the products they will be required to use when they have a real job?
If your school has Simulink, there's a physical modeling (e.g. circuits) module for it called Simscape. The circuit models are supported on and will run identically on Windows, Linux, and Mac.
At work I use Tina http://www.tina.com/English/tina/ on Linux under Wine. I put a report in the winehq app database about it. The version I have just needs to run in a Wine fixed-size virtual desktop.
Tina is currently my favorite simulation package since the license is quite cheap, it has an integrated schematic editor and is generally fast and easy to use.
I can't say if the latest and greatest version of Tina works with Wine though, since the version I have a license for is a couple of years old now.
Pages on Wikipedia are categorised (categories are at the bottom of the pages). When you find something interesting, look at the categories, there may be things there you are unaware.
For example, in this case : Category:Electronic_design_automation_software.
Back when I was taking my Electrical Engineering courses at my old college, my instructor had us using pSpice. It's a free program that is useful for making circuit schematics and running simulations. This program does both DC circuits and AC circuits and has a simulated oscilloscope. There are tons of IC's and customizable parts to choose from and the user interface is drag and drop. It's a Windows program unfortunately.
http://www.electronics-lab.com/downloads/schematic/013/
...uranium purifier plant simulator. I have an aging client in a small asian country who will pay me. But he's cheap, though, so I need something free.
Table-ized A.I.
It would be nice to accommodate cross-platform, but the reality is it's too fucking bad. You need to have a specified platform to teach with, even cross-platform can cause issues which distract from the subject at hand. Students have access to labs or the option of running virtualization, but really is it your problem if students wish to "think different"?
In the course description make a statement to the effect that "this course will require you to acquire a circuit simulation package capable of <insert reasonable specification here > An example of the complexity and functionality required is the following file [take your most complex course material] which your package must be able to handle." Then go on to say " ... The course text is designed around < textbook name > which includes a free version of <package name> which only runs on the following operating systems. You may use any other circuit simulation package, provided it allows you to run the course examples and submit the course assignments."
Obviously, almost all the students will go with the recommended solution. You will get the occasional smart-arse who thinks they know better and tries something unconventional. They'll either pass, make more work for themselves and still pass, or crash and burn. However thy do, they'll have learned another valuable lesson: this time about life - which is another attribute of tertiary education.
politicians are like babies' nappies: they should both be changed regularly and for the same reasons
Microcap 9 works well under wine, and gspiceui or gschem are relatively decent circuit simulation software for the linux architecture. You should get them used to writing out the SPICE code, it'll give them a better sense of the wonderful joy that is programming.
There's also Spice Opus. It runs on Linux / Windows (no Mac version afaik). http://www.fe.uni-lj.si/spice/
OK, I'm gonna bite as no-one else has so far...
Demo versions of software are just that - meant so you can test out the software to see if it fits your needs. If you're going to be using this software year after year to teach a course at university, you should get a licence, one per user. Obviously, this makes more sense if it's installed on a university machine, in which case what platform they're using is irrelevant anyway. Alternatively, if you really want the students to install it on their own machines, why not contact the vendor and ask them if they'll license it for educational use so it covers the students for the duration of the time they're on that course / degree / whatever.
If you're not willing the license the software you want to use for teaching, then you'd be best to look at open source. As numerous people have suggested, spice is an option and has been around for a long time now. It's also very widely used in this field, so not only would the students get it for free and able to keep it, you'd be teaching them skills they can re-use rather than teaching them how to use proprietary software.
I can recommend the circuit simulator developed by Paul Falstad (find it at http://www.falstad.com/circuit/). It is a Java applet, which can be downloaded and used without net access.
There is a set of example circuits available at http://www.falstad.com/circuit/e-index.html
Documentation: We need documentation, tutorials, manuals and much more.
and you see the problem.
While this tool is being written with the best of intentions, it's nowhere near the level of support needed to teach a class. The students will spend as long trying to learn the tool as they will trying to learn the course. Any package used is merely to illustrate and support the course content - not a learning goal in it's own right. Until this (and any other package: OSS or commercial) can be useful from minute #1, rather than another thing you have to learn, then it's more of an obstruction than a help.
politicians are like babies' nappies: they should both be changed regularly and for the same reasons
A couple of years ago I used ngspice en gschem for simulation.
I had some problems getting the whole toolchain running. But after the initial effort it proved very flexible and effective.
By creating a Makefile for the whole project everything could be automated.
Use gschem to define the circuit.
gnetlist with the spice back-end to generate a circuit
ngspice for simulation
gwave for viewing graphs and gnuplot for producing images.
I use it regularly on Ubuntu, under WINE. Everything works fine, except network features (you have to update manually)
It's an excellent simulator and you can add other vendors' SPICE models to it easily.
Linear Technology makes it available for free, and they have worked to make it usable under WINE (or so the sales rep told me)
If the best software only runs under Windows, then, dammit, buy it and run it under Windows.
You don't buy a car and expect to fly it to Denver, do you? No, stupid, you buy an airplane to do that.
Fata viam invenient.
SPICE OPUS is a free analog circuit simulator engine that runs under linux or windows. It is based on UC Berkeley's SPICE 3f4 and Georgia Tech Research Institute's XSPICE. SPICE OPUS is developed and maintained by the Faculty of Electrical Engineering at the University of Ljubljana, Slovenia. I prefer LTSPICE or TINA-TI.
I would suggest the gEDA Project, http://www.gpleda.org/index.html. It gives several differing options for tools, simulation engine, &c. Also, it has been in existence for some time, and has a fairly knowledgeable user base.
While it is designed for *nux, there are reports of successful compilation on Windows.
Timothy,
You might find a version of your question pop up on most EE Boards at one time or another. Most people (including myself) had this sort of experience:
I started simulation with OrCAD/PSPICE/layout/ but I moved to Linux because I hated windows.
This is how it went down:
1. I refuse to use non-GPL software on my beautiful Linux box. I'll try the GPL/free stuff.
2. Damn hard road I've taken. I am writing SPICE code when I should be simulating and laying out my boards.
3. Ok, ok... GPL is out. That stuff needs a lot of work to become pro. Let me try the cheaper SPICE/Layout products.
Tried, all the cheaper stuff, http://www.islandlogix.com/ (is probably the best).
4. Ok, BIG snag need 8-10 layers with diff pairs and 30-40 multipin devices. I need a serious autorouter.
5. Eagle, Electronics workbench, all are worthless. Only Mentor and Cadence can handle this.
6. Hello OrCAD, PCB Editor and PSPICE. How have you been my old friends? Nice to be back.
7. Hello Windows. You still suck.
What I am trying to say here is: any serious EE should know Mentor/Cadence. Hate me for saying this and mod me to hell.
It is what the industry is using and your hiring manager will not give a shit about your GPL/Linux ideas. He's got a deadline and a set
of tools that work and he wants you to come in and start working.
Before I close, I would like to send out a plea to Mentor and Cadence: Please, please, PLEASE consider porting to OSX and Linux.
If you are the first one you will OWN the market.
And that's my $0.02 worth
Doesn't the department have some soft of coherent policy about software? I've taken classes at four colleges over the years (three degrees in three different fields), and the department always had a fairly narrow policy about what was acceptable and what was not. If simulation is a required part of the circuit design classes, I would expect the department to have a position on the software tools that was independent of instructors or textbooks. If for no other reason than if you got hit by a bus six weeks into the class, a substitute would be able to take over and know what tools the students were using.
My undergraduate school developed a Windows (not cross-platform) circuit simulator called Cedar Logic which is being hosted on SourceForge here. It works well for digital logic gates, but doesn't do anything more than that.
For examples and concepts the java applet here is quite interesting, but not very good for doing anything too complex or precise.
Has nice animations of how the circuit works. He also has some other math physics applets there too and they are all open source.
http://www.falstad.com/circuit/
http://sol.gfxile.net/atanua/
Not sure if it is what you are looking for. Hope it helps.
We apologise for the fault in this post. Those responsible have been sacked. -- Signed RICHARD M. NIXON
I've used the Multisim/Electronics Workbench package under WINE before with no problems. I've seen it used in labs for teaching students, it should do the job just fine.
I think the [MS Word] paperclip is a great idea. - Miguel de Icaza
Firstly I cant understand why you need cad for circuit simulation. As for pure cad we use BRLcad and it is industrial quality for sure. Pentagan uses it too.
I'd like to learn.
would Logisim (open source, cross platform) work for you?