Arduino Uno Introduction

The Arduino Uno was officially released in October 2010 .since then it is one of the most popular microcontrollers in the world, especially among makers and hobbyists.

Since its initial release, the Arduino Uno has undergone a number of updates:

  • Arduino Uno (Revision 1) – Released in October 2010. The initial version of the Arduino Uno featured a removable Atmel ATmega328 microcontroller and used the Atmel ATmega8U2 for USB connectivity.  Note that Atmel is now Microchip.
  • Arduino Uno (Revision 2) – This revision added four solder pads connecting two of the ATmega8U2’s pins. This allowed the ATmega8U2 to be replaced with a standalone circuit once the development phase was complete.
  • Arduino Uno (Revision 3) – Released in November 2011. This was a major revision that changed the USB chip to an ATmega16U2 and added more pin headers for compatibility with future hardware. This revision is still available and has been “cloned” by many manufacturers. When people speak about “an Arduino,” this is the board they are talking about.
  • Arduino Uno WiFi (Revision 2) – Released in 2018, this variant of the Uno added built-in WiFi connectivity through an ESP32 module. In addition to WiFi, it also offered enhanced features like a 6-axis IMU, temperature sensor, and crypto chip for secure communication.  It was never very popular, but it is still available.There were also several “special edition” Arduino Unos produced, such as the Arduino Uno SMD Edition (which replaced the removable DIP ATmega328 chip with a surface-mount version)

There were also several “special edition” Arduino Unos produced, such as the Arduino Uno SMD Edition (which replaced the removable DIP ATmega328 chip with a surface-mount version)

Now, in mid-2023, we finally have a new revision of the Arduino Uno. Actually, we have two.

The Arduino Uno R4 Boards

Instead of just a single board, the new Arduino Uno R4 has been released as two.

  • The Uno R4 WiFi – A board with Bluetooth and Wifi.
  • The Uno R4 Minima – A less expensive, “stripped-down” version.

1.Arduino Uno R3

Arduino Uno is known as an open-source development board as it allows you to use this board to interact with real-world things by uploading programs on this board. There are many other microcontrollers like PIC microcontrollers, ST microcontrollers, Texas microcontrollers but Arduino is used mostly as it is inexpensive and can be used in various forms. It is based on ATMEL ATmega328p microcontroller.

It can interact with anything that is controlled by electricity in any way. It can also interact with motors, sensors, and electromagnets. In short, we can make devices that react and respond to the world by using this board. In short, we can say that Arduino is the brain of thousands of projects.

Different types of ARDUINO UNO Boards

Arduino makes a different type of development boards and each having different capabilities. Like Arduino Mega, Arduino UNO, Arduino NanoLily Pad Arduino, and much more because as advance our projects are, Arduino keeps on updating its development board to keep teachers, students and other interested people updated as these boards are being used in scientific research as well as many other advanced fields of robotics and many other fields. These boards are commonly used as they are inexpensive, cross-platform (IDE software which is used to make a code for these development boards can run on Linux, OSX and Windows operating system while some boards are limited only to windows), extensible and open-source hardware and software.

Introduction 

Arduino UNO is one of the famous microcontroller boards of the Arduino family and is developed by Arduino.cc. Basically Arduino.cc is an open-source platform and is mainly based upon AVR microcontroller Atmega328. It is one of the most economical boards of Arduino family and is widely used because of its small number of input-output pins and reduced size as compared to Arduino mega which is the big brother of Arduino UNO. In this article, we are going to briefly discuss Arduino UNO. We will discuss its specifications, pin configuration, dimensions,applications and projects in which this board is used.

Arduino Uno R3 Pinout Diagram

Pinout diagram shows that each pin has multiple functions such as PWM, interrupts, general-purpose input-output and analog channel. But we can use only one function of each pin at a time.It consists of a total of 14 GPIO pins. Not all pins have a PWM feature.

Pin Configuration Description and their use

In this section, we will see the function of each pin.  How can we initialize these pins for a specific feature?

GPIO pins

