Arduino MKR WiFi 1010 Pinout and Features

The Boards of the Arduino MKR family are mainly used as a solution for many IoT applications. The Arduino MKR WiFi 1010 is able to develop applications which are based on WiFi as well as IoT. 

This board is favorable for many applications related to the usage of WiFi or IoT because it consumes less energy and works efficiently. 

Arduino MKR WiFi 1010 is capable of producing a “Bluetooth Low Energy” or BLE device available in a cell phone. 

In this article, we will be discussing about Arduino MKR WiFI 1010 board layout, its specifications, its pinout and its pin description, but before going any further if you have not checked out about Arduino Nano 33 BLE we will suggest you to check it out first. 

Let’s get started:-

Board Layout of Arduino MKR WiFi 1010:-


Arduino MKR WiFi 1010 is a microcontroller board of Arduino MKR Family which is based on Arm Cortex-M0 32-bit SAMD21 processor Microcontroller. This board is powerful and consumes less energy than any other board.


The Arduino MKR WiFi 1010 has a Crypto chip which is an ECC508 crypto-chip. This crypto chip is used for security purposes like for encryption and decryption of digital signals during transmission.  One more thing which makes this crypto chip a great choice is that the ECC508 is the first crypto chip which has integrated ECDH or Elliptic Curve Diffie–Hellman key agreement. It is also used in building a sensor network for home automation and other applications.

This cryptochip can protect storage up to 16 keys, Data or Certificates.

Bluetooth And WiFi Module:-

The Arduino MKR Wifi 1010 consists of a bluetooth as well as Wifi module which is the Nina W102 uBlox module. This module is used to provide bluetooth and wifi connections to the board. With the help of this module we can connect the board with the peripherals wirelessly and with ease.

USB Connector:- 

The Arduino MKR WiFi 1010 consists of a Micro USB B port for supplying operating voltage to the board. The value of this operating voltage will be around 5 volts.

Clock Speed:- 

The clock frequency of the processor of the WiFi 1010 is 48 MHz while the frequency of Real Time Clock or RTC is 32.768 kHz. The clock frequency is helpful in synchronizing the data transmission. 


The microprocessor of Arduino MKR WiFi 1010 has a total of 256 KB of Flash memory which is used to store the arduino program and 32 KB of SRAM which ensures the manipulation of variables. 

The Arduino MKR WiFI 1010 does not have any EEPROM Memory available. 

Specifications of Arduino MKR WiFi 1010:-

The Specifications are listed below:-

NameArduino MKR WiFi 1010
MicrocontrollerSAMD21 Cortex -M0+ 32 bit low power ARM MCU
USB connectorMicro USB (USB-B)
Built-in LED Pin6
Digital I/O Pins8
Analog Input Pins7 (ADC 8/10/12 bit)
Analog Output Pins1 (DAC 10 bit)
PWM Pins13 (0 – 8, 10, 12, A3, A4)
External interrupts10 (0, 1, 4, 5, 6, 7, 8 ,9, A1, A2)
Bluetooth®Nina W102 uBlox module
Wi-FiNina W102 uBlox module
Secure elementATECC508A
I/O Voltage3.3V
Input Voltage (nominal)5-7V
DC Current per I/O pin7 mA
Supported batteryLi-Po Single Cell, 3.7V, 1024mAh Minimum
Battery connectorJST PH
Processor48 MHz
RTC32.768 kHz
Memory in processor256KB Flash, 32KB SRAM
Memory in bluetooth and WiFi module448 KB ROM, 520 KB SRAM, 2MB Flash
Weight32 g
Width25 mm
Length61.5 mm

Pinout Description OF Arduino MKR WiFi 1010:-

Power Pins:-

  1. Vin:- 

This pin is used for supplying input voltage of 5 volts to the board. Input voltage is the direct current supply voltage.This input voltage of 5 volts is used to regulate the integrated circuits(IC’s) of the Arduino
MKR wifi 1010 board which are used in the connections. When this pin is in use the USB pin is disconnected and vice versa. 

Vin is also known as the primary voltage source  on the Arduino MKR WiFi 1010 board.

S.NOPin NumberTypePin Name
1VINPowerSupply voltage
  1. 5v pin:- 

The 5v pin is used as the output for external components. The output is 5v. This pin is used only when the board is powered by USB or the power source of the 5v pin is a USB connector.

