SIMAVR(1)
β¨ SIMAVR(1) β¨
okay so bestie, buckle UP, because simavr is the whole manual for simavr β the lean and mean AVR simulator π
she's tiny, she's fast, she's iconic, and today we're learning her entire lore.
π NAME π
simavr β lean and mean AVR simulator π¦
πΈ SYNOPSIS πΈ
simavr [OPTION]... [FILE]
π DESCRIPTION π
So what does she do? She executes AVR firmware, produces VCD waveform files and/or runs a debugging session. All three. Main character energy fr fr π
You can specify your simulation parameters right there in the emulated code using a .elf section, or you can just pass them as command line arguments β whatever feels right for your vibe π
And listen β if you're into more complex virtual circuitry prototyping and simulation, go peek at the AVR simulator development examples and documentation. That's where the real β¨shenanigansβ¨ live.
π OPTIONS π
FILEβ this is your elf or ihex formatted executable firmware π and heads up: if it's an ihex file, she assumes the filename extension is.hex, no cap.--list-coresβ lists every single supported AVR core and then dips out. exit stage left π-m CORE,--mcu COREβ run the simulation on CORE. pick your queen π-f FREQ,--freq FREQβ set the core speed in HZ. she needs to know how fast to go πβοΈ-t,--traceβ run a full scale decoder trace. everything. all of it. on display π₯-ti VECTORβ add traces for IRQ vector. yes bestie, VECTOR, that one specifically.-g,--gdbβ listen for a gdb connection on port1234. the gdb girlies are gonna eat this up π-ffβ load the next.hexfile as flash β‘-eeβ load the next.hexfile as eeprom πΈ-i INPUT,--input INPUTβ read input signals from a.vcdfile. feed her π«Ά-vβ raise the verbosity level. and listen, you can pass this one more than once β stack them like accessories π-h,--helpβ display the usage message and exit. she'll explain herself, politely β¨
π¦ EXAMPLES π¦
π AVR GDB DEBUGGING π
First, run the AVR firmware simulation:
simavr -g -m atmega328p -f 16000000 firmware.elf
Then start avr-gdb β and optionally enable tui for better source code readability, because reading source in tui is chef's kiss π©π³π:
avr-gdb
(gdb) tui enable
Load the elf formatted firmware and connect to the running simulation:
(gdb) file firmware.elf
(gdb) target remote :1234
Now set a break point and go ahead, debug:
(gdb) break main
(gdb) continue
(gdb) next
(gdb) next
periodt. you're debugging, you're thriving, you're literally in your gdb era πβ
π AUTHOR π
This manual page was written by Milan Kupcevic <milan@debian.org> for the Debian project. Permission is granted to copy, redistribute and/or modify this document under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. π«Ά (yes bestie, that's the legal bit β it stays exactly as is, no edits, iykyk)
π SEE ALSO π
okay that's the whole page, no skips, no summaries, every single flag accounted for π
and that's a wrap, bestie!! this page is from the AVR simulator manual, dated April 2018, filed under SIMAVR(1) ππ
β¨ go simulate something iconic π¦
π¦ where this page comes from
- debian bookworm: simavr 1.6+dfsg-3 Β· GPL-3.0-or-later
- debian trixie: simavr 1.6+dfsg-3+b3 Β· GPL-3.0-or-later
- ubuntu jammy: simavr 1.6+dfsg-3 Β· GPL-3.0-or-later
- ubuntu noble: simavr 1.6+dfsg-3build2 Β· GPL-3.0-or-later
- ubuntu resolute: simavr 1.6+dfsg-3build2 Β· GPL-3.0-or-later
- ubuntu stonking: simavr 1.6+dfsg-3build2 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms