Arduino UNO R4: Nice upgrade or troublemaker?

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
Hi, today, I'll be reviewing the two new Arduino UNO. The Arduino UNO R4 Minima and the Arduino R4 WiFi. My name is Ilann, welcome to Le Grille Pain, a channel dedicated to electronic and programming My main use of Arduinos is as an educational platform, and by that I mean that I mostly use them to teach how to prototype hardware projects. So my review will mostly be from an educator perspective, and by that I mean that I am very used to seeing people using Arduinos or coding for the first time. So if that's your case, stay tuned for the small differences between a R3 and a R4 that might throw you off. First, let's remember what we are used to and what everyone is familiar with. Released in 2011, the R3 was based on the Atmega328p, an 8-bit microcontroller released by Atmel, which is, by today's standards, a fairly outdated component. As you can see, the manufacturer does not recommend it for new projects. It's a five volts microcontroller, meaning it is powered by 5V and that's the voltage it uses for its digital communication and as a voltage reference for analog conversions. The Arduino UNO introduced a standardized form factor that was the basis for a lot of “shields”. Add-on boards that you just plug on top of your Arduino to extend its functionalities. This form factor annoys a lot of makers since the pins are not regularly spaced. Meaning, you cannot choose a basic prototyping board to make a DIY shield They offer 14 digital I/O pins and six analog inputs. On the digital side, five pins are marked with a tilde (~) to indicate that they're able to output a PWM signal. The R3 is connected to a computer via a USB type-B connector and the communication is done by an intermediate chip, also made by Atmel that handles USB and Serial communication. You might be thinking that I am spending way too much time on very specific stuff, but you'll see why later on. To be complete, the R3 can also be programmed via an ICSP connector and the companion chip too. Finally, and maybe the one single thing that made Arduino so famous is the fact that they are open source and open hardware which enabled a lot of cheap clones to be made. The official board is now priced at 25€, but you can find clones for very cheap online. So without further ado, let's open the first one of the new boards. The Arduino UNO R4 Minima often presented as the direct replacement of the UNO R3. Right now, it costs 18€ on the Arduino store. At first view, apart for a new board color, nothing much seems to have changed. We can still find two rows of female headers for analog and digital pins. labelled the same way. The first obvious difference is the new microcontroller. the Renesas R7FA4M1AB3CFM. A 32-bit ARM Cortex M4, which I'm going to call as Arduino does the RA4M1 or RA4. It's a big step up in terms of speed, RAM and storage. Another difference is that we finally get a USB-C connector on a UNO board. As you can see, there is no companion chip. The new microcontroller is directly handling the USB communication, which I don't know what to think about. On one hand it means that we can now use full speed USB 2.0 communication between an Arduino and a computer. It also enables the creation of HID project, meaning projects, where your Arduino is acting like a keyboard or a mouse. On the other hand, it means that if your code makes the micro-controller crash, it’s going to be harder to debug or reprogram your Arduino. On the R3, the “redundant” chip was still running perfectly even if your code was poorly made. To be fair, there's actually a specific bootloader mode that can be accessed at any time by double-clicking the RESET button. It enabled me to reprogram my card when it was crashed, but that's not something that everyone will think of doing. nor something that is very well documented. Also, that means that waiting for the Serial port is now necessary. That's not a big deal, but it’s going to drive crazy some beginners for sure. Finally, must makers relies on the receive and transmit LEDs to check if some communication were happening between the computer and the UNO, on the Serial port since that was handled by a secondary chip, that was very reliable. Now, two GPIOs from the RA4 (not accessible on the headers) are blinking these two LEDs. I was pretty confused at first when I saw that they were not blinking when programing the chip or when I was using the serial monitor And to be even more confusing, since this microcontroller can handle two separate Serial ports the Minima exposes on the usual TX/RX pins located on D0 and D1. A separate Serial port than the one used on the USB port. You can select which one you want to read or write to, by using Serial or Serial1. That's a cool new feature, but that's going to be so confusing for beginners and I'm sure it's going to break a lot of previous tutorials or projects. Talking about bugs and crashes, there is finally a way to hardware debug an Arduino UNO. But don't get too excited, that's not using directly the Arduino IDE. Indeed, they included a standard SWD debug port that you can use to debug your card. But a lot of beginners won't have them lying around in, but that's still a very good addition to the UNO. I don't really understand this choice, since they really put the focus on the addition of the debugger in the new Arduino IDE. To talk about the analog inputs, the ADC (Analog to Digital Converter) is now a 14-bit one instead of the 10-bit that we are used to on the previous version. I was very curious to see how Arduino implemented it while not breaking previous code or tutorials. I really like their solution: by default, the ADC will be running at 10 bits. But now you can use the function analogReadResolution() to increase the resolution up to 14 bits and get a much more precise reading. Likewise, if you try to use a higher resolution on the previous version, the values will just be shifted. Meaning that you will get the same range of values, but with a lower resolution. Very nice! There is also for the first time on an Arduino UNO, an analog output, which is going to be very confusing for beginners. The analog output, or DAC (for Digital to Analog Conversion) is located on the pin A0 which is still labeled as an analog input. Previously, on other official boards with a DAC, the pins were clearly labeled as an output. Also, you can use analogWrite() to use this output. A function that was previously used to output a PWM signal on a digital pin. Very confusing for beginners and people that are looking up tutorials for the first time. I'm very happy to see a DAC on an Arduino UNO, but it's a bit sad that there is only one channel. Talking about analogWrite(), you might know the rule: “Only the pins with a small wave (~) can be used to output a PWM signal” Well, not anymore… err, it depends. On the R4, it will actually work on all the pins. But Arduino says, it's not "officially supported" and it might break things… Another very good news for teachers Finally, something that I've seen mentioned in another YouTube review is that on the R3, the port were mapped directly and in the same order on the output digital pins. On the R4, that’s not the case and even worse the pinout is not the same between the two versions of the R4. To finish on a more positive note, something that got a lot of people excited is the fact that the power port or Vin is now accepting any voltages between 6 and 24V while the R3 only accepted between 7 and 12V. So if your project for example uses 24V LEDs is going to be much easier to power your board. Also, since the R4 now uses a switching power supply, the voltage conversion should be much more efficient. something that was to be expected, moving on to a modern microcontroller is that the total output current is lower than on the previous chip. Indeed, on the Arduino UNO R3, you could output up to 40mA per pin with a total of 200mA for the whole board. On the two new boards, it's now 8mA per pin with a total of 60mA for the whole board. For very basically LEDs projects that shouldn't be a problem. But keep that in mind if you are using more demanding sensors or actuators. That's pretty much it for the Minima. Let's check the other one. The Arduino UNO R4 WiFi costs 25€ on the official store. Here, we can see that there is a lot more stuff on this board. The two most obvious ones being an ESP32 and a LED matrix. First thing first, there is an ESP32 that acts both as a Wi-Fi/. luetooth gateway. (both networks cannot be used at the same time) and as an USB controller. Meaning it will forward the Serial communication and act as a programmer/debugger. More on that later! Most of you will be familiar with the ESP 32, since many new projects use it as their main microcontroller Here, Arduino made the choice to use it as a network co-processor. As it was the case with the coprocessor on the R3, it is also possible to reprogram directly the ESP32. To be exhaustive, you can also change from software and from hardware with chip is talking to the USB port, But I won't talk too much about these two features since that's not really something that a beginner will do. The other addition is a 12x8 red LED matrix. Which is a very nice addition to display messages or animation directly on the UNO board. There’s even a nice example code that enables you to draw in real time on the LED matrix from your browser. For education, I can totally see a workshop for young makers, including a bit of pixel art. Another feature that I was very excited about is the Qwiic connector, also called Stemma QT in the Adafruit world. You can plug directly an I2C sensor without any soldering on this board. Since it’s going to be used mostly by beginners, I don't understand why they did not include it on the Minima. Also, like it was the case with the two Serial ports, the Qwiic connector uses a second I2C peripheral that is called using Wire1 instead of Wire. On a positive note, the Qwiic standard is using 3.3V and both the power supply and logic conversion is done behind the scene on the board. Another new feature available on these boards is the RTC (for Real Time Clock) allowing you to keep track of the time. You have three new pins for that on the WiFi version: GND, that is well… a ground. VRTC that is powering directly the main microcontroller in a low power mode to keep track of time. and OFF, to disable the power supply and turn off the rest of the board. Keep in mind that this will not work if you are using the USB port to power your Arduino. That's a shame, since that means that you cannot use it if you are using a power bank as your power source. That’s a very nice addition to make some low power projects. But same question why aren't these twins present of the Minima, which also include a RTC ? On the other hand, there is no SWD port on the R4 WiFi since the ESP32 can be used directly as a debugger. I was expecting to be able to use the new IDE to debug the board, but that's not working at the moment, maybe they’ll add it later. I found somewhere online that the ESP32 was already making some kind of error reporting. So I made a code with obvious memory mistakes, and indeed I got some error messages but in the Serial Monitor. But that's something that will not be working on the Minima. And to add even more confusion, my program was not crashing the same way on the two boards. On a Arduino UNO R3, this code would've just printed nonsense Since memory management was not done in a modern way. Finally, the Arduino UNO R4 WiFi is supposed to be compatible Arduino IoT Cloud. And I was very excited to try it, since that can be a very useful teaching tool for non programmers. But… it's supposed to be supported "very soon". So… what do you think of these two boards ? As a maker, I'm very happy to see new “low-cost” official Arduino boards, that includes more modern features. Being able to get more speed, memory, a debug interface, Wi-Fi, Bluetooth and a cute little screen is very nice. As other reviews have said, they are not bad prototyping boards, and I'm sure that I will use them for my personal projects. But nowadays a lot of boards based on the ESP32 or the Raspberry Pi RP2040 can be found for very cheap. And it’s very easy to start prototyping with these new boards. At the moment, the UNO R3 is not discontinued and Arduino says that it will still be available. But if their end goal is to replace the R3 with the R4, mmh… Like many others have said, calling them “UNO boards” will create a lot of confusion! So what do you think of theses new boards? A very nice upgrade or a lot of confusion? Tell me in the comments down below. Thank you very much for watching. I hope you'll like this video, If so, please consider subscribing to this channel. That's all for me today and… Bisous bbye!
Info
Channel: Le Grille-Pain 🍞
Views: 18,361
Rating: undefined out of 5
Keywords: arduino, arduino uno, arduino uno r4, arduino uno r4 minima, arduino uno r4 wifi, r4 minima, r4 wifi, arduino board, DIY, maker, electronics, programming, computer science, education, esp32, renesas, arduino ide, adafruit, arduino iot, arduino iot cloud, arduino uno r3, c++, teaching electronic, ra4m1, arm cortex
Id: L9L3_RP1NWY
Channel Id: undefined
Length: 11min 30sec (690 seconds)
Published: Thu Jul 06 2023
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.