Simulator

Arduino Uno R4 simulator, running in this tab

Mokxi is a free Arduino Uno R4 simulator that runs in your browser, with nothing to install and no account needed. Mokxi models the Renesas RA4M1 on the Uno R4 Minima, on our own Arm Cortex-M4 core at 48 MHz, on the real memory map, so a build that runs here runs on the board on your desk.

  • 192parts on the bench
  • 25boards running now
  • 1.00xreal time, on every board
Uno R4: blinklive0.000 s 0.00x
Click to open it in the editor
Real firmware, running right now on our own core. Click it to open the circuit in the editor.
What is modeled

The numbers, not the marketing

Taken from the board's own contract document and put in plain words.

The core
Arm Cortex-M4 (ARMv7E-M) at 48 MHz, with the datasheet cycle count of every instruction. Soft float, because this core has no FPU: the runtime is built for it and a VFP instruction faults rather than lying.
Peripherals
The port block with one PFS register a pin behind its write protection, GPT PWM on the six tilde pins at 490 Hz, SCI2 as Serial1 on D0 and D1, a fourteen-bit ADC on A0 to A5, and SysTick at 1 kHz for millis.
What is not there yet
A USB stack (Serial is a byte pipe with no enumeration behind it), the ICU, so there is no attachInterrupt, the AGT, I2C and SPI. Some addresses are marked unverified in the contract rather than claimed.
Go further

The full board page

Every peripheral area, every example and the wiring notes, in one place.

Arduino Uno R4 Minima simulatorBlink, a button and the serial monitor, running.

Questions

Which Uno R4 does this simulate?

The Minima: USB-C, no WiFi. The Uno R4 WiFi is a board of its own in the parts bin, with the LED matrix and a simulated network.

Is this the same as an Uno R3?

The same shape, the same 5 V pins and the same shield header, with an Arm Cortex-M4 at 48 MHz underneath instead of an 8-bit AVR at 16.

Why does analogRead give me 0 to 1023?

Because that is what the Arduino core does, so an Uno sketch reads the same numbers. The converter is fourteen bits; analogReadResolution(14) gives you all of them.

Is it free?

Yes, with no card and no account needed to try it.

Try your own firmware on the Uno R4

What you build here runs on the board on your desk, unchanged. Nothing to install and no account needed.