As mentioned in the last section, Arduino Uno has fourteen digital I/O pins. We can use all these pins either as digital input pins or digital output pins. These pins have only 2 states i.e. high or low or in simple words either 5 V or 0 V no in-between values. These pins are mostly used to sense the digital voltage level presence when the switch is open or closed). For example, when the switch connected with Arduino Uno digital input is open, it will sense zero voltage level. If the switch is closed,  it will sense 5 volts.

  • To initialize any pin as an input or output, we use pinMode(pin_number, mode) function.  For example,  using this function like this ‘pinMode(13, OUTPUT)’ will initialize the pin number 13 as a digital output pin.
  • Similarly this ‘pinMode(13, INPUT)’ will initialize the pin as a digital input pin.
  • digitalWrite(pin_number, state) function makes the digital output pin active high or low depending state parameter. This parameter can be either HIGH or LOW.
  •  digitalRead() function read the state of a digital input pin and returns either logic high or low according to the voltage level on the input pin.

Analog Channel Pins

Arduino Uno offers six analog channels. The header on the left side of the board has all these analog pins together. This diagram shows the  Pinout location of the analog pins.

Starting from A0 to A5 and they come up with a resolution of 10 bits. They provide the flexibility of connecting any external analog device with these pins. These pins can read analog voltage from 0 V to 5 V. But they can be configured to lower range by using the AREF pin or analogReference () function available in Arduino IDE. But the maximum voltage we can read directly with these analog channels is 5 volts. However, we can use step down voltage circuits to measure higher voltage.

ADC (analog to digital converter) is used to sample these pins. These pins take an analog signal and by using ADC convertor they convert this analog signal to digital number between 0 – 1023.

Analog channel Examples:

To use analog channels,  we use this function

int analogoutput = analogRead(int pin_number);

analogRead() function reads the analog voltage from a pin number specified as an argument to this function. We save the output value in an integer type variable.

Arduino PWM Pins

Development Board has 14 GPIO pin. But, only six of them have a pulse width modulation feature.  Pin number, 5, 6, 9, 10, and 11 provide PWM output. All of them have an 8-bit resolution.

It is just like an analog output function. PWM controls LEDs, motors and other actuators.  The analogWrite(pin_number, duty_cycle) function provides PWM output with a specified duty cycle. The duty cycle can vary between 0-100% or 0-255.  For example, analogWrite(5, 127) function generates a PWM on pin number 5 with a duty cycle of 50%. 

Other Pins

  • USB port
  • TX and RX pins (for serial communication)
  • SPI (serial peripheral interface)
  • External adaptor to deliver power to this board by external power supply up to 12 volts (board will make use of its voltage regulator and will make this voltage up to 5 V or 3.3 V as per our requirements)
  • Reset Pin: Used to reset our whole board and takes it to the initial stage of the running program. For instance our board gets hang in the middle of our running program then we can make use of this pin and this pin will clear everything up and starts program from beginning
  • ICSP connector (Used to bypass USB port and interfacing our board directly as serial device. This port is essential to reboot load our chip if it gets corrupted and we are not able to talk to our computer)

MEMORY of ARDUINO UNO R3

  • Flash Memory: 13KB (used to store a number of instructions in code form)
  • SRAM of 2 KB
  • 1 KB EPROM

KEY FEATURES of ARDUINO UNO R3

  • 16 MHz crystal oscillator
  • Operating voltage is 5 V and it can be achieved by using a USB port or by using an external adaptor.
  • An external micro SD card is supported
  • This board comes with a built-in feature of voltage regulation i.e. when the device is connected to other external devices it keeps voltage under control thus preventing the board from damage.
  • Easy USB interface i.e. simply plug your external device with this port and your device is ready to use. This interface is also used to register your board as a virtual serial port on your computer and the advantage is that this type of serial communication setup is extremely easy and convenient.
  • 16 MHz clock makes it fast enough for most of the applications.
  • Onboard LED for easy and fast debugging of our code
  • Micro SD cards can be used if the functionality or nature of our project goes complex to make our board store more information.

ARDUINO UNO R3 PROGRAMMING

  • Like other development boards of Arduino family, also uses Arduino IDE software to make sketches (Arduino programs are called sketches)
  • Sketches that are developed on Arduino IDE can be transferred directly by connecting our computer via USB port.
  • IDE is compatible with Linux, MAC or Windows operating system
  • Programming languages C and C++ are used
  • Thousands of preloaded sketches are easily available which we can use in order to get Arduino to do something according to our requirements.

CODING of ARDUINO UNO R3

