velxio/frontend/src/simulation
David Montero Crespo 6307aed007 feat: breadboard (full 830-point) + mini breadboard (170-point) parts
Two velxio-native passive parts, rendered as web components with
programmatic SVG + precomputed pinInfo (velxio-breadboard 830 holes,
velxio-breadboard-mini 170). Pin names follow the Wokwi convention
(holes `18t.d` / `17b.i`, rails `tp/tn/bp/bn.N`) and the metadata ids
are `breadboard` / `breadboard-mini`, so wokwi diagram.json zips
import/export with no aliasing.

Internal connectivity (5-hole column strips, full-length power rails)
is centralized in utils/breadboardNets.ts and wired into every net
consumer:
- NetlistBuilder: unionBreadboardGroups joins wired holes per group at
  the union-find level in buildNetlist, buildWireNetMap and
  buildBoardPinNetMap — SPICE, the circuit verifier and the voltage
  overlay all see one net per strip/rail with no extra cards.
- DynamicComponent.traceDetailed: the digital trace hops through every
  other wired hole of the entered group, so parts wired through a
  breadboard still resolve their board pin (2-terminal
  PASSIVE_PIN_PAIRS could not express N-hole groups).

Verified end-to-end in the app: Uno pin 8 -> full-board column ->
resistor -> mini-board column -> LED -> ground rail -> GND lights the
LED, and the HUD shows the 3 collapsed SPICE nets. 8 new unit tests
(breadboard-nets.test.ts); netlist-builder + circuit-verifier suites
stay green.
2026-07-15 21:50:36 +02:00
..
customChips feat(chipbus): Galaksija keyboard - type BASIC over the bus 2026-06-05 14:37:42 -03:00
digital fix(sim): model slide-switch as a real SPDT + tie ESP32 dual 3V3/5V pins to the rail 2026-07-09 18:58:12 +02:00
displays
parts feat(ssd1306): add the 4-pin I2C OLED module + examples on Uno/ESP32/Pico/STM32 2026-07-09 23:13:50 +02:00
spice feat: breadboard (full 830-point) + mini breadboard (170-point) parts 2026-07-15 21:50:36 +02:00
verify feat(sim): P2 wiring ERC slice 2 — VCC-to-GND short + shorted-out parts 2026-06-18 03:32:17 +02:00
AVRSimulator.ts feat(avr): drive inputs from real circuit, modeling the internal pull-up 2026-06-26 20:18:41 +02:00
Esp32Bridge.ts feat(esp32): emulate internal pull-up/pull-down for GPIO inputs 2026-06-24 03:32:30 +02:00
Esp32C3Simulator.ts fix(esp32-c3): drive digital inputs from the SPICE solve (spiceDrivenInputs) 2026-07-09 19:16:37 +02:00
Esp32MicroPythonLoader.ts
HD44780Decoder.ts
I2CBusManager.ts
Interconnect.ts
LogicFamilies.ts
MicroPythonLoader.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
PinManager.ts fix(sim): re-solve SPICE on ESP32/STM32/Pi output pin edges 2026-07-02 22:33:46 +02:00
PinResolver.ts
PioPeripheral.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
RP2040Simulator.ts sim: drive RP2040 + STM32 digital inputs from the real circuit 2026-06-26 22:05:24 +02:00
RaspberryPi3Bridge.ts feat(pi): gpiozero core + boot feedback, terminal and upload UX 2026-06-22 20:21:06 +02:00
RiscVCore.ts
RiscVSimulator.ts
SensorUpdateRegistry.ts
SignalRouter.ts
SpiBus.ts
Stm32Bridge.ts sim: drive RP2040 + STM32 digital inputs from the real circuit 2026-06-26 22:05:24 +02:00
UsiI2cBridge.ts feat(sim): ATtiny85 USI I2C — drive I2C devices (SSD1306 OLED) via TinyWireM 2026-06-19 07:44:18 +02:00
esp32-signals.ts
piSlaveScanner.ts
rp2040-bootrom.ts
sensorControlConfig.ts