S.NOPin NumberTypePin Name
2+5VOutput or Input+5V (Input from External Power Supply
  1. 3V3 Pin:- 

The 3V3 pin is used as an output pin of the Arduino MKR WiFi 1010 board. This pin generates the output voltage of 3.3 volts.

S.NOPin NumberTypePin Name
33V3Output+3.3V Output 
  1. Reset Pin:- 

The RESET pin is used to reset the board. For this purpose we have to pull down this pin to LOW.

S.NOPin NumberTypePin Name
4RESETInputReset ( Active Low)
  1. GND pin:- 

This pin is used as the ground pin of the board. 

S.NOPin NumberTypePin Name
5GNDPowerSupply Ground

Digital Pins:- 

Digital I/O Pins:- 

There are a total of 22 digital input/output pins available on the Arduino MKR Wifi 1010 board. The digital pins are used as an input or output according to the requirement. The digital pins are only able to read two values which are :-

  1. High
  2. Low 

We can also use 1 for high state and 0 for low state. When these pins receive 0V they will get into LOW state i,r. 0 and when they receive 5V they get into HIGH state i,e. 1.

The digital pins on the Arduino MKR WiFi 1010 are from D0 to D21

S.NOPin NumberTypePin Name
1D0I/ODigital I/O Pin
2D1I/ODigital I/O Pin
3D2I/ODigital I/O Pin
4D3I/ODigital I/O Pin
5D4I/ODigital I/O Pin
6D5I/ODigital I/O Pin
7D6I/ODigital I/O Pin
8D7I/ODigital I/O Pin
9D8I/ODigital I/O Pin
10D9I/ODigital I/O Pin
11D10I/ODigital I/O Pin
12D11I/ODigital I/O Pin
13D12I/ODigital I/O Pin
14D13I/ODigital I/O Pin
15D14I/ODigital I/O Pin
16 D15I/ODigital I/O Pin
17D16I/ODigital I/O Pin
18D17I/ODigital I/O Pin
19D18I/ODigital I/O Pin
20D19I/ODigital I/O Pin
21D20I/ODigital I/O Pin
22D21I/ODigital I/O Pin

Analog Pins:-  

There are a total of 7 analog pins available on the Arduino MKR WiFi 1010 board. Analog Input Pins are used to take the signal from analog sensors and then convert it into a digital value. The input of the analog pins are not limited to 0 and 1 like digital pins. These pins can receive any value. The analog pins of the board are from Pin A0 to Pin A06. 

Analog pins of Arduino MKR WiFi 1010 Board  are as follows:-

S.NOPin NumberTypePin Name
1A0InputAnalog Input Channel 0
2A1InputAnalog Input Channel 1
3A2InputAnalog Input Channel 2
4A3InputAnalog Input Channel 3
5A4InputAnalog Input Channel 4
6A5InputAnalog Input Channel 5
7A6InputAnalog Input Channel 6

PWM Pins:-  

There are 13 pins available on Arduino MKR WiFi 1010 board which are also known as Pulse Width Modulation pins. The work of these PWM pins is to convert the digital inputs to analog output. These pins provide 8-bit PWM output with the analogWrite () function.The PWM pins of arduino MKR WiFi 1010 board are 0,1,2,3,4,5,6,7,8,10,12,A3 and A4.

S.NOPin NumberTypePin Name
1D0/PWMI/ODigital I/O Pin Pulse Width Modulation Pin
2D1/PWMI/ODigital I/O Pin Pulse Width Modulation Pin
3D2/PWMI/ODigital I/O Pin Pulse Width Modulation Pin
4D3/PWMI/ODigital I/O Pin Pulse Width Modulation Pin
5D4/PWMI/ODigital I/O Pin Pulse Width Modulation Pin
6D5/PWMI/ODigital I/O Pin Pulse Width Modulation Pin
7D6/PWMI/ODigital I/O Pin Pulse Width Modulation Pin
8D7/PWMI/ODigital I/O Pin Pulse Width Modulation Pin
9D8/PWMI/ODigital I/O Pin Pulse Width Modulation Pin
10D10/PWMI/ODigital I/O Pin Pulse Width Modulation Pin
11D12/PWMI/ODigital I/O Pin Pulse Width Modulation Pin
12A3/PWMInputAnalog Input Channel 3 Pulse Width Modulation Pin
13A4/PWMInputAnalog Input Channel 4 Pulse Width Modulation Pin

Communication Pins of Arduino MKR WiFi 1010:-

  1. SPI Pins:-

The Arduino MKR WiFi 1010 board contains the “Serial – Peripheral Communication Protocol” or SPI. The SPI protocol is used to develop communication between the controller device and its peripheral devices. Three pins are needed for SPI communication protocol which are :- 

  • MISO – It stands for Master Input/Slave Output. This data line sends data to the master device. This pin is also known as CIPO or “Controller In Peripheral Out.”
  • MOSI – It stands for Master Output/Slave Input. This data line is used for sending data to slaves/peripheral devices. This pin is also known as COPI or “Controller Out Peripheral In.”
  • SCK – This pin is used to synchronize the data transfer between master and slave device.

SPI pins on the board are D08 which is used as MOSI pin, D09 which is used as SCK pin and D10 which is used as MISO pin.

S.NOPin NumberTypePin Name
1D08/MOSII/OMaster Out Slave In
2D09/SCKOutputClock From Master To Slave
3D10/MISOI/OMaster In Slave Out
  1. UART Pin:-

The Arduino MKR WiFi 1010 consists of a UART communication protocol which is used for serial communication of data. It needs two pins for the communication purpose which are Rx and TX.

  • Rx – This pin is used to transmit the serial data.
  • TX – This pin is used to receive the serial data.

UART pins on the board are D13 which act as RX pin and D14 which act as TX pin.

S.NOPin NumberTypePin Name
1D13/RXI/ODigital I/O Pin Serial RX Pin
2D14/TXI/ODigital I/O Pin Serial TX Pin
  1. I2C Pins:- 

The Arduino MKR WiFi 1010 board contains the I2C communication protocol. It stands for “Inter – Integrated Circuit.” It is a two wire serial communication protocol. It uses two pins for communication purposes. One of them is used to send data while the other pin is used to receive data. 

The two pins of the I2C protocol are “Serial Clock Pin(SCL)” and “Serial Data Pin(SDA)”.

  • SCL – It is defined as the line or pin which transfers the clock data. SCL pin is used to synchronize the shift of data in between two devices. This signal is generated by the master device.

It is a clock line.

  • SDA – It is defined as the line or pin which is used by slave devices to send and receive data. It is a data line.

I2C pins on the board are D11 which is SDA and D12 which is SCL.

S.NOPin NumberTypePin Name
1D11/SDAI/ODigital I/O Pin Serial Data Pin
2D12/SCLI/ODigital I/O Pin Serial Clock Pin


The use of the AREF pin is to provide the external reference voltage to the analog pins for the analog to digital conversion process.

S.NOPin NumberTypePin Name
1AREFInputADC reference

Leave a Comment