OPEN-SOURCE MICROCONTROLLER LAB
Intent MCU Simulator
Build a circuit. Connect pins. Run. Start with one tested controller and a working example.
Controller and runtime details
Four bounded controller paths are available. The exact QEMU, Renode, browser-worker and teaching-model boundaries are shown with each controller.
YOUR WORKBENCH
Build the circuit
Simple view keeps the active project, circuit, source, runtime status, instruments, files, limits and diagnostics; advanced review tools are hidden.
Tools
Build-list export: named connections and authored values only; no purchase, firmware or runtime evidence.
Accessible SVG: circuit, named pins, release and model limits; no current measurements.
Preserved browser drafts all four profiles
This scans this site's existing browser-local keys, including historical drafts that were never registered in the old chooser. It does not upload, delete, migrate or rewrite them. Each recovery opens a validated copy under a new draft identity; the original raw value stays unchanged.
Choose a preserved draft to open a validated copy. Recovery never changes the original browser-local entry.
Revision 0 and disabled Undo after recovery mean command history was not restored; they do not mean the graph is empty. Check the parts/nets count and use Fit project when a non-empty graph is outside the current viewport.
Local version history Off
Optional versions stay in this browser profile at this exact site. They are not uploaded, encrypted by the Lab or a durable backup. Browser clearing, private mode, storage eviction or device loss can remove them; keep important projects as downloaded files.
History is off. No history database is opened and no project source is captured. Enabling is explicit.
PUBLICLY SUPPORTED
ATmega328P circuit workbench
SupportedBuild a circuit, edit source, compile in the fixed AVR toolchain and run the tested deterministic browser-worker subset.
One tested profile is available in each group today. The group name does not claim support for every chip or board in that family.
ATmega328P · compile and tested virtual runtime.
- Project
- Local Save/Open and browser recovery
- Source
- Edited source · fixed isolated AVR compiler
- Runtime
- Deterministic browser worker · documented AVR subset
- Circuit
- Active circuit canvas, instruments and Prompt Bridge
What must change for this controller?
Source and APIs
Named pins
Parts
Saved requirements
No automatic remap: D13, GP0, GPIO2 and PB0 are different pins. Rebuild fresh only after manual source and circuit work.
Only the documented AVR CPU, peripheral and electrical-model subset is supported.
A preview changes only this browser view. It cannot upload a project, call a private endpoint, build firmware, or create a runtime session.
PROJECT CONTEXT · SAVED WITH THIS CIRCUIT
Define what this project must do
This is inert project data, not firmware or a test verdict. Requirement links cannot execute code or tests. A current runtime result can be linked as provenance only and is never saved.
REQUIREMENT TRACEABILITY
Code → test → current result
Saved code/test references are inert. Current-result links are produced only from this tab's active runtime, carry no pass/fail verdict and are discarded by Open.
Add an acceptance criterion to start its trace.
CLARIFICATIONS · NO ASSUMED SUPPORT
Open questions
Voltage, pin and timing gaps stay unresolved until you edit the project brief. They do not grant hardware, compiler, electrical or runtime support.
Add an open question when a required detail is missing.
BEFORE BUILD · PROJECT-SPECIFIC
Feasibility preflight
Checks only explicit project needs against current controller and component authorities. This is not a firmware verdict and does not authorize or block Build.
Add a required peripheral or component to preflight this project.
DESCRIBE → REVIEW → APPLY
Reviewable project patch
Generate a portable prompt for an assistant of your choice. The Lab makes no AI request. A pasted proposal changes nothing until strict validation, visible review and explicit Apply.
INDEPENDENT LOCAL REFERENCE
Lock tests before changing firmware
The separate file contains authored requirements and the thermostat timeline only. It never contains firmware, a build, runtime state or a verdict.
No independent expectation reference loaded.
Unlocked
What the package contains
One local JSON file combines the authored source, circuit, scenario, matching expectation reference and current measured report. Its manifest binds source, circuit, scenario, test, artifact, model and tool identities. It excludes compiled firmware and cannot restore a runtime, green state or verdict.
Automatic credential and authority fields are excluded. The Lab cannot recognize every secret a person may type into source or descriptions, so review your authored text before sharing the file. Nothing is uploaded or stored by this action.
Compare experiment packagesEmpty
Open one Before file and one After file locally. Compare strictly reparses both original packages and shows retained literal facts only. It does not Build, Run, restore authority, infer a cause, choose a winner or create a verdict.
Choose two canonical strict-v3 packages. Files stay in this tab only.
Identity
Source
Circuit
Results
No project mutation has been proposed.
Implementation
No proposal reviewed.
Tests & expectations
No proposal reviewed.
SAME REQUIREMENTS · DOCUMENTED LIMITS
Compare two design alternatives
Comparison uses the current design and one strictly reviewed proposal. It reports facts and model limits only—never a winner, firmware result or test verdict.
Review a proposal above, then compare it with the current design.
Two validated alternatives will appear here.
SEVEN CONTRACTS · NO GENERIC COMMAND
Bounded local agent actions
Create, propose, validate, Build, Run, read and export remain separate generation-bound actions. Project content cannot select an action or bypass the active controller model.
No programmatic action has run in this browser session.
PRIVATE REVIEW · SESSION LOCAL
Bounded experiment budget
One human-started browser session can reserve at most 2 Builds, 4 Runs, 8 scenarios and 120 seconds of measured wall-clock work. This review control adds no Build, Run, retry or verdict authority.
No experiment session is active. Existing manual controls are unchanged.
Budgeted Run has reviewed owner-quiescence evidence for the generic AVR, bounded RP2040 Pico, bounded ESP32-C3 and bounded STM32F429ZI profiles. ESP32-C3 joins exact source, flash, compiler, runtime and retirement identities; CPU/UART comes from QEMU while GPIO2 remains a separate project-owned model. STM32 joins request, source, graph, ELF, model, compiler and Renode runtime identities through authenticated natural completion and exact daemon-container absence. Its evidence is final PB0 and USART3 ordered by Renode instruction ordinal, not physical cycles or timing; the external LED remains an ideal teaching rendering. X92 remains a finite current-tab budget, not a generic AI agent, remote scheduler, billing quota or physical-hardware verdict.
Pending reservations: 0 · Indeterminate terminal records: 0 · Dispatch gate: idle · Runtime boundary: quiescent
Active reservations
- None
Unresolved problems
- None
No review file opened. Opened files are inert data and cannot restore a session, reservation, permission, runtime or verdict.
RP2040 PICO · PUBLIC BOUNDED SOURCE
Edit, build and run GPIO0
One fixed main.c grammar may set GPIO0 HIGH/LOW, write 1–24 uppercase UART characters and halt. No SDK, headers, pointers, arbitrary MMIO, firmware upload or server project storage.
Download copy and Open project work without a native file connection.
Working examples
Each card loads authored project data only. Build fresh before Run.
Build diagnostics
No current build errors.
- Source SHA-256
not built- UF2 SHA-256
not built
0 parts
Select a free named pin, then a compatible free destination.
Crossing cables stay separate. Only a declared junction dot means connected.
Validated: GP0 pin 1 → 220 Ω → LED anode/cathode → GND pin 3
If the resistor or LED is missing after Save/Open, add it from Supported parts, then connect its named pins. Select a cable and choose Reconnect endpoint to move one end. Escape cancels. Every accepted edit requires a fresh valid Build.
No Pico UART output yet.
ESP32-C3 · PUBLIC BOUNDED SOURCE
Compile GPIO2, run actual QEMU CPU/UART
The fixed sketch grammar may set GPIO2 OUTPUT/INPUT, choose HIGH/LOW and print one uppercase marker. No SDK, arbitrary source, Wi-Fi, Bluetooth, broad peripherals, general ESP32 family or physical-hardware claim. GPIO2 is also a strapping pin on real boards—verify hardware before reuse.
Download copy and Open project work without a native file connection.
Working examples
Each card loads authored project data only. Build fresh before Run.
Build diagnostics
No current build errors.
- Source SHA-256
not built- Flash SHA-256
not built
0 parts
Select a free named pin, then a compatible free destination.
Crossing cables stay separate. Only a declared junction dot means connected.
Project model accepted · GPIO2 → 220 Ω → LED → GND · waiting for Run
If the resistor or LED is missing after Save/Open, add it from Supported parts, then connect its named pins. Select a cable and choose Reconnect endpoint to move one end. Escape cancels. Every accepted edit requires a fresh valid Build.
No QEMU UART output yet.
LED label: project-owned model from executed writes · not QEMU pin readback
STM32F429ZI · PUBLIC BOUNDED SOURCE
Compile PB0, run actual Renode CPU/GPIO/USART3
The fixed C11 grammar may set PB0 HIGH/LOW, write one 1–24 character uppercase USART3 marker and halt. No SDK, arbitrary C/ELF, broad peripherals, full STM32 family, physical board or hardware-programming claim.
Download copy and Open project work without a native file connection.
Working examples
Each card loads authored project data only. Build fresh before Run.
Build diagnostics
No current build errors.
- Source SHA-256
not built- ELF SHA-256
not built
0 parts
Select a free named pin, then a compatible free destination.
Crossing cables stay separate. Only a declared junction dot means connected.
Named path: PB0 CN11 pin 34 → 220 Ω → LED → GND CN11 pin 19 · awaiting actual Renode observation
If the resistor or LED is missing after Save/Open, add it from Supported parts, then connect its named pins. Select a cable and choose Reconnect endpoint to move one end. Escape cancels. Every accepted edit requires a fresh valid Build.
No Renode execution yet.
Runtime truth: PB0 and USART3 are observed in actual Renode. Circuit truth: the external resistor/LED path is an ideal educational rendering.
2 · CIRCUIT CANVAS
Empty project
View options
Select two named pins to create a wire. A branch creates an explicit junction; crossing routes remain separate.
Add the supported controller to begin.
Firmware editor
4 · FIRMWARE
main.ino
No build submitted.
Full compiler log
No build submitted.
Optional Prompt Bridge
OPTIONAL · PROMPT BRIDGE V2
Ask elsewhere. Validate here.
AI text has no drawing or connection authority. Only a proposal that passes the built-in electrical checks can update the circuit.
Firmware runtime and instruments
5 · VIRTUAL EXECUTION
Runtime
- Cycle
- 0
- Simulated time
- 0.000 ms
- Instructions
- 0
- Requested speed
- 1×
- Measured throughput
- —
- Artifact
- none
GPIO PROVENANCE
Recent D13 trace
- 0000000000 · LOW
Behaviour covers the tested compatibility subset and may differ from physical hardware.
M1 · EXECUTED REQUIREMENT TEST
Thermostat boundary experiment
The ideal module feeds A1, the active-low enable button feeds D2, and executed firmware drives the current-limited heater indicator from D13. The 30 °C equality case must turn heating off.
X17 · DATA-ONLY TEST AUTHORING
Scenario timeline
Create isolated cases without editing firmware. Inputs are scheduled in virtual milliseconds and must settle for at least 1 ms before an explicit observation window. The browser reports the actual worker-snapshot time inside that saved window; it does not claim the pin was observed at the window start. Expected D13 is compared with actually observed D13 and never becomes evidence.
X22 · REPRODUCIBLE INPUT VARIANTS
Seeded property suite
No seeded suite stored. Generation is bounded to eight valid AVR thermostat cases.
X23 · BOUNDED INPUT FAULTS
Fault-injection cases
Supports ideal D2 bounce, stuck A1 temperature and actual D2 external-drive release. This thermostat timeline has no bus endpoint; the separate bounded AVR USART0 response fixture covers one declared response fault.
X24 · MINIMAL REPRODUCIBLE FAILURE
Reduce the failing sequence
Requires seed 305419896, the fresh known-bad build and its one producer-backed D13 failure. Reduction is deterministic and private.
The timeline is saved with the local project. A fresh matching firmware build is required to run it.
| Scenario | Controlled input | Expected D13 | Observed evidence | Result |
|---|---|---|---|---|
| Below · enabled | module 30 °C → measured 29 °C · pressed | HIGH · HEAT | Not run | Pending |
| Equality · enabled | module 31 °C → measured 30 °C · pressed | LOW · HOLD | Not run | Pending |
| Above · enabled | module 32 °C → measured 31 °C · pressed | LOW · HOLD | Not run | Pending |
| Below · disabled | module 30 °C → measured 29 °C · released | LOW · OFF | Not run | Pending |
X39 · CURRENT PRODUCER EVIDENCE
Failure location — independently reviewed
No current failure location.
- Source
- —
- Pin
- —
- Net
- —
- Time
- —
This independently reviewed X39 locator is transient and bound to the current source, artifact, worker generation and electrical topology. Its historical D13 value never replaces the current pin inspector value.
Build this exact local project before running the experiment. Save/Open stores authored data only and always requires a fresh build.
Model boundary: ideal sensor, ideal no-bounce button and LED command indicator only. No physical heater, room dynamics or safety certification.
SOURCE-BOUND RUNTIME EVIDENCE
What this workbench actually recorded
Compiled artifact → avr8js worker → project-owned circuit model
- Profile
- ATmega328P · 16 MHz
- Artifact
- Build and run to bind evidence
- Virtual time
- No runtime snapshot
- Retention
- Serial 0 / 4,096 · logic 0 / 100,000 · inputs 0 / 10,000
- serial
- unavailable · no current runtime
- gpio
- unavailable · no current runtime
- logic
- unavailable · no current runtime
- input
- unavailable · no current runtime
Control → firmware evidence · 8 models / 11 fields
Every row names the existing worker event and the observable executed-firmware effect. Saved control state alone is never counted as firmware evidence.
| Model / field | Worker event | Observable effect | Evidence |
|---|
ACTUAL VIRTUAL-CYCLE EDGES
Logic analyser
Cursor Δ —
Transition event list
- — · 0000000000 · LOW
SAME MACHINE STATE
Pin inspector
- Mode
- —
- Level
- —
- PWM / ADC
- —
- Diagnostic
- —
- Cycle
- 0
OPTIONAL REVIEW TOOLSAdvanced testingOpen X26–X36
Open this only when you want the full regression and evidence suite. Nothing here starts automatically; Build, Run and evidence actions still require an intentional click.
X26 · PROFILE-SPECIFIC REGRESSION
Run one requirement across four distinct machines
Each row starts from its checksum-locked fixture, builds fresh firmware, and uses that profile’s existing producer and oracle. Matching rows do not mean AVR, RP2040, ESP32-C3 and STM32 behave alike.
Measurement completeness: Current JSON report exports use a versioned envelope that states retention, loss, sampling, truncation and the native observed interval. Unknown and unavailable are distinct from zero. Incomplete required evidence changes an exported pass to indeterminate; the completeness hash binds identity and integrity, not truth.
Loading immutable matrix identity…
| Profile-bound case | Fresh producer | Expected / actual | Outcome | Limits |
|---|---|---|---|---|
| No matrix report. Reports are transient review data and never project or verdict authority. | ||||
Choose one cell or all four. The negative control reruns only RP2040 with a deliberately wrong expectation and must finish academically failed while the job completes.
Evidence boundary: C3 actual QEMU CPU/UART remains separate from the project-owned GPIO2 model. Raw native timebases are retained per row and are never compared as equivalent. Save/Open never stores this report.
Checkable evidence reportStrict source-owned measurements · local JSON onlyUnavailable
No current evidence report. Build and Run are never started by this disclosure.
Open a local accepted evidence package to review it without running firmware.
No source envelope or report hash.
Native measurements
- No current rows.
Limits retained
- No current source, profile, or model limits.
Truth boundary: Hashes bind identity and integrity only. They do not prove measurement truth, correctness, or physical equivalence. Missing source fields remain unavailable; an absent validated model lock remains unknown.
X26 · TWO PRODUCT RELEASES
Review the same matrix across rc.49 and rc.60
This loads a checksum-bound comparison of two independently reviewed producer reports. Loading does not build or run firmware. Both product releases use the same pinned model, toolchain and runtime set; this is not a compiler-version, MCU-revision or physical-hardware comparison.
Loading reviewed comparison identity…
| Stable requirement / scenario | rc.49 reviewed result | rc.60 reviewed result | Comparison |
|---|---|---|---|
| No active comparison review. The accepted historical evidence is not restored as a fresh execution. | |||
Historical acceptance is visible by identity only. Load creates transient review/export authority, never fresh producer evidence.
Version boundary: raw AVR, rp2040js, QEMU/model and Renode times remain in their source reports and are never compared numerically. Build, Reset, source/circuit edits, Open, worker retirement and reload clear active report/export authority.
X27 · REQUIREMENT / INPUT COVERAGE
Seven declared partitions, without invented percentages
This deterministic projection counts seven bounded input partitions across four profiles and one requirement family. Executed, passed and supported are separate facts. Instruction coverage is unavailable; physical behaviour coverage is not claimed.
| Profile-bound case | Denominator | Partition results | Evidence | Producer / timebase | Limits |
|---|---|---|---|---|---|
| No current coverage report. Run the immutable matrix to project its seven declared partitions. | |||||
Coverage is transient review evidence. Open, reload, source edits, circuit edits and profile changes clear it; Save/Open never restores authority.
AVR safeguard: the aggregate thermostat summary never proves its four partitions. Each partition requires its own exact producer record. C3 safeguard: QEMU CPU/UART evidence remains separate from the project-owned GPIO2 model.
X28 · LONG-DURATION PROPERTIES
Wrap, reset and ordered-state evidence
One fresh compiler-generated AVR artifact drives all three cells: a documented fixture-only timer shortcut followed by at least 96 ms of actual virtual time, five reset epochs, and 128 ordered D2 changes over at least 2,048 ms. The known-bad direct deadline must fail differently in the actual runtime.
Loading immutable X28 suite identity…
| Cell | Expected | Observed | Outcome | Full evidence |
|---|---|---|---|---|
| No current X28 report. Reports are transient and never project, timer or verdict authority. | ||||
Raw AVR cycles and Arduino millisecond observations remain separate from semantic identity. Reload, Open, source/circuit/profile change and any new build clear this report.
Limit: this is one pinned ATmega328P/Arduino-core fixture. It does not claim physical time, arbitrary timers or MCUs, watchdog/brownout/EEPROM behaviour, exhaustive state space or durability.
X29 · VERSIONED TIME CONTRACT
Same virtual requirement, different pacing
One fresh AVR artifact is loaded into three separate cycle-zero workers. The same D2 target and D13/UART virtual window run at 1×, maximum pacing and Pause/resume. CPU work, derived virtual nanoseconds and host-wall diagnostics remain separate.
Loading immutable X29 time-contract identity…
| Execution | Virtual requirement | CPU / virtual observation | Outcome | Wall diagnostic | Full evidence |
|---|---|---|---|---|---|
| No current X29 report. Wall time never satisfies a virtual requirement. | |||||
Pause must freeze producer cycles, instructions and virtual time. Maximum changes pacing only. A wall-time requirement is rejected before execution and creates no academic outcome.
Limit: one ATmega328P/avr8js 16 MHz worker contract only. CPU cycles and virtual nanoseconds are not physical elapsed time. C3 model epochs, STM32 instruction ordering, real-time throughput and cross-profile time equivalence remain unavailable.
X30 · DETERMINISTIC EVENT ORDER
Reset, apply, sample, execute
Two fresh workers repeat one paused AVR epoch transaction from the same artifact: Reset retires an old pending input, cycle-zero controls apply by explicit ordinal, a read-only sample observes without advancing or draining, then firmware executes and is sampled again.
Loading immutable X30 event-order identity…
| Phase | Defined boundary | Producer observation | Result | Full evidence |
|---|---|---|---|---|
| No current X30 report. Host message arrival time is never event-order authority. | ||||
RESET BARRIER → INPUT ORDINAL ASC → PRE-EXECUTION SAMPLE → CPU EXECUTION → FINAL SAMPLE. Validation rejection and academic evidence failure remain distinct.
Limit: one paused ATmega328P/avr8js epoch boundary only. No asynchronous running reset, interrupt/peripheral tie, physical sampling, other MCU ordering, X31 reset semantics or X40 common timeline is claimed.
X31 · EXPLICIT RESET CLASSES
CPU reset, experiment restart, power-on
One fixed AVR artifact runs two repeats of three distinct simulator boundaries. A closed table says exactly what happens to volatile memory, CPU/peripherals, component controls, queued inputs, traces and prior outcomes.
Loading immutable X31 reset-class identity…
| Reset class | Defined retention boundary | Producer before / after | Outcome | Full evidence |
|---|---|---|---|---|
| No current X31 report. Browser reload and Open are lifecycle actions, not hardware reset classes. | ||||
Validation rejection, worker infrastructure failure and evidence-backed academic failure are separate. Missing producer evidence can never pass.
Limit: project-owned simulator semantics for one ATmega328P/avr8js fixture only. No physical reset timing, SRAM retention, EEPROM/flash/fuses, watchdog/brownout, power ramp, reset-cause flags or other-profile equivalence is claimed.
X32 · UNSUPPORTED ACCESS
Record it. Stop it. Never turn it green.
One fixed compiler-generated AVR fixture first produces a supported D13 observation, then enables the unmodelled SPI peripheral. The producer access, stop boundary and affected requirement remain separate evidence.
Loading immutable X32 unsupported-access identity…
| Access | Producer evidence | Runtime disposition | Affected requirement | Full evidence |
|---|---|---|---|---|
| No current X32 report. Unsupported access can never create a green requirement. | ||||
Compiler rejection, contract validation, runtime capability stop, infrastructure failure and academic outcome are distinct.
Limit: one SPI-enable write caught by the current ATmega328P adapter. This is not exhaustive register/opcode coverage, a physical hardware fault claim, or RP2040/ESP32-C3/STM32 equivalence.
X33 · DIGITAL STATE BOUNDARY
STATIC SYNTHETIC CIRCUIT-MODEL CHECK
Four closed static rows keep valid LOW, high impedance, opposing-drive conflict and missing evidence separate. This check does not compile firmware, execute a runtime or prove physical hardware behaviour.
Loading immutable X33 digital-state identity…
| Case | Producer annotations | Resolved / validation state | Requirement outcome | Full evidence |
|---|---|---|---|---|
| No current X33 report. Unknown evidence and high impedance can never be treated as valid LOW. | ||||
Unknown annotations reject before resolution. Missing evidence is indeterminate and never invents an UNKNOWN driver.
Limit: static ideal AVR circuit-model fixture only. No compiled firmware, runtime execution, physical voltage, analogue solver, dynamic tri-state timing, SPDT semantic change, shared-I/O expansion or other-profile equivalence.
X33 · ACTUAL PIN PRODUCERS / IDEAL NET CLASSIFICATION
Compiled AVR runtime state — independently reviewed
One fixed source is compiled once, then two fresh workers prove D2 released input, D5 externally driven LOW, and opposing D3/D4 outputs. The independently reviewed X33 report is transient; actual pin snapshots and the fixed ideal two-endpoint conflict topology remain separate evidence.
Loading immutable X33 runtime contract…
| Case | Actual worker pin producers | Ideal classification | Requirement outcome | Boundary |
|---|---|---|---|---|
| No current runtime report. A raw false pin sample is never valid LOW authority. | ||||
This runtime report is session-only review evidence. Build, Reset, Open, source/circuit/profile change and reload clear export authority.
Limits: actual AVR worker pin producers joined to one project-owned ideal fixed topology. No avr8js wire coupling, voltage/current, damage prediction, analogue behaviour, physical hardware proof, generic live-net solver or other controller profile.
X34 · BOUNDED IDEAL AVR UNITS/PRECISION CHECK
INSTRUMENTED AVR FIXTURE — NOT THE UNMODIFIED PUBLIC ARTIFACT
Two fresh browser workers compile and execute one private fixture. A firmware-owned four-byte SRAM mailbox records the already computed integer and chosen D13 level. UART and host recomputation are corroboration only and can never produce a pass.
Loading immutable X34 instrumented-fixture identity…
| Quantity | Unit / resolution | Observed producer | Comparison | Outcome / provenance |
|---|---|---|---|---|
| No current X34 report. A fresh private compile and two fresh worker generations are required. | ||||
The report is transient. Build, Reset, source edit, Open and reload clear its export authority and runtime binding.
Limits: instrumented ATmega328P/avr8js fixture only. Mailbox writes change code layout and timing. This does not prove the unmodified public artifact, physical SRAM, compiler correctness, sensor accuracy, ADC INL/DNL, electrical tolerance, hardware, or any other profile. No debugger or generic memory API is exposed.
X35 · BOUNDED AVR CPU-TO-LED CAUSAL CHAIN
One selected event · unmodified thermostat artifact
Two fresh bound workers capture the first supported PORTB bit-5 LOW→HIGH instruction event, its raw D13 callback, the exact validated net path and the ideal heater-LED projection at that same instruction boundary. The topology/model projection is a synchronous project-owned consequence, not independent physical causality.
Loading immutable X35 causal contract…
| Stage | Producer record | Causal identity | Evidence boundary | Repeat outcome |
|---|---|---|---|---|
| No current X35 report. A fresh compile and two fresh bound workers are required. | ||||
The report is transient. Build, Reset, source/circuit change, Open, worker retirement and reload clear its authority.
Limits: one AVR D13 rising event and one ideal project-owned LED model only. PC/opcode and PORTB are emulator evidence, not source-line mapping, compiler correctness, silicon-bus proof, voltage/current timing or physical causality. No debugger, breakpoint, arbitrary register/memory API, other profile or generic causal graph is exposed.
X23 · INCORRECT RESPONSE FAULT
AVR USART0 response fixture
One local deterministic fixture responds only after compiler-generated AVR firmware actually transmits the locked request byte. Expected and incorrect bytes travel through the existing USART0 receive path; RX completion alone never passes without the firmware's D13 and Serial branch.
Loading immutable X23 USART0 recipe…
| Run | Request → fixture | RX producer | Firmware consumption | Academic / job |
|---|---|---|---|---|
| No current X23 USART0 report. Five fresh isolated workers are required. | ||||
The reviewed X23 report is transient. Build, Reset, source/circuit change, Open, worker retirement and reload clear export authority.
Limits: one request and one response byte over the tested AVR USART0 9600 8-N-1 path. This is a local fixture—not a generic bus, named device, I2C/TWI, SPI, line-level, timing-noise, multi-device, other-profile or physical-hardware model.
X36 · BOUNDED FAILURE-TIME REPLAY
Reset-to-point replay · one next instruction
This operation executes an isolated fixed fixture. Open starts two fresh workers, re-executes the compiler-generated X32 firmware from reset, and pauses both exactly one instruction before the SPI capability stop. Advance executes that single next instruction in each worker; it is not a read-only or execution-free action.
Loading immutable X36 replay recipe…
No replay point is open. Full snapshot unavailable.
No memory snapshot is restored. Build, Reset, source/circuit change, Open, worker retirement and reload clear the transient recipe, workers and export authority.
Full snapshot unavailable: complete CPU registers/data, stack/status, pending CPU clock events, timer/ADC/UART internals and complete scheduler/peripheral object state are omitted. This is deterministic reset replay for one fixed AVR SPI fault—not restore, arbitrary seek, time travel, source stepping, compiler correctness, silicon or physical-hardware proof.
OPEN SOURCE · VERIFIED BOUNDARIES
What is Intent MCU Simulator?
It is an original browser workbench that turns supported firmware into observable virtual hardware behaviour. Build a circuit by connecting named pins, compile edited source in an isolated fixed toolchain, then inspect GPIO, LEDs, inputs, serial bytes, and logic traces.
What does it simulate?
Four bounded controller paths: the documented ATmega328P browser subset; RP2040 GPIO0/UART0; actual ESP32-C3 QEMU CPU/UART plus a separately labelled GPIO2 model; and actual STM32F429ZI Renode PB0/USART3/reset replay plus an ideal external LED teaching path.
Does Prompt Bridge call AI?
No. It creates portable text for a tool you choose. Only returned structured circuit data that passes the project schema, pin rules, and electrical validation can reach the canvas.
Does it replace physical testing?
No. Simulation is not physical safety certification and does not claim complete timing or hardware equivalence. Verify real designs on appropriate hardware.