Skip to content

Commit 5e8d428

Browse files
committed
Update Whats-the-difference-between-UNO-R3-and-UNO-R4-boards.md
1 parent 368ec3a commit 5e8d428

File tree

1 file changed

+232
-24
lines changed

1 file changed

+232
-24
lines changed

content/Hardware Support/UNO/Whats-the-difference-between-UNO-R3-and-UNO-R4-boards.md

Lines changed: 232 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -3,56 +3,264 @@ title: What's the difference between UNO R3 and UNO R4 boards?
33
id: 9350551575964
44
---
55

6-
Learn about the differences between UNO R3 and the new UNO R4 WiFi and UNO R4 Minima boards.
6+
Learn about the differences between the Arduino UNO R3, UNO R4 Minima and UNO R4 WiFi boards.
77

8-
---
8+
In this article:
99

10-
## Select differences
10+
- Board overview (#overview)
11+
- Compatibility (#compatibility)
12+
- Technical specifications comparison (#tech-specs)
1113

12-
Here are a few changes you may notice if you've previously used the UNO R3:
14+
---
1315

14-
### USB connector type
16+
## Board overview {#overview}
1517

16-
UNO R4 boards use a **USB-C** connector.
18+
The UNO R4 boards maintain the same form factor, pinout and 5 V operating voltage as the UNO R3. Here's a quick overview:
1719

18-
You'll need a USB-C cable to connect the board to your computer.
20+
- **UNO Rev3**: A classic board with an 8-bit architecture, offering straightforward functionality and broad library compatibility.
1921

20-
### Different behavior on runtime errors
22+
- **UNO R4 Minima**: Focused on simplicity, it offers essential functions ideal for prototyping and basic learning. It includes advanced features such as an SWD port for program debugging, along with increased processing power and additional memory.
2123

22-
If the board encounters a runtime error while running an uploaded sketch, you need to double-press the reset button to put it into bootloader mode before uploading a new sketch.
24+
- **UNO R4 WiFi**: Equipped with WiFi and Bluetooth connectivity, it is ideal for IoT and wireless projects. The Qwiic I2C Connector and 12x8 Red LED Matrix enable project creation without soldering, manual wiring, or using a breadboard.
2325

24-
Note that unlike some Mbed OS boards, runtime errors do not result in a flashing LED.
26+
### Does the UNO R4 replace the UNO R3?
2527

26-
### Differnet board package
28+
No, the Arduino UNO R3 will still be available and supported for makers who want to work with its 8-bit AVR microcontroller.
2729

28-
All previous UNO boards (except the UNO WiFi Rev2) were AVR-based, and used the **Arduino AVR Boards** package.
30+
### Selected differences
2931

30-
To use the new UNO R4 boards, install the new **Arduino UNO R4 Boards** package.
32+
#### Different behavior on runtime errors
3133

32-
---
34+
If the board encounters a runtime error while running an uploaded sketch, you need to double-press the reset button to put it into bootloader mode before uploading a new sketch.
3335

34-
## Does the UNO R4 replace the UNO R3?
36+
Note that unlike some Mbed OS boards, runtime errors do not result in a flashing LED.
3537

36-
No, the Arduino UNO R3 will still be available and supported for makers who want to work with its 8-bit AVR microcontroller.
38+
The UNO R4 WiFi board features an error-catching mechanism that detects operations that caused a runtime crash, as opposed to the usual silent behavior of a crashed board.
3739

38-
---
40+
#### Different board package
3941

40-
## Compatibility
42+
Previous UNO boards (except the UNO WiFi Rev2) were AVR-based, and used the **Arduino AVR Boards** package. For UNO R4, install the **Arduino UNO R4 Boards** package.
43+
44+
## Compatibility {#compatibility}
4145

4246
### Can I use hardware compatible with the UNO R3 with an UNO R4 board?
4347

4448
UNO R4 boards maintain the same mechanical and electrical compatibility, allowing you to seamlessly use your existing shields and hardware with the new board.
4549

46-
### Can I use my sketch developed for UNO R3 with an UNO R4 board?
50+
> [!NOTE]
51+
> Third-party UNO shields are compatible with R4 in terms of voltage and pinout. However, software compatibility might require some porting work, so it should be checked with shield manufacturers before purchase.
4752
48-
Yes, if your sketch was developed using the [Arduino API](https://docs.arduino.cc/language-reference/).
53+
### Can I use my sketch developed for UNO R3 with an UNO R4 board?
4954

50-
If your sketch uses instructions specific to the AVR architecture, they will have to be changed to ensure compatibility.
55+
Yes, if your sketch was developed using the [Arduino API](https://docs.arduino.cc/language-reference/). If your sketch uses instructions specific to the AVR architecture, they will have to be changed to ensure compatibility.
5156

5257
### Are libraries for UNO R3 also compatible with the UNO R4 boards?
5358

54-
Libraries that are based on the [Arduino API](https://docs.arduino.cc/language-reference/) will work as is.
59+
- Libraries that are based on the [Arduino API](https://docs.arduino.cc/language-reference/) will work as is.
60+
61+
- Libraries that use AVR-specific instructions are not compatible with the architecture of UNO R4 boards. However, some of these libraries have already been ported. For more details, refer to the [UNO R4 Library Compatibility repository](https://github.com/arduino/uno-r4-library-compatibility).
62+
63+
## Technical specifications comparison {#tech-specs}
5564

56-
Libraries that use AVR-specific instructions are not compatible with the architecture of UNO R4 boards. However, there are libraries that have already been ported as part of our early adopters program.
65+
<style type="text/css">
66+
.tg {border-collapse:collapse;border-spacing:0;}
67+
.tg td{border-color:black;border-style:solid;border-width:1px;font-family:Arial, sans-serif;font-size:14px;
68+
overflow:hidden;padding:10px 5px;word-break:normal;}
69+
.tg th{border-color:black;border-style:solid;border-width:1px;font-family:Arial, sans-serif;font-size:14px;
70+
font-weight:normal;overflow:hidden;padding:10px 5px;word-break:normal;}
71+
.tg .tg-0mi1{background-color:#F6F9F9;font-weight:bold;text-align:left;vertical-align:bottom}
72+
.tg .tg-kz3h{background-color:#F6F9F9;font-weight:bold;text-align:left;vertical-align:top}
73+
.tg .tg-4bam{background-color:#FFF;text-align:center;vertical-align:bottom}
74+
.tg .tg-8pu1{background-color:#F6F9F9;font-weight:bold;text-align:center;vertical-align:bottom}
75+
.tg .tg-8d8j{text-align:center;vertical-align:bottom}
76+
.tg .tg-7yig{background-color:#FFF;text-align:center;vertical-align:top}
77+
</style>
78+
<table class="tg"><thead>
79+
<tr>
80+
<th class="tg-8pu1" colspan="6"><span style="font-weight:bold;background-color:#F6F9F9">Board</span></th>
81+
</tr></thead>
82+
<tbody>
83+
<tr>
84+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Arduino UNO R3</span></td>
85+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Arduino UNO R4 Minima</span></td>
86+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Arduino UNO R4 WiFi</span></td>
87+
</tr>
88+
<tr>
89+
<td class="tg-8pu1" colspan="6"><span style="font-weight:bold;background-color:#F6F9F9">Microcontroller</span></td>
90+
</tr>
91+
<tr>
92+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">ATmega328P</span></td>
93+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Renesas RA4M1 (Arm Cortex-M4)</span></td>
94+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Renesas RA4M1 (Arm Cortex-M4)</span></td>
95+
</tr>
96+
<tr>
97+
<td class="tg-8pu1" colspan="6"><span style="font-weight:bold;background-color:#F6F9F9">Radio Module (WiFi/Bluetooth)</span></td>
98+
</tr>
99+
<tr>
100+
<td class="tg-8d8j" colspan="2">No</td>
101+
<td class="tg-8d8j" colspan="2">No</td>
102+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">ESP32-S3-MINI-1-N8</span></td>
103+
</tr>
104+
<tr>
105+
<td class="tg-8pu1" colspan="6"><span style="font-weight:bold;background-color:#F6F9F9">USB Connector</span></td>
106+
</tr>
107+
<tr>
108+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">USB-B</span></td>
109+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">USB-C</span></td>
110+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">USB-C</span></td>
111+
</tr>
112+
<tr>
113+
<td class="tg-8pu1" colspan="6"><span style="font-weight:bold;background-color:#F6F9F9">Mouse/Keyboard Emulation (HID)</span></td>
114+
</tr>
115+
<tr>
116+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">No</span></td>
117+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Yes</span></td>
118+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Yes</span></td>
119+
</tr>
120+
<tr>
121+
<td class="tg-8pu1" colspan="6"><span style="font-weight:bold;background-color:#F6F9F9">Real-Time Clock (RTC)</span></td>
122+
</tr>
123+
<tr>
124+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">No</span></td>
125+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Yes</span></td>
126+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Yes</span></td>
127+
</tr>
128+
<tr>
129+
<td class="tg-8pu1" colspan="6"><span style="font-weight:bold;background-color:#F6F9F9">Pins</span></td>
130+
</tr>
131+
<tr>
132+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">Built-in LED Pin</span></td>
133+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">13</span></td>
134+
<td class="tg-8d8j" colspan="2">No</td>
135+
<td class="tg-8d8j" colspan="2">No</td>
136+
</tr>
137+
<tr>
138+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">Digital I/O Pins</span></td>
139+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">14</span></td>
140+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">14</span></td>
141+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">14</span></td>
142+
</tr>
143+
<tr>
144+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">Analog input pins</span></td>
145+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">6</span></td>
146+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">6</span></td>
147+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">6</span></td>
148+
</tr>
149+
<tr>
150+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">PWM pins</span></td>
151+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">6</span></td>
152+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">6</span></td>
153+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">6</span></td>
154+
</tr>
155+
<tr>
156+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">DAC</span></td>
157+
<td class="tg-8d8j">No</td>
158+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">1</span></td>
159+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">1</span></td>
160+
</tr>
161+
<tr>
162+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">External interrupts</span></td>
163+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">No</span></td>
164+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">2,3</span></td>
165+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">2,3</span></td>
166+
</tr>
167+
<tr>
168+
<td class="tg-8pu1" colspan="6"><span style="font-weight:bold;background-color:#F6F9F9">Communication</span></td>
169+
</tr>
170+
<tr>
171+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">UART</span></td>
172+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">Yes</span></td>
173+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Yes</span></td>
174+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Yes</span></td>
175+
</tr>
176+
<tr>
177+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">I2C</span></td>
178+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">Yes</span></td>
179+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Yes</span></td>
180+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Yes</span></td>
181+
</tr>
182+
<tr>
183+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">SPI</span></td>
184+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">Yes</span></td>
185+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Yes</span></td>
186+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Yes</span></td>
187+
</tr>
188+
<tr>
189+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">CAN</span></td>
190+
<td class="tg-8d8j">No</td>
191+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Yes</span></td>
192+
<td class="tg-4bam" colspan="2"><span style="font-weight:normal;background-color:#FFF">Yes</span></td>
193+
</tr>
194+
<tr>
195+
<td class="tg-8pu1" colspan="6"><span style="font-weight:bold;background-color:#F6F9F9">Power</span></td>
196+
</tr>
197+
<tr>
198+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">I/O Voltage</span></td>
199+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">5V</span></td>
200+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">Circuit operating voltage</span></td>
201+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">5 V</span></td>
202+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">Circuit operating voltage</span></td>
203+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">5 V (ESP32-S3 is 3.3 V)</span></td>
204+
</tr>
205+
<tr>
206+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">Input voltage (nominal)</span></td>
207+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">7-12V</span></td>
208+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">Input voltage (VIN)</span></td>
209+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">6-24 V</span></td>
210+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">Input voltage (VIN)</span></td>
211+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">6-24 V</span></td>
212+
</tr>
213+
<tr>
214+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">DC Current per I/O Pin</span></td>
215+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">20 mA</span></td>
216+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">DC Current per I/O Pin</span></td>
217+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">8 mA</span></td>
218+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">DC Current per I/O Pin</span></td>
219+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">8 mA</span></td>
220+
</tr>
221+
<tr>
222+
<td class="tg-8pu1" colspan="6"><span style="font-weight:bold;background-color:#F6F9F9">Clock speed</span></td>
223+
</tr>
224+
<tr>
225+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">ATmega328P</span></td>
226+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">16 MHz</span></td>
227+
<td class="tg-kz3h" rowspan="2">RA4M1</td>
228+
<td class="tg-7yig" rowspan="2">48 MHz</td>
229+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">RA4M1</span></td>
230+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">48 MHz</span></td>
231+
</tr>
232+
<tr>
233+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">ATmega16U2</span></td>
234+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">16 MHz</span></td>
235+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">ESP32-S3-MINI-1-N8</span></td>
236+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">up to 240 MHz</span></td>
237+
</tr>
238+
<tr>
239+
<td class="tg-8pu1" colspan="6"><span style="font-weight:bold;background-color:#F6F9F9">Memory</span></td>
240+
</tr>
241+
<tr>
242+
<td class="tg-kz3h" rowspan="2">ATmega328P</td>
243+
<td class="tg-7yig" rowspan="2">2KB SRAM, 32KB FLASH, 1KB EEPROM</td>
244+
<td class="tg-kz3h" rowspan="2">RA4M1</td>
245+
<td class="tg-7yig" rowspan="2">256 kB Flash, 32 kB RAM</td>
246+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">RA4M1</span></td>
247+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">256 kB Flash, 32 kB RAM</span></td>
248+
</tr>
249+
<tr>
250+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">ESP32-S3-MINI-1-N8</span></td>
251+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">384 kB ROM, 512 kB SRAM</span></td>
252+
</tr>
253+
<tr>
254+
<td class="tg-8pu1" colspan="6"><span style="font-weight:bold;background-color:#F6F9F9">MCU Resolution</span></td>
255+
</tr>
256+
<tr>
257+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">ATmega328P</span></td>
258+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">8-bit</span></td>
259+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">RA4M1</span></td>
260+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">32-bit</span></td>
261+
<td class="tg-0mi1"><span style="font-weight:bold;background-color:#F6F9F9">RA4M1</span></td>
262+
<td class="tg-4bam"><span style="font-weight:normal;background-color:#FFF">32-bit</span></td>
263+
</tr>
264+
</tbody></table>
57265

58-
<!-- markdownlint-disable-file HC001 -->
266+
<!-- markdownlint-disable-file HC001 -->

0 commit comments

Comments
 (0)