2026-04-07 21:33:34 +07:00
{
feat: expand SPICE component catalog (fases 9 + 10)
Adds 44 SPICE mappers, 58 custom metadata entries, and 12 visual
Web Components covering logic gates, transistors, op-amps, regulators,
sources, electromechanical parts and integrated-circuit packaging.
Fase 9 — component catalog expansion
------------------------------------
- 7 logic gates (AND/OR/NAND/NOR/XOR/XNOR + NOT) as SPICE B-sources
- 8 multi-input gates (AND/OR/NAND/NOR with 3 and 4 inputs)
- 9 transistors: 5 BJTs (incl. PNP 2N3906/BC557) + 4 MOSFETs (incl.
P-channel IRF9540/FQP27P06). NMOS refactored from Level=3 W=0.1
(hangs ngspice) to Level=1 with sane W/L
- 5 op-amps: LM358, LM741, TL072, LM324 with per-chip saturation
rails + opamp-ideal
- 4 linear regulators (7805, 7812, 7905, LM317) with dropout
- 3 batteries (9V, AA, coin-cell) with realistic ESR
- Signal generator (sine / square / DC)
- 2 Schottky diodes (1N5817, 1N5819) + photodiode (lux-driven
current source)
Fase 10 — electromechanical + ICs
---------------------------------
- Relay (SPDT): coil + L + S-switch with native hysteresis +
flyback diode, inverted-control trick for the NC contact
- Optocouplers 4N25 and PC817 (LED + CCCS with CTR=0.5 / 1.0)
- 7 74HC ICs as DIP-14 packages emitting 4 or 6 B-sources per
component (first mapper pattern emitting multiple device cards)
- 3 flip-flops (D, T, JK) — digital-sim only (edge detection is
not representable in ngspice .op)
- L293D dual H-bridge motor driver
Infrastructure
--------------
- scripts/component-overrides.json gains a _customComponents[] array
that lets new Velxio-only parts survive metadata regeneration
(previously applyOverrides() could only patch wokwi-elements
components that had already been scanned)
- scripts/generate-component-metadata.ts injects custom entries
before the patch loop
- New ComponentCategory values: 'logic', 'analog', 'electromech'
- frontend/src/components/DynamicComponent.tsx PASSIVE tracing
extended from just ['resistor','resistor-us'] to 9 two-terminal
passives with per-part pin name maps
- New CI workflow test-circuit.yml runs the sandbox on push/PR
- frontend-tests.yml regenerates metadata and fails if committed
JSON is stale
- Documented 2 new ngspice gotchas in circuit-emulation-gotchas.md:
unicode in netlist titles silently hangs the parser, and
MOSFET Level=3 + W=0.1m causes .op to hang
- 164/164 sandbox tests passing in ~9 s (was 88 pre-fase-9)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 06:44:18 +07:00
"$comment" : "Custom property overrides applied AFTER auto-generation from wokwi-elements. Add entries here to customize controls, add new properties, or change defaults. These survive metadata regeneration. Use `_customComponents` to inject Velxio-only parts not defined in wokwi-elements." ,
"_customComponents" : [
{
"id" : "logic-gate-and" ,
"tagName" : "wokwi-logic-and" ,
"name" : "AND Gate" ,
"category" : "logic" ,
"description" : "2-input AND logic gate. Output Y = A · B." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "logic" , "gate" , "and" , "digital" ]
} ,
{
"id" : "logic-gate-nand" ,
"tagName" : "wokwi-logic-nand" ,
"name" : "NAND Gate" ,
"category" : "logic" ,
"description" : "2-input NAND logic gate. Output Y = NOT(A · B)." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "logic" , "gate" , "nand" , "digital" ]
} ,
{
"id" : "logic-gate-or" ,
"tagName" : "wokwi-logic-or" ,
"name" : "OR Gate" ,
"category" : "logic" ,
"description" : "2-input OR logic gate. Output Y = A + B." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "logic" , "gate" , "or" , "digital" ]
} ,
{
"id" : "logic-gate-nor" ,
"tagName" : "wokwi-logic-nor" ,
"name" : "NOR Gate" ,
"category" : "logic" ,
"description" : "2-input NOR logic gate. Output Y = NOT(A + B)." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "logic" , "gate" , "nor" , "digital" ]
} ,
{
"id" : "logic-gate-xor" ,
"tagName" : "wokwi-logic-xor" ,
"name" : "XOR Gate" ,
"category" : "logic" ,
"description" : "2-input XOR logic gate. Output Y = A ⊕ B." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "logic" , "gate" , "xor" , "digital" ]
} ,
{
"id" : "logic-gate-xnor" ,
"tagName" : "wokwi-logic-xnor" ,
"name" : "XNOR Gate" ,
"category" : "logic" ,
"description" : "2-input XNOR logic gate. Output Y = NOT(A ⊕ B)." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "logic" , "gate" , "xnor" , "digital" ]
} ,
{
"id" : "logic-gate-not" ,
"tagName" : "wokwi-logic-not" ,
"name" : "NOT Gate (Inverter)" ,
"category" : "logic" ,
"description" : "1-input inverter. Output Y = NOT(A)." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 2 ,
"tags" : [ "logic" , "gate" , "not" , "inverter" , "digital" ]
} ,
{
"id" : "bjt-2n2222" ,
"tagName" : "wokwi-bjt-2n2222" ,
"name" : "2N2222 (NPN BJT)" ,
"category" : "analog" ,
"description" : "General-purpose NPN bipolar transistor. The go-to part for low-power switching and small-signal amplification." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "transistor" , "bjt" , "npn" , "2n2222" , "analog" ]
} ,
{
"id" : "bjt-bc547" ,
"tagName" : "wokwi-bjt-bc547" ,
"name" : "BC547 (NPN BJT)" ,
"category" : "analog" ,
"description" : "Small-signal NPN bipolar transistor, European equivalent of 2N3904. High gain (~400)." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "transistor" , "bjt" , "npn" , "bc547" , "analog" ]
} ,
{
"id" : "bjt-2n3055" ,
"tagName" : "wokwi-bjt-2n3055" ,
"name" : "2N3055 (NPN Power BJT)" ,
"category" : "analog" ,
"description" : "Power NPN bipolar transistor. 15A / 60V / 115W TO-3 package. Classic audio amp output stage." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "transistor" , "bjt" , "npn" , "power" , "2n3055" , "analog" ]
} ,
{
"id" : "bjt-2n3906" ,
"tagName" : "wokwi-bjt-2n3906" ,
"name" : "2N3906 (PNP BJT)" ,
"category" : "analog" ,
"description" : "General-purpose PNP bipolar transistor. Complement of the 2N3904/2N2222." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "transistor" , "bjt" , "pnp" , "2n3906" , "analog" ]
} ,
{
"id" : "bjt-bc557" ,
"tagName" : "wokwi-bjt-bc557" ,
"name" : "BC557 (PNP BJT)" ,
"category" : "analog" ,
"description" : "Small-signal PNP bipolar transistor. Complement of the BC547." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "transistor" , "bjt" , "pnp" , "bc557" , "analog" ]
} ,
{
"id" : "mosfet-2n7000" ,
"tagName" : "wokwi-mosfet-2n7000" ,
"name" : "2N7000 (N-MOSFET)" ,
"category" : "analog" ,
"description" : "Logic-level N-channel MOSFET. Vth ≈ 1.6 V, fully enhanced at 3.3 V — perfect for GPIO-driven load switching." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "transistor" , "mosfet" , "nmos" , "n-channel" , "logic-level" , "2n7000" , "analog" ]
} ,
{
"id" : "mosfet-irf540" ,
"tagName" : "wokwi-mosfet-irf540" ,
"name" : "IRF540 (N-MOSFET Power)" ,
"category" : "analog" ,
"description" : "Power N-channel MOSFET. Vth ≈ 3 V (needs 10 V for full enhancement), 33 A / 100 V, R_DS(on) ≈ 77 mΩ. Classic motor / solenoid driver." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "transistor" , "mosfet" , "nmos" , "n-channel" , "power" , "irf540" , "analog" ]
} ,
{
"id" : "mosfet-irf9540" ,
"tagName" : "wokwi-mosfet-irf9540" ,
"name" : "IRF9540 (P-MOSFET)" ,
"category" : "analog" ,
"description" : "Power P-channel MOSFET. Used for high-side load switching with logic input." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "transistor" , "mosfet" , "pmos" , "p-channel" , "irf9540" , "analog" ]
} ,
{
"id" : "mosfet-fqp27p06" ,
"tagName" : "wokwi-mosfet-fqp27p06" ,
"name" : "FQP27P06 (P-MOSFET)" ,
"category" : "analog" ,
"description" : "Logic-level P-channel MOSFET. Suitable for 3.3V / 5V gate drive." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "transistor" , "mosfet" , "pmos" , "p-channel" , "fqp27p06" , "logic-level" , "analog" ]
} ,
{
"id" : "opamp-ideal" ,
"tagName" : "wokwi-opamp-ideal" ,
"name" : "Ideal Op-Amp" ,
"category" : "analog" ,
"description" : "Idealized operational amplifier. Infinite gain, infinite input impedance, no saturation. Use for textbook circuits where real-chip limitations are irrelevant." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "opamp" , "amplifier" , "ideal" , "vcvs" , "analog" ]
} ,
{
"id" : "opamp-lm358" ,
"tagName" : "wokwi-opamp-lm358" ,
"name" : "LM358 (Dual Op-Amp)" ,
"category" : "analog" ,
"description" : "Dual single-supply op-amp. Output swings close to both rails. Ideal for MCU-powered signal conditioning." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "opamp" , "amplifier" , "lm358" , "single-supply" , "analog" ]
} ,
{
"id" : "opamp-lm741" ,
"tagName" : "wokwi-opamp-lm741" ,
"name" : "LM741 (Op-Amp)" ,
"category" : "analog" ,
"description" : "Classic general-purpose op-amp. Requires ~1.5V of headroom from each supply rail. Used in didactic circuits." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "opamp" , "amplifier" , "lm741" , "classic" , "analog" ]
} ,
{
"id" : "opamp-tl072" ,
"tagName" : "wokwi-opamp-tl072" ,
"name" : "TL072 (JFET Op-Amp)" ,
"category" : "analog" ,
"description" : "JFET-input dual op-amp. Very high input impedance, low noise — audio and instrumentation." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "opamp" , "amplifier" , "tl072" , "jfet" , "audio" , "analog" ]
} ,
{
"id" : "opamp-lm324" ,
"tagName" : "wokwi-opamp-lm324" ,
"name" : "LM324 (Quad Op-Amp)" ,
"category" : "analog" ,
"description" : "Quad single-supply op-amp. Same electrical spec as LM358, four channels per package." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "opamp" , "amplifier" , "lm324" , "quad" , "single-supply" , "analog" ]
} ,
{
"id" : "reg-7805" ,
"tagName" : "wokwi-reg-7805" ,
"name" : "7805 (+5V Linear Regulator)" ,
"category" : "analog" ,
"description" : "Fixed +5V linear regulator, 1A, TO-220. Dropout ≈ 2V. Classic MCU power supply." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "regulator" , "linear" , "78xx" , "7805" , "+5v" , "analog" ]
} ,
{
"id" : "reg-7812" ,
"tagName" : "wokwi-reg-7812" ,
"name" : "7812 (+12V Linear Regulator)" ,
"category" : "analog" ,
"description" : "Fixed +12V linear regulator, 1A, TO-220. Dropout ≈ 2V. Motor drivers, fan supplies." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "regulator" , "linear" , "78xx" , "7812" , "+12v" , "analog" ]
} ,
{
"id" : "reg-7905" ,
"tagName" : "wokwi-reg-7905" ,
"name" : "7905 (− 5V Linear Regulator)" ,
"category" : "analog" ,
"description" : "Fixed − 5V linear regulator, 1A, TO-220. Negative-rail complement of the 7805." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "regulator" , "linear" , "79xx" , "7905" , "-5v" , "negative" , "analog" ]
} ,
{
"id" : "reg-lm317" ,
"tagName" : "wokwi-reg-lm317" ,
"name" : "LM317 (Adjustable Linear Regulator)" ,
"category" : "analog" ,
"description" : "Adjustable +1.25V to +37V linear regulator. V_out = 1.25·(1 + R2/R1). Versatile workhorse." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 3 ,
"tags" : [ "regulator" , "linear" , "lm317" , "adjustable" , "analog" ]
} ,
{
"id" : "battery-9v" ,
"tagName" : "wokwi-battery-9v" ,
"name" : "9V Battery" ,
"category" : "analog" ,
"description" : "PP3 / 6LR61 9V alkaline battery. Modelled as 9V DC with ~1.5Ω internal resistance." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 2 ,
"tags" : [ "battery" , "source" , "9v" , "power" , "analog" ]
} ,
{
"id" : "battery-aa" ,
"tagName" : "wokwi-battery-aa" ,
"name" : "AA Battery (1.5V)" ,
"category" : "analog" ,
"description" : "AA alkaline cell. 1.5V, low ESR (~0.15Ω). Pair up for 3V/4.5V/6V packs." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 2 ,
"tags" : [ "battery" , "source" , "aa" , "1.5v" , "analog" ]
} ,
{
"id" : "battery-coin-cell" ,
"tagName" : "wokwi-battery-coin-cell" ,
"name" : "Coin Cell (CR2032, 3V)" ,
"category" : "analog" ,
"description" : "Lithium coin cell. 3V, high ESR (~10Ω) — limits peak current." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 2 ,
"tags" : [ "battery" , "source" , "coin" , "cr2032" , "3v" , "analog" ]
} ,
{
"id" : "logic-gate-and-3" ,
"tagName" : "wokwi-logic-and-3" ,
"name" : "AND Gate (3-input)" ,
"category" : "logic" ,
"description" : "3-input AND gate. Output Y = A · B · C." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 4 ,
"tags" : [ "logic" , "gate" , "and" , "3-input" , "digital" ]
} ,
{
"id" : "logic-gate-or-3" ,
"tagName" : "wokwi-logic-or-3" ,
"name" : "OR Gate (3-input)" ,
"category" : "logic" ,
"description" : "3-input OR gate. Output Y = A + B + C." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 4 ,
"tags" : [ "logic" , "gate" , "or" , "3-input" , "digital" ]
} ,
{
"id" : "logic-gate-nand-3" ,
"tagName" : "wokwi-logic-nand-3" ,
"name" : "NAND Gate (3-input)" ,
"category" : "logic" ,
"description" : "3-input NAND gate." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 4 ,
"tags" : [ "logic" , "gate" , "nand" , "3-input" , "digital" ]
} ,
{
"id" : "logic-gate-nor-3" ,
"tagName" : "wokwi-logic-nor-3" ,
"name" : "NOR Gate (3-input)" ,
"category" : "logic" ,
"description" : "3-input NOR gate." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 4 ,
"tags" : [ "logic" , "gate" , "nor" , "3-input" , "digital" ]
} ,
{
"id" : "logic-gate-and-4" ,
"tagName" : "wokwi-logic-and-4" ,
"name" : "AND Gate (4-input)" ,
"category" : "logic" ,
"description" : "4-input AND gate." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 5 ,
"tags" : [ "logic" , "gate" , "and" , "4-input" , "digital" ]
} ,
{
"id" : "logic-gate-or-4" ,
"tagName" : "wokwi-logic-or-4" ,
"name" : "OR Gate (4-input)" ,
"category" : "logic" ,
"description" : "4-input OR gate." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 5 ,
"tags" : [ "logic" , "gate" , "or" , "4-input" , "digital" ]
} ,
{
"id" : "logic-gate-nand-4" ,
"tagName" : "wokwi-logic-nand-4" ,
"name" : "NAND Gate (4-input)" ,
"category" : "logic" ,
"description" : "4-input NAND gate." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 5 ,
"tags" : [ "logic" , "gate" , "nand" , "4-input" , "digital" ]
} ,
{
"id" : "logic-gate-nor-4" ,
"tagName" : "wokwi-logic-nor-4" ,
"name" : "NOR Gate (4-input)" ,
"category" : "logic" ,
"description" : "4-input NOR gate." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 5 ,
"tags" : [ "logic" , "gate" , "nor" , "4-input" , "digital" ]
} ,
{
"id" : "diode" ,
"tagName" : "wokwi-diode" ,
"name" : "Diode (generic)" ,
"category" : "analog" ,
"description" : "Generic silicon diode. Vf ≈ 0.7 V. Use for textbook rectification examples." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 2 ,
"tags" : [ "diode" , "rectifier" , "analog" ]
} ,
{
"id" : "diode-1n4148" ,
"tagName" : "wokwi-diode-1n4148" ,
"name" : "1N4148 (Small-Signal Diode)" ,
"category" : "analog" ,
"description" : "Small-signal silicon diode. Fast switching, low capacitance. Go-to for logic-level protection." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 2 ,
"tags" : [ "diode" , "1n4148" , "small-signal" , "analog" ]
} ,
{
"id" : "diode-1n4007" ,
"tagName" : "wokwi-diode-1n4007" ,
"name" : "1N4007 (1 kV Rectifier)" ,
"category" : "analog" ,
"description" : "1 A / 1000 V silicon rectifier diode. Mains bridge rectifiers, back-EMF protection." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 2 ,
"tags" : [ "diode" , "1n4007" , "rectifier" , "power" , "analog" ]
} ,
{
"id" : "zener-1n4733" ,
"tagName" : "wokwi-zener-1n4733" ,
"name" : "1N4733 (5.1 V Zener)" ,
"category" : "analog" ,
"description" : "5.1 V Zener diode, 1 W. Voltage reference / regulator / ESD clamp." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 2 ,
"tags" : [ "diode" , "zener" , "1n4733" , "5.1v" , "regulator" , "analog" ]
} ,
{
"id" : "diode-1n5817" ,
"tagName" : "wokwi-diode-1n5817" ,
"name" : "1N5817 (Schottky 20V)" ,
"category" : "analog" ,
"description" : "Schottky diode, 1 A / 20 V. Vf ≈ 0.32 V at 1 A. Used in low-drop rectification and reverse-polarity protection." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 2 ,
"tags" : [ "diode" , "schottky" , "1n5817" , "low-drop" , "analog" ]
} ,
{
"id" : "diode-1n5819" ,
"tagName" : "wokwi-diode-1n5819" ,
"name" : "1N5819 (Schottky 40V)" ,
"category" : "analog" ,
"description" : "Schottky diode, 1 A / 40 V. Higher breakdown than 1N5817, same low Vf." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 2 ,
"tags" : [ "diode" , "schottky" , "1n5819" , "low-drop" , "analog" ]
} ,
{
"id" : "motor-driver-l293d" ,
"tagName" : "wokwi-motor-driver-l293d" ,
"name" : "L293D (Dual H-Bridge Motor Driver)" ,
"category" : "electromech" ,
"description" : "Dual H-bridge motor driver IC. Each channel: EN, IN1, IN2 drive OUT1/OUT2 with the motor supply voltage (VCC2). Rated 600 mA continuous / 1.2 A peak per channel." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 16 ,
"tags" : [ "motor" , "driver" , "l293d" , "h-bridge" , "dc-motor" , "stepper" , "electromech" ]
} ,
{
"id" : "flip-flop-d" ,
"tagName" : "wokwi-flip-flop-d" ,
"name" : "D Flip-Flop" ,
"category" : "logic" ,
"description" : "Edge-triggered D-type flip-flop. On rising edge of CLK, Q ← D. Digital simulation only (SPICE cannot do edge detection in .op analysis)." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 4 ,
"tags" : [ "flip-flop" , "ff" , "d" , "register" , "sequential" , "digital" , "logic" ]
} ,
{
"id" : "flip-flop-t" ,
"tagName" : "wokwi-flip-flop-t" ,
"name" : "T Flip-Flop" ,
"category" : "logic" ,
"description" : "Toggle flip-flop. On rising CLK, Q ← Q ⊕ T (toggles when T=1). Useful for frequency dividers and counters." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 4 ,
"tags" : [ "flip-flop" , "ff" , "t" , "toggle" , "sequential" , "digital" , "logic" ]
} ,
{
"id" : "flip-flop-jk" ,
"tagName" : "wokwi-flip-flop-jk" ,
"name" : "JK Flip-Flop" ,
"category" : "logic" ,
"description" : "JK flip-flop. On rising CLK: J=0/K=0 hold, J=1/K=0 set, J=0/K=1 reset, J=1/K=1 toggle." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 5 ,
"tags" : [ "flip-flop" , "ff" , "jk" , "sequential" , "digital" , "logic" ]
} ,
{
"id" : "ic-74hc00" ,
"tagName" : "wokwi-ic-74hc00" ,
"name" : "74HC00 (Quad 2-input NAND)" ,
"category" : "logic" ,
"description" : "Four 2-input NAND gates in one 14-pin DIP package. 74HC family (high-speed CMOS)." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 14 ,
"tags" : [ "ic" , "74hc" , "74hc00" , "nand" , "quad" , "dip14" , "logic" ]
} ,
{
"id" : "ic-74hc02" ,
"tagName" : "wokwi-ic-74hc02" ,
"name" : "74HC02 (Quad 2-input NOR)" ,
"category" : "logic" ,
"description" : "Four 2-input NOR gates in one 14-pin DIP package." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 14 ,
"tags" : [ "ic" , "74hc" , "74hc02" , "nor" , "quad" , "dip14" , "logic" ]
} ,
{
"id" : "ic-74hc04" ,
"tagName" : "wokwi-ic-74hc04" ,
"name" : "74HC04 (Hex Inverter)" ,
"category" : "logic" ,
"description" : "Six NOT gates (inverters) in one 14-pin DIP package." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 14 ,
"tags" : [ "ic" , "74hc" , "74hc04" , "inverter" , "hex" , "dip14" , "logic" ]
} ,
{
"id" : "ic-74hc08" ,
"tagName" : "wokwi-ic-74hc08" ,
"name" : "74HC08 (Quad 2-input AND)" ,
"category" : "logic" ,
"description" : "Four 2-input AND gates in one 14-pin DIP package." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 14 ,
"tags" : [ "ic" , "74hc" , "74hc08" , "and" , "quad" , "dip14" , "logic" ]
} ,
{
"id" : "ic-74hc14" ,
"tagName" : "wokwi-ic-74hc14" ,
"name" : "74HC14 (Hex Schmitt Inverter)" ,
"category" : "logic" ,
"description" : "Six Schmitt-trigger inverters in one 14-pin DIP package. Provides input hysteresis — essential for debouncing noisy signals." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 14 ,
"tags" : [ "ic" , "74hc" , "74hc14" , "schmitt" , "inverter" , "hex" , "hysteresis" , "dip14" , "logic" ]
} ,
{
"id" : "ic-74hc32" ,
"tagName" : "wokwi-ic-74hc32" ,
"name" : "74HC32 (Quad 2-input OR)" ,
"category" : "logic" ,
"description" : "Four 2-input OR gates in one 14-pin DIP package." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 14 ,
"tags" : [ "ic" , "74hc" , "74hc32" , "or" , "quad" , "dip14" , "logic" ]
} ,
{
"id" : "ic-74hc86" ,
"tagName" : "wokwi-ic-74hc86" ,
"name" : "74HC86 (Quad 2-input XOR)" ,
"category" : "logic" ,
"description" : "Four 2-input XOR gates in one 14-pin DIP package." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 14 ,
"tags" : [ "ic" , "74hc" , "74hc86" , "xor" , "quad" , "dip14" , "logic" ]
} ,
{
"id" : "opto-4n25" ,
"tagName" : "wokwi-opto-4n25" ,
"name" : "4N25 (Optocoupler)" ,
"category" : "analog" ,
"description" : "Single-channel optocoupler with IR LED + phototransistor. CTR ≈ 50%. Provides galvanic isolation between two circuits." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 4 ,
"tags" : [ "optocoupler" , "optoisolator" , "4n25" , "isolation" , "analog" ]
} ,
{
"id" : "opto-pc817" ,
"tagName" : "wokwi-opto-pc817" ,
"name" : "PC817 (Optocoupler)" ,
"category" : "analog" ,
"description" : "Single-channel optocoupler. CTR 80– 600% (typ. 100%). Higher drive than 4N25, commonly used for MCU-to-mains isolation." ,
"properties" : [ ] ,
"defaultValues" : { } ,
"pinCount" : 4 ,
"tags" : [ "optocoupler" , "optoisolator" , "pc817" , "isolation" , "analog" ]
} ,
{
"id" : "relay" ,
"tagName" : "wokwi-relay" ,
"name" : "Relay (SPDT)" ,
"category" : "electromech" ,
"description" : "5-pin single-pole double-throw electromechanical relay. Coil drives SPDT contacts with native switch hysteresis. Optional integrated flyback diode." ,
"properties" : [
{
"name" : "coil_voltage" ,
"type" : "number" ,
"defaultValue" : 5 ,
"control" : "select" ,
"options" : [ "5" , "12" , "24" ] ,
"description" : "Nominal coil voltage (V)"
} ,
{
"name" : "coil_resistance" ,
"type" : "number" ,
"defaultValue" : 70 ,
"control" : "text" ,
"description" : "Coil resistance (Ω)"
} ,
{
"name" : "include_flyback" ,
"type" : "boolean" ,
"defaultValue" : true ,
"control" : "boolean" ,
"description" : "Integrated flyback diode across coil"
}
] ,
"defaultValues" : { "coil_voltage" : 5 , "coil_resistance" : 70 , "include_flyback" : true } ,
"pinCount" : 5 ,
"tags" : [ "relay" , "electromechanical" , "switch" , "spdt" , "coil" , "contact" ]
} ,
{
"id" : "photodiode" ,
"tagName" : "wokwi-photodiode" ,
"name" : "Photodiode" ,
"category" : "sensors" ,
"description" : "Light-sensitive diode. Reverse current proportional to illumination. Property: lux (ambient light intensity)." ,
"properties" : [
{
"name" : "lux" ,
"type" : "number" ,
"defaultValue" : 500 ,
"control" : "range" ,
"min" : 0 ,
"max" : 100000 ,
"description" : "Illumination in lux"
}
] ,
"defaultValues" : { "lux" : 500 } ,
"pinCount" : 2 ,
"tags" : [ "photodiode" , "sensor" , "light" , "optical" , "analog" ]
} ,
{
"id" : "signal-generator" ,
"tagName" : "wokwi-signal-generator" ,
"name" : "Signal Generator" ,
"category" : "analog" ,
"description" : "Benchtop AC/DC signal source. Sine, square, or DC output. Configurable frequency, amplitude, DC offset." ,
"properties" : [
{
"name" : "waveform" ,
"type" : "string" ,
"defaultValue" : "sine" ,
"control" : "select" ,
"options" : [ "sine" , "square" , "dc" ]
} ,
{
"name" : "frequency" ,
"type" : "number" ,
"defaultValue" : 1000 ,
"control" : "text" ,
"description" : "Frequency in Hz (ignored for DC)"
} ,
{
"name" : "amplitude" ,
"type" : "number" ,
"defaultValue" : 1 ,
"control" : "text" ,
"description" : "Peak amplitude in V (ignored for DC)"
} ,
{
"name" : "offset" ,
"type" : "number" ,
"defaultValue" : 0 ,
"control" : "text" ,
"description" : "DC offset in V"
}
] ,
"defaultValues" : {
"waveform" : "sine" ,
"frequency" : 1000 ,
"amplitude" : 1 ,
"offset" : 0
} ,
"pinCount" : 2 ,
"tags" : [ "signal-generator" , "source" , "ac" , "dc" , "function-generator" , "analog" ]
}
] ,
2026-04-07 21:33:34 +07:00
"led" : {
"properties" : {
"color" : {
"control" : "select" ,
"options" : [ "red" , "green" , "blue" , "yellow" , "orange" , "white" , "purple" ]
}
}
} ,
"ssd1306" : {
"properties" : {
"protocol" : {
"name" : "protocol" ,
"type" : "string" ,
"defaultValue" : "i2c" ,
"control" : "select" ,
"description" : "Communication protocol" ,
"options" : [ "i2c" , "spi" ]
}
} ,
"defaultValues" : {
"protocol" : "i2c"
}
}
}