Important things to remember when you are going to write code:

  • The sketch is an Arduino program
  • All code in Arduino sketch is going to process from top to bottom
  • These sketches are usually broken in 10 parts:
  • It starts with a header that explains what we are going to do in our sketch
  • Global variables are defined
  • Constant names are assigned to different Arduino pins
  • Initial variables are set and configured
  • After initial variables setting, it begins with a setup routine in which we set initial conditions of variables if needed
  • Run preliminary code that we want to run only once and at this point serial communication is initiated for running serial monitor
  • From the setup function, we jump to loop routine and keep in mind that it is the main routine of sketch
  • The loop routine will be executed over and over as long as our sketch continues to run.
  • After loop routine, many user-defined functions are listed and these functions work only when they are called in setup or loop function
  • Execution of these user-defined functions depends on whether they are called in setup function or loop function. Whenever a user-defined function is called it goes to that function execute it and then comes back to the exact next line of sketch from which that function was called.
  • Only 2 parts of the sketch are mandatory i.e. loop and setup function

SHIELDS COMPATIBILITY of ARDUINO UNO

In order to make our Arduino UNO perform a special function, we will use shields (an expensive adaptor plugged over top of the board). A countless number of Arduino shields are available. The selection of shields depends on the requirement and functionality of our project. Before buying any shield, make sure that the operating voltage of that shield doesn’t exceed the voltage of our board otherwise it will destroy our board. So after making sure of its operating voltage we can use any one of the shields available in the market. Some of the important shields which are widely used are listed below:

  • Ethernet Shield
  • Wireless Shield
  • Motor Shield

APPLICATIONS of ARDUINO UNO

As discussed earlier, the most economical and inexpensive board is Arduino UNO. So a wide number of applications are supported by this board. Some important applications that are developed using Arduino UNO are listed below

  • Embedded system
  • Robotics
  • Motion control rig
  • DC motor control ( using H-bridge )
  • Ardupilot ( drone hardware and software )
  • Defense and security defense
  • Parking lot counter
  • Home and industrial automation
  • Game Duino ( for creating retro 2D games )
  • Water quality testing
  • Data loggers ( used in scientific research )
  • Xoscillo ( open-source oscilloscope )
  • Count down timer for traffic lights

2.The Arduino UNO R4 Minima

Description

