Circuit library
Classic circuits, each from one description: the schematic and a live simulation, a breadboard build wire by wire with a parts checklist, a stripboard layout with its track cuts and links, and a routed 2-layer PCB with a KiCad 8 project, Gerbers, drill file and BOM to download — every layout checked against the netlist.
Added
Works with
- Circuit simulator Electronicsopens any circuit in the simulator to edit, probe and run it live
- KiCad board viewer Electronicsopens the circuit's board in the KiCad board viewer
- Gerber viewer and DFM check Electronicsopens the circuit's Gerbers and drill files in the Gerber viewer and its DFM check
- PCB fab rules for KiCad Electronicschecks the board against JLCPCB's and the other fabs' published limits
- JLC assembly parts check Electronicschecks the BOM's lines against JLCPCB's parts library
- Fault-finding trainer Electronicspractise fault finding on these circuits — a hidden fault on their PCB or breadboard, found with a virtual meter and scope
- Electronics course Electronicsa 13-unit course that uses these circuits as its lab — build, simulate and take the 555 flasher to a PCB
How to use it
I wanted one place for the circuits I keep rebuilding — an LED flasher, a regulator, an op-amp stage — where the schematic, the breadboard I build first, the stripboard I solder next and the PCB I order last cannot drift apart. Each circuit here is a single description: its parts, its nets, where each part sits on the schematic, the breadboard, the stripboard and the board, and what the circuit should do. Everything else — wires, jumpers, track cuts, links, copper — is worked out from that, and every layout is traced back to a netlist and compared with the original, so a wire in the wrong hole shows up as a red ✗.
How to use it
-
Pick a circuit from the list, or search (
555,regulator,mosfet,filter) and narrow it to a group. -
Schematic + simulate — the schematic, the simulated waveforms (and a Bode plot for amplifiers and filters) from circuit-sim’s solver, and a table of what the simulation should show next to what it did. Open in circuit-sim takes the whole circuit there, where you can change values, add probes, compare with ngspice, and press ▶ Live to run it continuously and click its switches.
-
Breadboard — an 830-point board with the parts in their holes and every jumper wire coloured by net (red supplies, black ground). Build: next step adds one part or wire at a time; tick the checklist as you go (the ticks are remembered in this browser).
-
Stripboard — the parts on 0.1″ stripboard with the track cuts (×) and wire links; Copper side shows it from underneath, mirrored, as you will see it when you cut and solder.
-
PCB — the routed 2-layer board from the top, the bottom, or as layers. Download the KiCad 8 project (schematic, board and project file; the footprints are embedded, so it opens without KiCad’s libraries) or the Gerbers + drill + BOM zip, ready to upload to JLCPCB or PCBWay. Or open the board in the KiCad board viewer, the Gerber viewer, or fab rules.
-
Parts — the bill of materials with part numbers and footprints, and the netlist.
-
The badges under the title are the checks: each layout’s connectivity against the netlist, and the board against JLCPCB’s 2-layer minimums.
How the layouts are made
-
Schematic: parts are placed by hand on circuit-sim’s grid; the wires are routed by an A* search that never lets two nets touch (no wire runs along another net’s wire or ends on one), ground pins get ground symbols, and probes go on the named nets.
-
Breadboard: parts are placed by hand on holes. Jumpers are automatic: each strip of a net that has a rail gets a short wire to the nearer rail, the two rails of one supply are bridged at the left end, and the strips of other nets are chained nearest first. The check follows the five-hole strips, the rails and the wires.
-
Stripboard: parts are placed by hand. The copper is cut at a free hole between neighbouring pins of different nets on a strip, and strips of one net are joined by straight links down a column, over free holes only. The check follows the strips between the cuts and the links.
-
PCB: footprints from KiCad’s standard libraries are placed by hand; the tracks are routed by a Lee/A* maze router on a 0.635 mm (25 mil) grid on both layers, with 8-way moves, a via cost, and a distance field that keeps every track 0.25 mm from other nets' copper (checked exactly segment by segment); a net that fails goes first on the next try. Tracks are 0.4 mm (0.6 mm for supplies), vias 0.8/0.4 mm — well inside JLCPCB’s 0.1 mm / 0.15 mm minimums. The check follows the copper itself: pads, tracks and vias that touch.
Notes
-
The simulation is circuit-sim’s own modified-nodal-analysis engine. Its newer behavioural models — 555 (comparators at ⅓ and ⅔ Vcc, an SR latch, discharge and an output stage), 78xx and LM317 regulators with dropout, an optocoupler with a current transfer ratio, the LM386, and op-amps whose output stops short of each rail as the LM358, TL072 and NE5532 datasheets give — are first-order models: good for seeing how a circuit works and for checking values, not for slew, noise or temperature.
-
Connectors (J) stand for the outside world: in the simulation a battery is a voltage source, a signal generator a sine or square wave, a load a resistor; on the boards they are pin headers or flying leads.
-
Part numbers are typical through-hole parts; LCSC numbers are left empty for jlc-parts to look up. Footprint geometry follows KiCad’s libraries; silkscreen outlines are simplified.
-
The circuits live in
/tools/circuit-library/<group>.js, one file per group, described in the format notes.
Feedback is a gift. Something to improve, a feature to add, or a bug? Tell me.
Runs entirely in your browser; nothing you type leaves this page.