You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Implement first AVR emulator backend with SimAVR and track avr8js follow-on #24
Implement the first AVR emulator backend so fbuild can run post-build smoke tests without hardware.
Why
AVR is the best first target:
many AVR board definitions already advertise simavr
AVR artifacts naturally produce firmware.elf
UART/text-driven smoke tests map well to current monitor semantics
avr8js should also be tracked as a relevant implementation family for future Node/browser-backed smoke testing, even if simavr is the first native backend delivered.
Scope
implement SimavrRunner
support Uno first, then Mega and Leonardo
consume firmware.elf from normal build output
integrate stdout/serial output with pass/fail monitor classification
document host support limits, especially Windows constraints
evaluate where avr8js fits after the native runner path exists
Acceptance criteria
fbuild test-emu works end-to-end for at least Uno via simavr
pass/fail/timeout behavior is covered by tests or fixtures
unsupported host environments fail explicitly
follow-up notes capture whether avr8js should be a separate runner or tooling path
chosen ahead of ESP32 because AVR is the shortest path to an end-to-end build -> run -> classify loop with fewer image-layout and machine-model constraints
avr8js should be tracked as a follow-on evaluation, not allowed to blur the first native backend scope
Activity
zackees commentedon Apr 10, 2026
Priority note: this is P1 and the recommended first backend implementation.
Dependencies and sequencing:
fbuild test-emucommand #23build -> run -> classifyloop with fewer image-layout and machine-model constraintsavr8jsshould be tracked as a follow-on evaluation, not allowed to blur the first native backend scopefeat(emulator): add SimavrRunner backend for AVR boards (#24)
zackees commentedon Apr 11, 2026
Completed in PR #28. SimavrRunner implemented for AVR boards (Uno, Mega, Leonardo) with
fbuild test-emusupport.