The Arduino MKR WAN 1310 is a compact LoRa and LoRaWAN board based on the SAMD21 Cortex-M0+ processor.
Its architecture combines:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
SAMD21G18A → 48 MHz Cortex-M0+ → runs your Arduino sketch → GPIO, ADC, DAC, timers, USB and serial buses Murata CMWX1ZZABZ → STM32L0 co-processor W25Q16 → 2 MB external SPI Flash ATECC508 → secure key storage |
The board is aimed at low-power remote nodes that need to send relatively small amounts of data over very long distances.
Quick MKR WAN 1310 Specifications
| Feature | MKR WAN 1310 |
|---|---|
| Main MCU | SAMD21G18A Cortex-M0+ |
| Clock | 48 MHz |
| Logic voltage | 3.3 V |
| Internal Flash | 256 KB |
| SRAM | 32 KB |
| External Flash | 2 MB W25Q16 SPI Flash |
| Analog inputs | 7, A0-A6 |
| ADC | 8/10/12-bit Arduino modes; SAMD21 ADC hardware up to 12-bit native |
| DAC | 1 × 10-bit DAC on A0 |
| PWM | 13 documented PWM-capable pins |
| UART | 1 external hardware UART |
| SPI | 1 external SPI bus |
| I2C | 1 external I2C bus |
| USB | Full-Speed USB device / embedded-host capable |
| LoRa module | Murata CMWX1ZZABZ |
| LoRa radio | Semtech SX1276 |
| Radio bands | 433 / 868 / 915 MHz depending region/configuration |
| Secure element | ATECC508 |
| Battery | Rechargeable Li-Ion/Li-Po, 3.7 V |
| GPIO current | 7 mA maximum per pin |
| Size | 67.64 × 25 mm |
3.3 V Logic Only
The most important electrical rule is:
|
1 2 3 4 |
MKR WAN 1310 GPIO = 3.3 V |
Arduino explicitly states that the board:
|
1 2 3 4 |
is NOT 5 V tolerant |
and warns that directly applying 5 V signals can damage it.
This matters when connecting older:
- 5 V sensors;
- UNO-style modules;
- RS-232 adapters;
- 5 V I2C breakouts;
- legacy SPI devices.
The 5 V Pin Does Not Mean 5 V Logic
The board exposes a 5 V/VUSB-related power connection, but that does not change the SAMD21 I/O voltage.
Always treat signal pins as:
|
1 2 3 4 |
3.3 V only |
GPIO Current Limit
The official full pinout specifies:
|
1 2 3 4 |
7 mA maximum per I/O pin |
with additional source/sink limits for pin groups.
Use a transistor, MOSFET or driver IC for:
- relays;
- motors;
- solenoids;
- high-current LEDs;
- buzzers requiring significant current.
Main Digital Pin Mapping
The main edge exposes:
|
1 2 3 4 |
D0-D14 |
with the familiar MKR/SAMD21 mapping:
| Arduino pin | SAMD21 pin | Main functions |
|---|---|---|
| D0 | PA22 | GPIO / PWM |
| D1 | PA23 | GPIO / PWM |
| D2 | PA10 | GPIO / PWM |
| D3 | PA11 | GPIO / PWM |
| D4 | PB10 | GPIO / PWM |
| D5 | PB11 | GPIO / PWM |
| D6 | PA20 | GPIO / PWM / LED_BUILTIN |
| D7 | PA21 | GPIO / PWM |
| D8 | PA16 | GPIO / PWM / SPI COPI |
| D9 | PA17 | GPIO / SPI SCK |
| D10 | PA19 | GPIO / CIPO |
| D11 | PA08 | GPIO / I2C SDA |
| D12 | PA09 | GPIO / PWM / I2C SCL |
| D13 | PB23 | GPIO / UART RX |
| D14 | PB22 | GPIO / UART TX |
Analog Inputs A0-A6
The board exposes seven analogue inputs:
|
1 2 3 4 5 6 7 8 9 10 |
A0 A1 A2 A3 A4 A5 A6 |
These also have digital aliases:
|
1 2 3 4 5 6 7 8 9 10 |
A0 = D15 A1 = D16 A2 = D17 A3 = D18 A4 = D19 A5 = D20 A6 = D21 |
| Analog pin | Digital alias | SAMD21 pin | Main function |
|---|---|---|---|
| A0 | D15 | PA02 | ADC / DAC0 |
| A1 | D16 | PB02 | ADC |
| A2 | D17 | PB03 | ADC |
| A3 | D18 | PA04 | ADC / PWM |
| A4 | D19 | PA05 | ADC / PWM |
| A5 | D20 | PA06 | ADC |
| A6 | D21 | PA07 | ADC |
ADC Resolution
Arduino lists analogue input modes of:
|
1 2 3 4 5 6 |
8-bit 10-bit 12-bit |
and the SAMD21 hardware ADC is a 12-bit converter.
For 12-bit reads:
|
1 2 3 4 |
analogReadResolution(12); |
Then a normal:
|
1 2 3 4 |
analogRead(A1) |
returns approximately:
|
1 2 3 4 |
0-4095 |
A0 Is a True DAC Output
A0 is connected to:
|
1 2 3 4 |
DAC0 |
and provides a genuine:
|
1 2 3 4 |
10-bit analogue output |
rather than PWM.
DAC Example
|
1 2 3 4 5 6 7 8 9 10 |
void setup() { analogWriteResolution(10); } void loop() { analogWrite(A0, 512); } |
This is useful for:
- control voltages;
- waveform generation;
- slow analogue references;
- audio experiments.
PWM Pins
Arduino currently lists 13 PWM-capable pins:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
D0 D1 D2 D3 D4 D5 D6 D7 D8 D10 D12 A3 / D18 A4 / D19 |
D9, D11, D13 and D14 are not listed among the default PWM pins.
Hardware UART
The external hardware UART is:
|
1 2 3 4 5 6 7 8 9 10 |
D13 → RX → PB23 D14 → TX → PB22 |
Use:
|
1 2 3 4 |
Serial1 |
USB Serial vs Hardware UART
Because SAMD21 has native USB:
|
1 2 3 4 5 6 7 8 |
Serial → USB CDC Serial1 → D13/D14 |
This lets the board talk to a PC while simultaneously communicating with a GPS, sensor or another MCU over the hardware UART.
I2C Pins
The main I2C bus is:
|
1 2 3 4 5 6 7 8 9 10 |
D11 → SDA → PA08 D12 → SCL → PA09 |
Use:
|
1 2 3 4 |
#include <Wire.h> |
SPI Pins
The user-facing SPI bus is:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
D8 → COPI / MOSI → PA16 D9 → SCK → PA17 D10 → CIPO / MISO → PA19 |
Use:
|
1 2 3 4 |
#include <SPI.h> |
LoRa Hardware Is Separate from Your External SPI Bus
The Murata CMWX1ZZABZ radio is connected internally to the SAMD21 through dedicated control, SPI and I2C signals.
The current Arduino datasheet documents internal radio connections including:
|
1 2 3 4 5 6 7 8 9 10 |
PA12 PA13 PA14 PA15 PA27 PA28 PB09 |
plus shared internal control signals.
These internal connections are not the same as the normal external D8/D9/D10 SPI header.
Murata CMWX1ZZABZ LoRa Module
The wireless module contains:
|
1 2 3 4 5 6 |
The STM32L0 runs Arduino-provided radio firmware while the SX1276 handles the LoRa physical layer.
Supported LoRa Frequency Regions
Arduino lists carrier-frequency support around:
|
1 2 3 4 5 6 |
433 MHz 868 MHz 915 MHz |
depending on regional regulations and network configuration.
Always select the correct frequency plan for the country where the device will operate.
LoRa vs LoRaWAN
The board can be used for:
|
1 2 3 4 |
LoRa point-to-point |
or:
|
1 2 3 4 5 6 7 |
LoRaWAN → gateway → network server → application/cloud |
LoRa describes the radio modulation, while LoRaWAN adds the network protocol and device-management layer.
Arduino LoRa Libraries
Depending on the application, common Arduino software paths include:
- MKRWAN;
- LoRa/point-to-point libraries;
- Arduino Cloud integrations;
- The Things Network workflows.
The Things Network
Arduino explicitly supports using the MKR WAN 1310 with public LoRaWAN infrastructure such as:
|
1 2 3 4 |
The Things Network |
where a gateway forwards radio packets to a network server.
Antenna Connection
LoRa communication requires an appropriate antenna matched to the intended band.
Arduino sells/bundles the board for use with an external antenna and lists operation in the regional LoRa bands.
Do not assume a random Wi-Fi/Bluetooth antenna is suitable for:
|
1 2 3 4 5 6 |
433 MHz 868 MHz 915 MHz |
2 MB External Flash
The MKR WAN 1310 includes a:
|
1 2 3 4 5 6 7 |
W25Q16 16 Mbit 2 MB SPI Flash |
This is separate from the SAMD21’s:
|
1 2 3 4 |
256 KB internal program Flash |
What the External Flash Is For
The extra storage is useful for:
- offline sensor logging;
- configuration files;
- queueing measurements while the network is unavailable;
- staging OTA/configuration data;
- temporary local data storage.
External Flash Is Not Extra SRAM
Do not confuse:
|
1 2 3 4 |
2 MB external Flash |
with:
|
1 2 3 4 |
RAM |
The main SAMD21 still has only:
|
1 2 3 4 |
32 KB SRAM |
for live variables, stacks and buffers.
ATECC508 Secure Element
The board includes an:
|
1 2 3 4 |
ATECC508 |
crypto co-processor used for:
- secure key storage;
- device identity;
- certificates;
- cryptographic operations.
This is especially useful for connected IoT devices where private credentials should not be stored as plain Flash data.
Native USB
The SAMD21 provides:
|
1 2 3 4 |
Full-Speed USB |
with device and embedded-host capability.
The board can therefore support:
- USB CDC serial;
- USB HID;
- other supported native USB classes.
USB Host Mode Has a Hardware Requirement
Arduino’s current datasheet notes that host mode is available only when:
|
1 2 3 4 5 6 |
the board is powered through VUSB and the VUSB jumper is shorted |
So do not assume USB host works automatically from every board-power configuration.
Li-Po Battery Support
The board includes charging support for a:
|
1 2 3 4 |
single-cell 3.7 V Li-Ion / Li-Po battery |
Arduino’s current store specification recommends at least:
|
1 2 3 4 |
1024 mAh |
capacity.
Why Battery Capacity Matters
The charger has a relatively high minimum charging current compared with tiny wearable batteries.
Do not attach a very small Li-Po without verifying that the battery’s permitted charge current is compatible with the onboard charger.
Low-Power Improvements over MKR WAN 1300
The WAN 1310 revised the power architecture compared with the older WAN 1300.
Arduino specifically highlights:
- new battery charger;
- improved power control;
- 2 MB external Flash;
- much lower properly configured standby consumption.
Arduino quotes figures as low as roughly:
|
1 2 3 4 |
104 µA |
under suitable low-power configuration.
Power Sources
The board can be powered through:
- USB;
- VIN/VUSB header power;
- Li-Po battery.
The board power architecture is designed around approximately:
|
1 2 3 4 5 6 |
5 V board supply → regulator/charger → 3.3 V logic rail |
Do Not Treat MKR VIN Like UNO VIN
Classic UNO users should not assume:
|
1 2 3 4 |
9 V or 12 V |
is appropriate simply because an UNO accepts it.
MKR boards use a different power architecture.
LED_BUILTIN
The user LED is:
|
1 2 3 4 5 |
D6 → PA20 |
which matches other MKR-family boards.
External Interrupts
Arduino’s current product specification lists interrupt-capable pins including:
|
1 2 3 4 5 6 7 8 9 10 11 12 |
D0 D1 D4 D5 D6 D7 D8 A1 / D16 A2 / D17 |
Use:
|
1 2 3 4 |
digitalPinToInterrupt() |
rather than hard-coding SAMD interrupt channel numbers.
SWD Debugging
The board provides SWD debug/programming pads for advanced development.
Typical signals are:
|
1 2 3 4 5 6 7 |
SWDIO SWCLK GND 3.3 V |
Common Mistake 1: Applying 5 V to GPIO
The MKR WAN 1310 is explicitly:
|
1 2 3 4 |
not 5 V tolerant |
Use level shifting where necessary.
Common Mistake 2: Using the Wrong LoRa Frequency Plan
LoRa operation is region-regulated.
A configuration intended for:
|
1 2 3 4 |
915 MHz |
is not automatically appropriate in a region using:
|
1 2 3 4 |
868 MHz |
plans.
Common Mistake 3: Confusing LoRa with LoRaWAN
Point-to-point LoRa does not require a LoRaWAN gateway.
LoRaWAN does.
Choose the radio stack based on the network architecture.
Common Mistake 4: Treating the 2 MB Flash as Program Memory
Your normal SAMD21 sketch still targets:
|
1 2 3 4 |
256 KB internal Flash |
The W25Q16 is external storage.
Common Mistake 5: Forgetting the Antenna
The LoRa module is not useful without an antenna appropriate to the operating band.
Fit the correct antenna before normal radio operation.
Common Mistake 6: Assuming USB Host Works in Every Power Mode
Current Arduino documentation requires:
|
1 2 3 4 5 6 |
VUSB power + VUSB jumper shorted |
for host mode.
Common Mistake 7: Drawing Too Much GPIO Current
The board-level maximum is:
|
1 2 3 4 |
7 mA per GPIO |
so use external drivers for loads.
Quick Digital Reference
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
D0 PA22 PWM D1 PA23 PWM D2 PA10 PWM D3 PA11 PWM D4 PB10 PWM D5 PB11 PWM D6 PA20 PWM / LED D7 PA21 PWM D8 PA16 PWM / COPI D9 PA17 SCK D10 PA19 CIPO D11 PA08 SDA D12 PA09 PWM / SCL D13 PB23 RX D14 PB22 TX |
Quick Analog Reference
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
A0 / D15 PA02 ADC DAC0 A1 / D16 PB02 ADC A2 / D17 PB03 ADC A3 / D18 PA04 ADC PWM A4 / D19 PA05 ADC PWM A5 / D20 PA06 ADC A6 / D21 PA07 ADC |
Quick Communications Reference
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
USB serial: Serial Hardware UART: D13 RX D14 TX Serial1 I2C: D11 SDA D12 SCL SPI: D8 COPI D9 SCK D10 CIPO LoRa: Murata CMWX1ZZABZ STM32L0 + SX1276 433 / 868 / 915 MHz regional configuration required |
Final Thoughts
The MKR WAN 1310 combines a familiar SAMD21 Arduino with a purpose-built low-power LoRa subsystem.
Its strongest features are:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
48 MHz SAMD21 256 KB program Flash 32 KB SRAM 2 MB external data Flash native USB true DAC LoRa / LoRaWAN radio secure element Li-Po charging low-power design |
The most important pinout rules are:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
logic → 3.3 V only UART → D13/D14 I2C → D11/D12 SPI → D8/D9/D10 ADC → A0-A6 DAC → A0 GPIO current → 7 mA maximum |
For remote telemetry, the key design question is not simply whether the board can send LoRa packets. It is choosing the correct regional frequency plan, antenna, power strategy and network architecture.
For another SAMD21 MKR board with Wi-Fi instead of LoRa, see our MKR WiFi 1010 pinout guide. For a storage/audio-oriented SAMD21 board, see the MKR Zero pinout guide.