Arduino UNO R4 WiFi
Board notes for the Arduino UNO R4 WiFi (Renesas RA4M1), Juno's primary target.
The official product name is Arduino UNO R4. This file keeps
ONEin its filename to match the repository's requested documentation naming convention.
The UNO R4 family retains the classic UNO form factor and 5 V GPIO while replacing the 8-bit AVR processor used by the UNO R3 with a 32-bit Renesas RA4M1. It is available as the UNO R4 Minima and UNO R4 WiFi. Both variants run Arduino sketches on the RA4M1; the WiFi variant adds a separate ESP32-S3 connectivity module and several board-level peripherals.
Core specification
| Characteristic | UNO R4 Minima | UNO R4 WiFi |
|---|---|---|
| Main microcontroller | Renesas R7FA4M1AB3CFM (RA4M1) | Renesas R7FA4M1AB3CFM (RA4M1) |
| CPU architecture | 32-bit Arm Cortex-M4 with floating-point unit | 32-bit Arm Cortex-M4 with floating-point unit |
| Main CPU clock | 48 MHz | 48 MHz |
| Program flash | 256 kB | 256 kB |
| SRAM | 32 kB | 32 kB |
| Data memory | 8 kB | 8 kB |
| Logic and operating voltage | 5 V | 5 V |
| Digital I/O | 14 pins, D0-D13 | 14 pins, D0-D13 |
| PWM-capable pins | 6 | 6 |
| Analog inputs | 6 pins, A0-A5, up to 14-bit resolution | 6 pins, A0-A5, up to 14-bit resolution |
| Analog output | One 12-bit DAC output on A0 | One 12-bit DAC output on A0 |
| USB connector | USB-C | USB-C |
| Built-in LED | D13 | D13 |
| Wireless coprocessor | None | ESP32-S3-MINI-1-N8 |
| Onboard LED matrix | None | 12 columns by 8 rows, 96 LEDs |
| Qwiic connector | None | Yes, connected to the I2C bus |
| Arduino CLI FQBN | arduino:renesas_uno:minima |
arduino:renesas_uno:unor4wifi |
The RA4M1 also provides a real-time clock, a 12-bit DAC, an operational amplifier and a CAN controller. CAN use requires an external transceiver; the board does not translate the MCU's CAN logic signals to the differential CANH/CANL bus by itself.
The WiFi variant's ESP32-S3 supplies 2.4 GHz Wi-Fi and Bluetooth connectivity. It is a secondary processor rather than the MCU that executes the main Arduino sketch. Communication between the RA4M1 and ESP32-S3 is handled by the board core and relevant Arduino libraries.
Power and electrical characteristics
| Item | Specification |
|---|---|
| GPIO logic level | 5 V |
| VIN/barrel-jack input range | 6-24 V |
| USB power | 5 V through USB-C |
| Per-pin output current | 8 mA maximum recommended by Arduino |
| 3.3 V pin | Generated by the onboard regulator; observe the board datasheet's current limit |
The UNO R4 is a 5 V board, but not every shield written for an AVR-based UNO is automatically software compatible. A shield may depend on AVR registers, timers, interrupt numbering or other ATmega328P-specific behavior even when its electrical interface is safe at 5 V.
Do not apply more than the documented voltage to an I/O pin, and do not use the microcontroller pins to power motors, relays or other high-current loads directly. Use a suitable driver and an external supply for those loads.
I/O and buses
- Digital: D0-D13; D13 also drives the built-in LED.
- Analog: A0-A5; the Arduino core supports selectable ADC resolution up to 14 bits.
- DAC: A0 can act as the 12-bit analog output when configured for DAC use.
- UART: exposed on D0/RX and D1/TX.
- I2C: exposed on SDA/SCL and duplicated on the matching UNO header positions. The WiFi model also exposes this bus through its Qwiic connector.
- SPI: exposed through the six-pin ICSP header and the board's mapped digital pins.
- CAN: the RA4M1 CAN signals are exposed, but an external CAN transceiver is required.
- USB: the RA4M1 has native USB support, enabling serial communication and HID devices such as a keyboard or mouse.
Always check the official pinout for timer, interrupt and alternate-function assignments before designing hardware around a peripheral. Not every RA4M1 peripheral signal is exposed on the UNO headers.
R4 variant-specific hardware
UNO R4 Minima
The Minima is the simpler variant. It has the RA4M1, native USB-C, UNO headers, RTC, DAC and CAN capability, but no wireless coprocessor, Qwiic connector or LED matrix.
UNO R4 WiFi
The WiFi model adds:
- an ESP32-S3-MINI-1-N8 module for Wi-Fi and Bluetooth;
- a 12x8 onboard LED matrix driven through the board support package;
- a Qwiic connector for 3.3 V I2C peripherals;
- additional board-level status LEDs and connectivity support.
The Qwiic connector uses 3.3 V signaling even though the traditional UNO GPIO headers operate at 5 V. Treat the two connector families according to their documented voltage domains.
Physical compatibility
Both variants follow the established UNO shield outline and header arrangement. The official board drawings should be used for enclosure tolerances and mechanical design; nominal dimensions are approximately 68.9 mm by 53.3 mm. Header placement is designed for UNO-form-factor shields, subject to the electrical and software compatibility warning above.
Arduino toolchain
Install the Renesas UNO core:
arduino-cli core update-index
arduino-cli core install arduino:renesas_uno
Compile for the WiFi variant:
arduino-cli compile \
--fqbn arduino:renesas_uno:unor4wifi \
build/juno/<ExampleClassName>
Uploading changes the firmware on a connected physical board. Find the port with
arduino-cli board list and follow the upload procedure in ARDUINO.md.
Juno compatibility
The UNO R4 WiFi is currently Juno's only target (the Minima is untested and not yet supported).
Juno generates GNU ARM (Cortex-M4) assembly plus a small C++ runtime shim, and the
arduino:renesas_uno core assembles/compiles and links them into native RA4M1 machine code. The
entry-point class's @Board annotation
(io.github.jabrena.juno.annotations.Board) selects the target board; a class with no @Board annotation
builds for the board named by -Djuno.board, or the WiFi variant when it is omitted.
| Juno API or feature | R4 WiFi | Notes |
|---|---|---|
Gpio and DigitalOutput |
Yes | Uses standard Arduino GPIO calls |
Delay and Clock |
Yes | Uses Arduino delay and time functions |
Serial |
Yes | Uses the board's USB serial support |
Mouse |
Yes | Requires the Arduino Mouse library and native USB HID support |
LedMatrix |
Yes | Requires the WiFi model's onboard 12x8 matrix |
| Wi-Fi and Bluetooth | Yes (Wi-Fi) | Bluetooth has no Juno intrinsic API yet |
| DAC, RTC and CAN | Not yet exposed | Hardware exists, but Juno has no intrinsic API for it yet |
Juno currently represents supported Java values as 32-bit integers. That maps naturally to the RA4M1 and leaves substantially more SRAM than on the UNO R3 for generated locals and temporary values.