
Electronic Circuit Simulator in the Browser - okket
https://www.falstad.com/circuit/circuitjs.html
======
Immortalin
While we are at this subject, here's an electron wrapper of this I made for
using in school environments:
[https://github.com/Immortalin/Simulacra](https://github.com/Immortalin/Simulacra)

------
virgil_disgr4ce
It's funny to see this here—I've been a MEGA FAN of Falstad for many years
now, and I use this and many of his other tools in every single one of my
classes. If y'all don't know about this site, he's made SO MANY incredibly
excellent and informative tools it boggles the mind.

Seriously people, this guy is a freaking genius. I want to meet him just so I
can shake his hand, thank him, and buy him about a million beers.

------
Animats
That's very nice. I've used LTSpice extensively, but this was very helpful for
understanding phase-locked loops. Seeing the current flow in the wires helps.

------
olafalo
This is a fantastic tool! When I was younger, it was great to be able to
experiment without needing any hardware and while having more visibility into
what was happening. Especially cool that it lets you play with memristors.

------
ironix
This tool is the lowest-barrier-to-entry to get into circuit design -- used
the applet after trying commercial/trial tools (including "cloud-based" ones),
and all failed me.

------
childintime
Don't forget to do Options->European resistors!

This is a favorite among collegues. I believe at
[http://lushprojects.com/circuitjs/circuitjs.html](http://lushprojects.com/circuitjs/circuitjs.html)
already this is already marked.

------
p1mrx
When I made this 3-phase source, the voltages were out of whack until I reset
the simulation. Perhaps the phase offsets are relative to the time of
placement, instead of some absolute reference?

[http://tinyurl.com/y7dlszq2](http://tinyurl.com/y7dlszq2)

------
okket
Repository:
[https://github.com/sharpie7/circuitjs1](https://github.com/sharpie7/circuitjs1)

~~~
teraflop
Nice! I've been using this tool on an occasional basis for years (since long
before it was converted from a Java applet to JS) and I noticed that the
source code was available for download, but I had no idea it had switched to a
fully open-source development model.

------
vhost-
I built a simple keyboard matrix with a "scanner":
[http://tinyurl.com/yanykyws](http://tinyurl.com/yanykyws)

That LED represents a something (probably firmware on the keyboard) reacting
to the switch being pressed by a user.

Edit: I used a decade counter with a 5 col matrix for simplicity. I was using
a 4 bit binary counter, but the browser started really bogging down with a
bunch of components.

------
TwiztidK
I'm currently teaching an electronics class and have used this site heavily
for in-class demonstrations. Some of the concepts (like a Push-Pull amplifier)
are much easier to understand when you can see a visualization of how it
works.

~~~
Taniwha
I teach an occasional "electronics without math (except ohms law)" class at
the local makerspace - I've been using falstad ever since they showed up (many
thanks!)

------
TimTheTinker
Wow, this would have been a game changer when I was taking EE courses. So much
better than a half-working SPICE port on Mac OS X 10.2.

------
fady
Awesome site. I've been using Circuit Jam for Android for years.
[https://play.google.com/store/apps/details?id=com.circuitjam...](https://play.google.com/store/apps/details?id=com.circuitjam&hl=en_US)

I love that I can now play with this while on my computer and with monitors..

------
kulu2002
Used SPICE (PSpice) simulation tool a lot during college some 12 years back...
but this is pretty nice and much easier

------
santix
Nice site!

That example circuit is called a _resonant circuit_ and the oscillation that
is seen after the power supply is removed happens because both the capacitor
(C) and the inductor (or coil, L) store energy—in electric and magnetic
fields, respectively—and start feeding each other.

~~~
Taniwha
FYI try this:

set the 100 ohm resistor to 1 ohm

set the 15uF cap to 15pF

close the switch, open it again - check out the spark (or rather the stupidly
high voltage)

------
johnaquilio
A variation on this that has 3D graphics, visual effects etc. is
[https://www.electricVLab.com](https://www.electricVLab.com)

------
shove
I designed an actual board with this. Would have been SOL without it.

~~~
vortico
Same here. It never hit production, but this simulator was fully-featured
enough to replace SPICE and accompany breadboard prototypes before I ordered a
PCB run.

~~~
shove
haha, production in my case was sending $3k to China for 100 units ;)

------
gkhartman
I used this to better visualize the circuits in my undergrad physics courses.
I remember searching for a good animated representation of a curtain type of
circuit with the expectation of finding some decent gifs/videos, but I
stumbled upon this web app instead. :)

------
kragen
I wanted to build this from source to use offline, but so far I can't figure
out how; the source is in Java, compiled to JS with GWT, and I haven't figured
out how to install GWT yet. I've really enjoyed using it online.

Has anyone done a validation study comparing this simulator to a known-good
simulator like Berkeley SPICE?

~~~
joshvm
You can download a jar version, though perhaps it's older code. Still works
fine:

www.falstad.com/circuit-java/

~~~
kragen
Cool! I've installed it and it seems to work plausibly, though it's an old
enough version that its "export URL" function is no longer compatible with the
site. And the site has more features.

The validation question is interesting to me because I'd like to do things
that go beyond just academic exercises, so I'd like to know how much
confidence to have that the physical devices behave as modeled.

------
Tade0
I remember when this was still a Java applet - nice to see that it has been
since rewritten in JS.

I credit this app for being able to pass the first half of my sophomore year
at University - just months before I failed four courses(the allowance was
two) and was given a chance by the dean to redeem myself.

~~~
kmm
I was really happy to see it got rewritten in JS as well, because Java applets
are a pain (or just plain impossible). Sadly, the JS version is also a lot
slower, I don't know how that could have gotten prevented

~~~
slededit
Webassembly tends to help by a good margin.

------
dingo_bat
555 internals looks beautiful. I wish I had this when studying 555 for the
first time.

------
devxpy
That's great, but we really need something like this that can allow us to
simulate microcontrollers / raspberry pi. Development would become really
simple for us software guys then !

------
ladberg
I have 8 bookmarks in my browser and this has been one of them for the past
two years. It's incredibly useful for EE stuff and fun to just mess around in.

------
duncancarroll
Yes! I've wanted something like this since I was 12 and could never understand
why it didn't exist. How else was I to learn circuitry at that age? Thanks!

------
rightbyte
Falstad saved me during my university year. If just all field's had this type
of material ...

~~~
jpmoyn
Falstad ruined me during my university years, but i think we are talking about
two different Falstads

------
wybiral
I found this thing years ago and still occasionally go to it to play around
with different circuit concepts. Very cool!

------
dujoducom
Woah, I learned so much about electronics using the old java applet!

------
btell
pretty neat, ive used [http://www.partsim.com/](http://www.partsim.com/)
before - nice to see more simulations in the browser

------
agumonkey
on the topic of circuit analysis, read about
[https://en.wikipedia.org/wiki/Nodal_analysis](https://en.wikipedia.org/wiki/Nodal_analysis)
and
[https://en.wikipedia.org/wiki/Topology_(electrical_circuits)](https://en.wikipedia.org/wiki/Topology_\(electrical_circuits\))

lots of interesting bits

------
asusta
Thanks circuit lab username:asusta

------
markbnj
Always wanted to make one of these. Nice job!

------
sleavey
I'll throw my hat into the ring as well. I have also recently been building a
small signal AC analysis circuit simulator [1]. The main idea behind it is to
convert a closed source tool that has been around for years within the LIGO
scientific collaboration to one that is open source and implemented in Python.
It's almost functionally complete, can simulate transfer functions and
(accurate) noise from op-amps, resistors, capacitors and inductors in circuits
with current or voltage sources. There is a library of popular op-amps for
which we've measured the noise, open loop gain and various other parameters,
available to be simulated with.

[1] [https://git.ligo.org/sean-leavey/circuit](https://git.ligo.org/sean-
leavey/circuit)

~~~
AYBABTME
Looks pretty cool but the input is pretty esoteric to a newbie like me:
[https://git.ligo.org/sean-
leavey/circuit/blob/master/example...](https://git.ligo.org/sean-
leavey/circuit/blob/master/examples/liso/liso2.fil)

Same thing about the output format: [https://git.ligo.org/sean-
leavey/circuit/blob/master/example...](https://git.ligo.org/sean-
leavey/circuit/blob/master/examples/liso/liso1.out)

Is this a custom file format or a well known one?

Also, the references to LISO are all behind a user/password wall, which makes
it hard to learn: [https://wiki.projekt.uni-hannover.de/aei-
geo-q/start/softwar...](https://wiki.projekt.uni-hannover.de/aei-
geo-q/start/software/liso#download)

~~~
avip
It has a familiar Fortran/Academia/FEM solver vibe. This is very, very likely
a format inherited from a Fortran code.

~~~
sleavey
Ah, that might be the inspiration. The author used FORTRAN for other projects.

------
usermac
What a wonderful site.

------
shesto
i think i watched this before ony guy whos is korean student somewhere in USA,
teches via YT very cool stuff...

glad this is here.

------
raziel2701
Is there a way to use this without an internet connection?

~~~
newman8r
Yes, you can install the java version on your local machine.
[http://www.falstad.com/circuit-java/](http://www.falstad.com/circuit-java/)

I've done this in the past and it works just fine.

------
alphabetter
Paul Falstad did (and does) all the heavy lifting for this project, but the
co-host of the JS version at lushprojects.com is my site and I did the
original port from a Java applet to a GWT application that complies to JS.

Glad to know so many people find it useful. I always thought it was a great
visualisation tool which I why I wanted to put the effort in to do the port.

Off to bed now, but if people have questions I'll take a look at the
discussion again in the morning.

~~~
Something1234
Where do I learn to write simulations like this? I'm doing numerical models
this summer, and it feels like a lot of the notation is inconsistent, unlike
programming.

~~~
Sean1708
What's your background? I ask because if you need to learn the physics behind
how circuits behave then that's going to be a lot more difficult to self-teach
than just learning how to solve differential equations computationally.

~~~
Something1234
I've done a little bit of arduino nothing too impressive, and I've had basic
physics. I'm still having issues understanding how graphs(the data structure)
come into play and how to count the resistance in those situations. I've read
several books on basic electricity. As for calculus I've only had calc 1. What
should be my path to learn more about these simulations?

------
vinylkey
How do I get the scope output for circuits that I build?

~~~
teraflop
You can add scope plots by right-clicking on any component and selecting "View
in scope".

------
Filligree
While we're on the subject, allow me to plug Electrical Age:
[https://electrical-age.net/](https://electrical-age.net/)

It's a minecraft mod, yes. It's also a fully functional DC electrical
simulation, with realism as a primary focus. Any inaccuracies are either
strictly required (= it runs at 20Hz for most purposes), or allowances for
decent gameplay.

(Or bugs. Those are probably my fault.)

~~~
Kagerjay
People don't realize how much crazy stuff originates from minecraft.

For instance, battle royale (e.g. fortnite, pubg, realm royale, etc). That
came from a minecraft mod based on hunger games before Arma+dayZ implemented
it on their end.
[https://en.wikipedia.org/wiki/Battle_royale_game](https://en.wikipedia.org/wiki/Battle_royale_game)

But there's way more cooler stuff than that coming out of minecraft.

We have people building full blown computers in minecraft too.

Example:
[https://www.youtube.com/watch?v=SPaI5BJxs5M](https://www.youtube.com/watch?v=SPaI5BJxs5M)

You can even livestream yourself on a TV screen that you make on minecraft.
Example:
[https://youtu.be/IdlZRhKmWJY?t=327](https://youtu.be/IdlZRhKmWJY?t=327)

~~~
worldsayshi
The full blown computers running in Minecraft has made me hope for more games
that make computation an integrated part of game mechanics.

Like what if parts of the game code where represented as the environment. So
that you can build your own game. Perhaps you can mod the game from inside the
game. Or perhaps something more controlled, like modifying the level
generation by interacting with the level itself.

~~~
laythea
In my opinion, at this extreme, it becomes more like work, not fun. Might as
well use the brain cells for building a "real" game.

~~~
worldsayshi
I'm honestly curious: where do you think the boundary between work and play
occurs here? It seems to me that many of those that make those mods do it
mostly as a recreation, don't you think?

~~~
okket
> where do you think the boundary between work and play occurs here?

a) complexity

b) failure rate

c) consequences

~~~
worldsayshi
Exactly! And that's the beauty of designing such a game in the right way.
There's an opportunity to narrow down the freedoms in just the right way to
limit failure rates.

I don't think complexity alone is a game stopping issue. There are plenty of
highly complex games that people find fun and addictive. But complexity in
combination with high failure rates (a lot of trial and error) will kill the
fun.

But I think that high complexity with low error rates is perhaps exactly what
makes a game fun. If you can express yourself freely and roam around while
expecting most of your actions to produce an interesting result the game will
be very interesting.

------
Hupriene
I used and enjoyed circuitlab.io until it went for-pay only. Nice to have an
easy to use free alternative for very casual hobbyists like me.

~~~
compumike
That would be [https://www.circuitlab.com/](https://www.circuitlab.com/) \-- I
built it :)

Edit: if anyone wants, reply with your CircuitLab username and I'll give you a
free membership upgrade when I get home this evening.

~~~
cristoperb
username: cristoper

Thanks!

~~~
rafhn
username: Raft Thanks!