The Arduino UNO R4 Minima (from here on referred to as UNO R4 Minima) is the first UNO board to feature a 32-bit microcontroller. It features a RA4M1 series microcontroller from Renesas (R7FA4M1AB3CFM#AA0), which embeds a 48 MHz Arm® Cortex®-M4 microprocessor. The UNO R4’s memory is larger than its predecessors, with 256 kB flash, 32 kB SRAM and 8 kB data memory (EEPROM).

The UNO R4 Minima board’s operating voltage is 5 V, making it hardware compatible with UNO form factor accessories with the same operating voltage. Shields designed for previous UNO revisions are therefore safe to use with this board but are not guaranteed to be software compatible due to the change of microcontroller.

Features

R7FA4M1AB3CFM#AA0

48 MHz Arm® Cortex®-M4 microprocessor with a floating point unit (FPU) 5 V operating voltage

Real-time Clock (RTC) Memory Protection Unit (MPU) Digital Analog Converter (DAC)

Memory

256 kB Flash Memory 32 kB SRAM

8 kB Data Memory (EEPROM)

Pins

14x digital pins (GPIO), D0-D13 6x analog input pins (ADC), A0-A5

6x PWM pins: D3,D5,D6,D9,D10,D11

Peripherals

Capacitive Touch Sensing Unit (CTSU) USB 2.0 Full-Speed Module (USBFS) up to 14-bit ADC

up to 12-bit DAC

Operational Amplifier (OPAMP)

Power

Recommended input voltage (VIN) is 6-24 V 5 V operating voltage

Barrel jack connected to VIN pin Power via USB-C® at 5 V

Schottky diodes for overvoltage and reverse polarity protection

Communication

1x UART (pin D0, D1)

1x SPI (pin D10-D13, ICSP header) 1x I²C (pin A4, A5, SDA, SCL)

1x CAN (pin D4, D5, external transceiver is required)

1  : The Board

Application Examples

The UNO R4 Minima is the first UNO series 32-bit development board, being previously based on 8-bit AVR microcontrollers. There are thousands of guides, tutorials and books written about the UNO board, where UNO R4 Minima continues its legacy.

The board features the standard 14 digital I/O ports, 6 analog channels, dedicated pins for I²C, SPI and UART connections. Compared to its predecessors the board has a much larger memory: 8 times more flash memory (256 kB) and 16 times more SRAM (32 kB).

Entry level projects: If this is your first project within coding and electronics, the UNO R4 Minima is a good fit. It is easy to get started with and has a lot of online documentation (both official + 3rd party).

Easy power management: the UNO R4 has barrel jack connector and supports input voltages from 6-24 V. This connector is widely popular and removes the need for additional circuitry required to stepping down the voltage.

Cross compatibility: the UNO form factor automatically makes it compatible with hundreds of existing third-party shields and other accessories.

Related Products

UNO R3

UNO R3 SMD UNO R4 WiFi

Rating

2  : Recommended Operating Conditions

SymbolDescriptionMinTypMaxUnit
VINInput voltage from VIN pad / DC Jack67.024V
VUSBInput voltage from USB connector4.85.05.5V
TOPOperating Temperature-402585°C

Functional Overview

Arduino R4 Minima Block Diagram

4  : Board Topology

    Front View

Top View of Arduino UNO R4 Minima

Ref.DescriptionRef.Description
U1R7FA4M1AB3CFM#AA0 Microcontroller ICJ4DC Jack
U2ISL854102FRZ-T Buck ConverterDL1LED TX (serial transmit)
PB1RESET ButtonDL2LED RX (serial receive)
JANALOGAnalog input/output headersDL3LED Power
JDIGITALDigital input/output headersDL4LED SCK (serial clock)
J1ICSP header (SPI)D2PMEG6020AELRX Schottky Diode
J2SWD/JTAG ConnectorD3PMEG6020AELRX Schottky Diode
J3CX90B-16P USB-C® connectorD4PRTR5V0U2X,215 ESD Protection

Back View

Back View of Arduino R4 Minima

5  : Microcontroller (R7FA4M1AB3CFM#AA0)

The UNO R4 Minima is based on the 32-bit RA4M1 series microcontroller, R7FA4M1AB3CFM#AA0, from Renesas, which uses a 48 MHz Arm® Cortex®-M4 microprocessor with a floating point unit (FPU).

On the UNO R4 Minima, the operating voltage is fixed at 5 V to be fully retro compatible with shields, accessories & circuits originally designed for older UNO revisions.

The R7FA4M1AB3CFM#AA0 features:

256 kB flash / 32 kB SRAM / 8 kB data flash (EEPROM) Real-time Clock (RTC)

4x Direct Memory Access Controller (DMAC) up to 14-bit ADC

up to 12-bit DAC OPAMP

1x CAN bus

6  : USB Connector

The UNO R4 Minima has one USB-C® port, used to power and program your board as well as sending & receiving serial communication.

Note: You should not power the board with more than 5 V via the USB-C® port.

7  : Digital Analog Converter (DAC)

The UNO R4 Minima has a DAC with up to 12-bit resolution attached to the A0 analog pin. A DAC is used to convert a digital signal to an analog signal.

8  : Power Options

Power can either be supplied via the VIN pin, the barrel jack, or via USB-C® connector. If power is supplied via VIN, the ISL854102FRZ buck converter steps the voltage down to 5 V.

The VUSB, barrel jack connector and VIN pins are connected to the ISL854102FRZ buck converter, with Schottky diodes in place for reverse polarity & overvoltage protection respectively.

Power via USB supplies about ~4.7 V (due to Schottky drop) to the RA4M1 microcontroller.

    Power Tree

Arduino UNO R4 Minima power tree.

Pin Voltage

The UNO R4 Minima operates on 5 V, as does all pins on this board except for the 3.3V pin. This pin draws power from the VCC_USB pin on the R7FA4M1AB3CFM#AA0, and is not connected to the buck converter.

Pin Current

The GPIOs on the R7FA4M1AB3CFM#AA0 microcontroller can handle up to 8 mA. Never connect devices that draw higher current directly to a GPIO.

In case you need to power external devices that require more power, e.g. servo motors, use an external power supply.

Mechanical Information

9 : Pinout

Pinout for UNO R4 Minima.

Analog

PinFunctionTypeDescription
1BOOTMDMode selection
2IOREFIOREFReference for digital logic V – connected to 5V
3ResetResetReset
4+3V3Power+3V3 Power Rail
5+5VPower+5V Power Rail
6GNDPowerGround
7GNDPowerGround
8VINPowerVoltage Input
9A0AnalogAnalog input 0 / DAC
10A1AnalogAnalog input 1 / OPAMP+
11A2AnalogAnalog input 2 / OPAMP-
12A3AnalogAnalog input 3 / OPAMPOut
13A4AnalogAnalog input 4 / I²C Serial Datal (SDA)
14A5AnalogAnalog input 5 / I²C Serial Clock (SCL)

Digital

PinFunctionTypeDescription
1SCLDigitalI²C Serial Clock (SCL)
2SDADigitalI²C Serial Datal (SDA)
3AREFDigitalAnalog Reference Voltage
4GNDPowerGround
5D13/SCKDigitalGPIO 13 / SPI Clock
6D12/CIPODigitalGPIO 12 / SPI Controller In Peripheral Out
7D11/COPIDigitalGPIO 11 (PWM) / SPI Controller Out Peripheral In
8D10/CSDigitalGPIO 10 (PWM) / SPI Chip Select
9D9DigitalGPIO 9 (PWM~)
10D8DigitalGPIO 8
11D7DigitalGPIO 7
12D6DigitalGPIO 6 (PWM~)
13D5/CANRX0DigitalGPIO 5 (PWM~) / CAN Transmitter (TX)
14D4/CANTX0DigitalGPIO 4 / CAN Receiver (RX)
15D3DigitalGPIO 3 (PWM~)
16D2DigitalGPIO 2
17D1/TX0DigitalGPIO 1 / Serial 0 Transmitter (TX)
18D0/TX0DigitalGPIO 0 / Serial 0 Receiver (RX)

ICSP

PinFunctionTypeDescription
1CIPOInternalController In Peripheral Out
2+5VInternalPower Supply of 5 V
3SCKInternalSerial Clock
4COPIInternalController Out Peripheral In
5RESETInternalReset
6GNDInternalGround

SWD/JTAG

PinFunctionTypeDescription
1+5VInternalPower Supply of 5V
2SWDIOInternalData I/O pin
3GNDInternalGround
4SWCLKInternalClock Pin
5GNDInternalGround
6NCInternalNot connected
7RXInternalSerial Receiver
8TXInternalSerial Transmitter
9GNDInternalGround
10NCInternalNot connected

3.The Arduino UNO R4 WiFi

Description

The Arduino® UNO R4 WiFi is the first UNO board to feature a 32-bit microcontroller and an ESP32-S3 Wi-Fi® module (ESP32-S3-MINI-1-N8). It features a RA4M1 series microcontroller from Renesas (R7FA4M1AB3CFM#AA0), based on a 48 MHz Arm® Cortex®-M4 microprocessor. The UNO R4 WiFi’s memory is larger than its predecessors, with 256 kB flash, 32 kB SRAM and 8 kB of EEPROM.
The RA4M1’s operating voltage is fixed at 5 V, whereas the ESP32-S3 module is 3.3 V. Communication between these two MCUs are performed via a logic level translator (TXB0108DQSR).

Features

The R7FA4M1AB3CFM#AA0,often referred to as RA4M1 in this datasheet,is the main MCU on the UNOR4WiFi, connected to all pin headers on the board as well as all communication buses.

Overview

48 MHzArm®Cortex®-M4 microprocessor with a floating point unit(FPU) 5 V operating voltage

Real-time Clock (RTC) MemoryProtectionUnit(MPU)

Digital-to-analog Converter (DAC)

Memory

256kB FlashMemory 32 kB SRAM

8 kB Data Memory (EEPROM)

Peripherals

CapacitiveTouch Sensing Unit(CTSU)

USB 2.0 Full-Speed Module (USBFS)

14-bit ADC

Up to 12-bit DAC

Operational Amplifier (OPAMP)

Power

Operating voltage for RA4M1 is 5 V

Recommended input voltage (VIN)is6-24V

Barrel jack connected to VIN pin (6-24 V)

Power via USB-C® at 5 V

Communication

1xUART(pinD0,D1)

1xSPI(pinD10-D13,ICSPheader)

1x I2C (pin A4, A5, SDA, SCL)

1x CAN (pin D4, D5, external transceiver is required)

TheESP32-S3-MINI-1-N8isthesecondaryMCUwithabuilt-inantennaforWi-Fi®&Bluetooth®connectivity.This module operates on 3.3 V and communicates with the RA4M1 using a logic level translator (TXB0108DQSR).

Overview

Xtensa® dual-core 32-bit LX7 microprocessor

3.3 V operating voltage

40 MHz crystal oscillator

Wi-Fi®

Wi-Fi®support with 802.11b/g/n standard(Wi-Fi®4)

Bit rate at up to 150 Mbps

2.4 GHz band

Bluetooth®

Bluetooth® 5

ESP32-S3-MINI-1-N8 datasheet

1 : TheBoard

ApplicationExamples

The UNO R4 WiFi is part of the first UNO series of 32-bit development boards, being previously based on 8-bit AVR microcontrollers. There are thousands of guides, tutorials and books written about the UNO board, where the UNO R4 WiFi continues its legacy.The board features 14 digital I/O ports, 6 analog channels, dedicated pins for I2C, SPI and UART connections. It has asignificantly larger memory: 8 times more flash memory (256 kB) and 16 times more SRAM (32 kB). With a 48 MHz clock speed, it is also 3x faster than its predecessors. In addition, it features an ESP32-S3 module for Wi-Fi® & Bluetooth® connectivity, as well as a built-in 12×8 LED matrix,making one of the most visually unique Arduino board to date. The LED matrix is fully programmable, where you can load anything from still frames to custom animations. Entry-level projects: If this is your first project within coding and electronics, the UNO R4 WiFi is a good fit. It is easy to get started with, and it has a lot of online documentation. Easy IoT applications: build projects without writing any networking code in the Arduino IoT Cloud. Monitor your board,connect it with other boards and services, and develop cool IoT projects.LED Matrix: the 12×8 LED matrix on the board can be used for showing animations, text scrolling, create mini-games and much more, being the perfect feature to give your project more personality.

Related Products

UNO R3

UNO R3 SMD

UNO R4 Minima

Rating

2  : RecommendedOperatingConditions

SymbolDescriptionMinTypMaxUnit
VINInput voltage from VIN pad / DC Jack67.024V
VUSBInput voltage from USB connector4.85.05.5V
TOPOperating Temperature-402585°C

Note:VD Dcontrols the logic level and is connected tothe 5V power rail. VAREF is for the analog logic.

Functional Overview

3  : BlockDiagram

Arduino R4 WiFi Block Diagram

4  : BoardTopology

FrontView

Top View of Arduino UNO R4 WiFi

Ref.Description
U1R7FA4M1AB3CFM#AA0Microcontroller IC
U2NLASB3157DFT2G Multiplexer
U3ISL854102FRZ-T Buck Converter
U4TXB0108DQSR logic level translator (5 V – 3.3 V)
U5SGM2205-3.3XKC3G/TR 3.3 V linear regulator
U6NLASB3157DFT2G Multiplexer
U_LEDMATRIX12×8 LED Red Matrix
M1ESP32-S3-MINI-1-N8
PB1RESET Button
JANALOGAnalog input/output headers
JDIGITALDigital input/output headers
JOFFOFF,VRTCheader
J1CX90B-16P USB-C® connector
J2SM04B-SRSS-TB(LF)(SN) I2C connector
J3ICSP header (SPI)
J5DC Jack
J6ESP header
DL1LED TX (serial transmit)
DL2LED RX (serial receive)
DL3LED Power (green)
DL4LED SCK (serial clock)
Ref.Description
D1PMEG6020AELRX Schottky Diode
D2PMEG6020AELRX Schottky Diode
D3PRTR5V0U2X,215ESD Protection

5  : Microcontroller(R7FA4M1AB3CFM#AA0)

The UNO R4 WiFi is based on the32-bit RA4M1 series microcontroller, R7FA4M1AB3CFM#AA0, from Renesas,which uses a 48 MHz Arm® Cortex®-M4 microprocessor with a floating point unit (FPU).TheoperatingvoltagefortheRA4M1isfixedat5Vastobehardwarecompatiblewithshields,accessories&circuits based on previous Arduino UNO boards.

TheR7FA4M1AB3CFM#AA0features:

256 kB flash / 32 kB SRAM / 8 kB data flash (EEPROM)

Real-time Clock (RTC)

4xDirectMemoryAccessController(DMAC)

14-bit ADC

Upto12-bitDAC

OPAMP

CAN bus

6  : Wi-Fi®/Bluetooth®Module(ESP32-S3-MINI-1-N8)

TheWi-Fi®/Bluetooth®LE module on the UNO R4 WiFi is from the ESP32-S3SoCs .It features the Xtensa® dual-core 32-bit LX7 MCU, a built-in antenna and support for 2.4 GHz bands.

The ESP32-S3-MINI-1-N8 features:

Wi-Fi®4-2.4GHzband

Bluetooth® 5 LE support

3.3Voperatingvoltage

384 kB ROM

512kB SRAM

Up to 150 Mbps bit rate

This module acts as a secondary MCU on the UNO R4 WiFi,and communicates with the RA4M1 MCU using alogic level translator. Note that this module operates on 3.3 V as opposed to the RA4M1’s 5 V operating voltage.

ESP Header

ESPheader.

The header located close to the RESET button can be used to access the ESP32-S3 module directly. The pins accessible are:

ESP_IO42– MTMS debugging (Pin 1)

ESP_IO41– MTDI debugging (Pin 2)

ESP_TXD0-Serial Transmit(UART)(Pin3)

ESP_DOWNLOAD– boot (Pin 4)

ESP_RXD0-Serial Receive(UART)(Pin 5)

GND– ground (Pin 6)

ESPheader(schematic)

USB Bridge

When programming the UNO R4 WiFi,the RA4M1 MCU is programmed via the ESP32-S3 module by default.TheU2 and U6 switches can switch the USB communication to go directly to the RA4M1 MCU, by writing a high state to the P408pin (D40).

SolderingtogethertheSJ1padspermanentlysetstheUSBcommunicationdirectlytotheRA4M1,bypassingtheESP32- S3.

7  : USBConnector

TheUNOR4WiFihasoneUSB-C®port,usedtopowerandprogramyourboardaswellassending&receivingserial communication.

Note:The board should not be powered with more than 5 V via the USB-C® port.

8 : LEDMatrix

TheUNOR4WiFifeaturesa12x8matrixofredLEDs(U_LEDMATRIX),connectedusingthetechniqueknownas charlieplexing.

The following pins on the RA4M1 MCU are used for the matrix:

P003 P004 P011 P012 P013 P015 P204 P205 P206 P212 P213

LEDmatrixschematics.

TheseLEDscanbeaccessedasanarray,usingaspecificlibrary.Seethemappingbelow:

LEDmatrixnumbermapping.

Thismatrixcanbeusedforanumberofprojectsandprototypingpurposes,andsupportsanimation,simplegame designs and scrolling text among other things.

9  : DigitalAnalogConverter(DAC)

TheUNOR4WiFihasaDACwithupto12-bitresolutionattachedtotheA0analogpin.ADACisusedtoconverta digital signal to an analog signal.

The DAC can be used for signal generation for e.g. audio applications, like generating and altering sawtooth wave.

10 : I2CConnector

TheI2CconnectorSM04B-SRSS-TB(LF)(SN)isconnectedtoasecondaryI2Cbusontheboard.Notethatthis connector is powered via 3.3 V.

I2Cconnector.

This connector also shares the following pin connections:

JANALOG header

A4 A5

JDIGITALheader

SDA SCL

Note:asA4/A5isconnectedtothemainI2Cbus,theseshouldnotbeusedasADCinputswheneverthebusisinuse. You can however connect I2C devices to each of these pins and connectors simultaneously.

11 : PowerOptions

PowercaneitherbesuppliedviatheVINpin,orviaUSB-C®connector.IfpowerissuppliedviaVIN,theISL854102FRZ buck converter steps the voltage down to 5 V.

BothVUSBandVINpinsareconnectedtotheISL854102FRZbuckconverter,withSchottkydiodesinplaceforreverse polarity & overvoltage protection respectively.

Power via USB supplies about ~4.7 V (due to Schottky drop) to the RA4M1 MCU.

Thelinearregulator(SGM2205-3.3XKC3G/TR)converts5VfromeitherthebuckconverterorUSB,andprovides3.3V to a number of components, including the ESP32-S3 module.

PowerTree

ArduinoUNOR4WiFipowertree.

PinVoltage

ThegeneraloperatingvoltageforUNOR4WiFiis5 V,howevertheESP32-S3module’soperatingvoltageis3.3 V.

Note:ItisveryimportantthatESP32-S3’spins(3.3V)donotcomeincontactwithanyoftheRA4M1’spins(5V),asthis may damage the circuits.

Pin Current

TheGPIOsontheR7FA4M1AB3CFM#AA0microcontrollercansafelyhandleupto8mAofcurrent.Neverconnect devices that draw higher current directly to a GPIO as this may damage the circuit.

Forpowering e.g. servo motors, always use an external power supply.

Mechanical Information

12 : Pinout

PinoutforUNOR4WiFi.

 Analog

PinFunctionTypeDescription
1BOOTNCNot Connected
2IOREFIOREFReference for digital logic V – connected to 5 V
3ResetResetReset
4+3V3Power+3V3 Power Rail
5+5VPower+5V Power Rail
6GNDPowerGround
7GNDPowerGround
8VINPowerVoltageInput
9A0AnalogAnalog input 0 / DAC
10A1AnalogAnalog input 1 / OPAMP+
11A2AnalogAnalog input 2 / OPAMP-
12A3AnalogAnalog input 3 / OPAMPOut
13A4AnalogAnalog input 4 / I2C Serial Datal (SDA)
14A5AnalogAnalog input 5 / I2C Serial Clock (SCL)

Digital

PinFunctionTypeDescription
1SCLDigitalI2C Serial Clock (SCL)
2SDADigitalI2C Serial Datal (SDA)
3AREFDigitalAnalog Reference Voltage
4GNDPowerGround
5D13/SCK/CANRX0DigitalGPIO 13 / SPI Clock / CAN Receiver (RX)
6D12/CIPODigitalGPIO 12 / SPI Controller In Peripheral Out
7D11/COPIDigitalGPIO11(PWM)/SPIControllerOutPeripheralIn
8D10/CS/CANTX0DigitalGPIO10(PWM)/ SPIChipSelect /CANTransmitter (TX)
9D9DigitalGPIO 9 (PWM~)
10D8DigitalGPIO 8
11D7DigitalGPIO 7
12D6DigitalGPIO 6 (PWM~)
13D5DigitalGPIO 5 (PWM~)
14D4DigitalGPIO 4
15D3DigitalGPIO 3 (PWM~)
16D2DigitalGPIO 2
17D1/TX0DigitalGPIO1/Serial0Transmitter(TX)
18D0/TX0DigitalGPIO 0 / Serial 0 Receiver(RX)

OFF

PinFunctionTypeDescription
1OFFPowerFor controlling power supply
2GNDPowerGround
1VRTCPowerBatteryconnectiontopowerRTC only

ICSP

PinFunctionTypeDescription
1CIPOInternalController In Peripheral Out
2+5VInternalPower Supply of 5 V
3SCKInternalSerial Clock
4COPIInternalController Out Peripheral In
5RESETInternalReset
6GNDInternalGround

Difference :

The main difference is the 32-bit 48 MHz Arm Cortex-M4 microcontroller in R4 compared to the 8-bit 16 MHz ATmega328p microcontroller in R3. R4 also has a USB-C connector, RTC, real DAC channel, and support for CAN protocol. The WiFi version of R4 has an additional onboard 12×8 LED matrix and one Qwiic connector.

DifferenceUNO R3UNO R4 Wifi
Microcontroller8-bit ATmega328p32-bit Renesas RA4M1
Clock frequency16 MHz48 MHz
Wireless moduleNOESP32-S3 Mini
Memory2KB SRAM, 32KB FLASH,
1KB EEPROM
256 kB Flash, 32 kB RAM
ESP: 384 kB ROM, 512 kB SRAM
RTCNOYES
Input voltage (VIN)6-20 V6-24 V
Digital I/O pins14
Analog input pins6(10-bit)6(14-bit)
PWM pins6(12-bit)6(12-bit)
DAC pinNO1(12-bit)
CAN BusNO1
Dimensions68.58 x 53.44 mm68.6 x 53.4 mm
Weight25g——–
Price1200/- rupees2000/-rupees

Leave a comment

Blog at WordPress.com.

Up ↑

Design a site like this with WordPress.com
Get started