The Arduino Due and Arduino GIGA R1 WiFi are both large-format 3.3 V Arduino boards aimed at projects that need more I/O and more capability than a standard UNO.
They are also separated by an enormous generational gap.
The Due is based on:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
SAM3X8E Arm Cortex-M3 84 MHz 512 kB Flash 96 kB SRAM 54 digital I/O 12 analog inputs 2 DAC 4 UARTs 2 I2C buses native USB OTG CAN hardware |
The GIGA R1 WiFi is based on:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
STM32H747XI Cortex-M7 up to 480 MHz Cortex-M4 up to 240 MHz 2 MB internal Flash 1 MB internal RAM 16 MB external QSPI Flash 8 MB external SDRAM 76 GPIO Wi-Fi Bluetooth LE USB-C device USB-A host CAN camera/display connectors |
The practical question is not whether GIGA is faster. It clearly is.
The more useful question is whether Due still offers enough for your application, or whether GIGA’s much larger memory, dual-core processing and integrated connectivity justify the move.
Quick Comparison
| Feature | Arduino Due | Arduino GIGA R1 WiFi |
|---|---|---|
| Main MCU | SAM3X8E | STM32H747XI |
| CPU | Arm Cortex-M3 | Arm Cortex-M7 + Cortex-M4 |
| Clock | 84 MHz | M7 480 MHz, M4 240 MHz |
| Logic voltage | 3.3 V | 3.3 V |
| Internal Flash | 512 kB | 2 MB |
| Internal RAM | 96 kB | 1 MB |
| External Flash | None onboard | 16 MB QSPI |
| External SDRAM | None onboard | 8 MB |
| Digital I/O | 54 | 76 |
| Analog inputs | 12 | 12 |
| PWM | 12 | Arduino documentation varies between 12 and 13 depending on source/revision |
| DAC | 2 | 2 |
| UART | 4 | 4 |
| I2C | 2 | 3 |
| SPI | 1 main interface | 2 |
| CAN | 2 controllers in SAM3X8E | 1 FDCAN interface exposed |
| Wi-Fi | No | Yes, 802.11 b/g/n |
| Bluetooth | No | BLE |
| USB device | Native USB OTG + programming port | USB-C peripheral/HID |
| USB host | Native USB OTG | Dedicated USB-A host |
| Camera connector | No | Yes |
| Display connector | No | Yes |
| Secure element | No | ATECC608A |
Both Boards Are 3.3 V
This is one reason the Due-to-GIGA comparison is cleaner than Mega-to-GIGA.
Both boards operate their main I/O at:
|
1 2 3 4 |
3.3 V |
so neither should be treated as 5 V tolerant.
That means many 3.3 V sensors and modern peripherals can move between the two platforms with less electrical redesign than a migration from Mega 2560.
But Shield Compatibility Still Needs Checking
The GIGA deliberately keeps the large Arduino form factor associated with Mega and Due.
That helps mechanically, but it does not guarantee that every Due shield will work unchanged.
Check:
- which pins the shield uses;
- whether the library supports STM32H747;
- SPI/I2C assumptions;
- timing dependencies;
- current requirements;
- interrupt behaviour.
CPU Performance
Due:
|
1 2 3 4 5 6 |
Cortex-M3 84 MHz single core |
GIGA:
|
1 2 3 4 5 6 7 8 |
Cortex-M7 up to 480 MHz Cortex-M4 up to 240 MHz |
The GIGA’s high-performance M7 alone is in a completely different class.
It also adds a second M4 core for parallel workloads.
Dual-Core Processing
The STM32H747 lets you split tasks between the two cores.
A typical architecture could be:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
M7 → networking → graphics → filesystem → heavy calculations M4 → real-time control → sensor acquisition → motor loops |
Arduino’s RPC framework allows the cores to exchange messages and data.
Due has no equivalent second application core.
Floating Point and DSP
The GIGA’s Cortex-M7 and Cortex-M4 both include floating-point hardware, while the M7 also brings a much more advanced cache and DSP-oriented execution environment.
This matters for:
- signal processing;
- audio;
- control;
- sensor fusion;
- machine learning;
- graphics.
The Due’s Cortex-M3 is still much more capable than an 8-bit AVR, but it lacks the same modern floating-point/DSP hardware.
Internal RAM: 1 MB vs 96 kB
Due:
|
1 2 3 4 |
96 kB SRAM |
GIGA:
|
1 2 3 4 |
1 MB internal RAM |
That is already more than ten times the internal RAM before GIGA’s external memory is considered.
GIGA Adds 8 MB SDRAM
The onboard:
|
1 2 3 4 |
8 MB SDRAM |
dramatically expands what the board can handle.
It enables:
- large framebuffers;
- camera frames;
- graphics libraries;
- audio buffering;
- large data sets;
- larger MicroPython heaps;
- ML workloads.
Due simply does not have comparable external RAM.
Flash Storage
Due provides:
|
1 2 3 4 |
512 kB Flash |
all available to applications.
GIGA provides:
|
1 2 3 4 5 6 |
2 MB internal Flash + 16 MB external QSPI Flash |
This makes room for:
- large firmware;
- assets;
- filesystems;
- graphics;
- large libraries;
- secondary core firmware.
GPIO Count
Due exposes:
|
1 2 3 4 |
54 digital I/O |
GIGA exposes:
|
1 2 3 4 |
76 GPIO |
so GIGA expands the already-large Due footprint even further.
Analog Inputs
Both boards expose:
|
1 2 3 4 |
12 analog inputs |
but the GIGA’s STM32H747 provides a much more advanced ADC subsystem.
Due’s SAM3X ADC is still useful and supports 12-bit hardware resolution.
Due ADC
The Due’s analog inputs are:
|
1 2 3 4 |
A0-A11 |
with:
|
1 2 3 4 |
12-bit ADC hardware |
Arduino defaults to 10-bit reads for compatibility, but:
|
1 2 3 4 |
analogReadResolution(12); |
enables the full 12-bit result.
GIGA ADC
The STM32H747 ADC subsystem is more sophisticated and supports higher-resolution modes and much higher-performance acquisition.
For applications involving:
- fast sampling;
- DMA;
- multiple synchronized channels;
- advanced triggering;
GIGA is the stronger platform.
Both Boards Have Two DAC Outputs
Due:
|
1 2 3 4 5 |
DAC0 DAC1 |
GIGA:
|
1 2 3 4 5 |
DAC0 DAC1 |
so both can generate true analog outputs without an external DAC.
Due DAC Has a Restricted Voltage Range
Due’s DAC output is approximately:
|
1 2 3 4 |
0.55 V to 2.75 V |
rather than a full 0-3.3 V rail-to-rail swing.
GIGA’s STM32H7 analogue subsystem is more modern, but the exact usable voltage range still depends on board circuitry and supply/reference conditions.
UART Count Is a Draw
Both provide:
|
1 2 3 4 |
4 hardware UARTs |
This makes either board suitable for:
- GPS;
- RS-485;
- serial displays;
- motor controllers;
- modems;
- industrial instruments.
I2C
Due provides:
|
1 2 3 4 |
2 I2C/TWI buses |
GIGA provides:
|
1 2 3 4 |
3 I2C buses |
so GIGA offers one additional independent bus.
SPI
Due exposes one main SPI interface through its dedicated central SPI header.
GIGA provides:
|
1 2 3 4 |
2 SPI interfaces |
which is useful when separating high-bandwidth devices such as:
- display;
- SD card;
- ADC;
- radio;
CAN
The Due’s SAM3X8E contains:
|
1 2 3 4 |
2 CAN controllers |
and the board exposes CAN-related pins.
GIGA exposes:
|
1 2 3 4 |
1 CAN / FDCAN interface |
and also requires an external CAN transceiver.
Due Can Actually Win on Raw CAN Controller Count
If you specifically need two independent classic CAN controllers, Due’s SAM3X8E hardware is interesting.
However, GIGA’s newer STM32H7 FDCAN hardware and much stronger CPU/memory system usually make it the more capable overall CAN platform.
Native USB
Due has two USB connectors:
- Programming USB via ATmega16U2;
- Native USB directly connected to the SAM3X8E.
The Native port supports:
- CDC serial;
- keyboard/mouse;
- USB host;
- USB OTG use.
GIGA USB Architecture
GIGA separates the roles more cleanly:
|
1 2 3 4 5 6 7 8 9 10 |
USB-C → programming → communication → HID/peripheral USB-A → host |
This makes host/peripheral usage easier to understand physically.
USB Host
Both boards can act as USB hosts.
Due does it through the Native USB OTG port.
GIGA provides a dedicated:
|
1 2 3 4 |
USB-A host connector |
for devices such as:
- keyboards;
- USB storage;
- HID peripherals.
Wi-Fi and Bluetooth
This is one of the biggest generational differences.
Due has:
|
1 2 3 4 5 |
no onboard Wi-Fi no onboard Bluetooth |
GIGA includes a Murata 1DX module providing:
|
1 2 3 4 5 |
2.4 GHz Wi-Fi 802.11 b/g/n Bluetooth Low Energy |
Connected Applications
GIGA can directly implement:
- MQTT;
- HTTP/HTTPS;
- Arduino Cloud;
- BLE peripherals;
- wireless dashboards;
- remote monitoring.
Due requires an external network module or shield.
Secure Element
GIGA includes:
|
1 2 3 4 |
ATECC608A |
for:
- protected key storage;
- device identity;
- TLS credentials;
- secure authentication.
Due has no dedicated secure element.
Camera Support
GIGA includes a dedicated camera connector.
Arduino documents support for camera modules such as:
- OV7670;
- OV7675;
- GC2145;
- HM01B0.
Due has no comparable camera connector and nowhere near the same frame-buffering capacity.
Display Support
GIGA provides a dedicated display connector plus enough RAM to make graphical applications practical.
The:
|
1 2 3 4 |
8 MB SDRAM |
is particularly important for large framebuffers.
Due can drive displays, but complex graphical HMIs quickly run into memory limits.
Audio
GIGA includes a:
|
1 2 3 4 |
3.5 mm audio jack |
connected to analogue/audio functions.
Due has DAC outputs, but no dedicated onboard audio connector.
MicroPython
GIGA can run MicroPython and Arduino workloads across its dual-core environment.
Arduino has demonstrated configurations where one core runs Arduino while the other runs MicroPython.
Due does not offer the same dual-runtime flexibility.
Software Core
Due uses the classic Arduino:
|
1 2 3 4 |
SAM core |
GIGA uses:
|
1 2 3 4 |
Arduino Mbed OS core |
so low-level Due code is not source-compatible with GIGA.
High-Level Arduino Code Ports More Easily
Code using:
|
1 2 3 4 5 6 7 8 9 |
digitalRead() digitalWrite() analogRead() Wire SPI Serial |
is generally the easiest to migrate.
Code using SAM3X-specific:
- registers;
- timers;
- CAN libraries;
- USB internals;
may need substantial changes.
Shield Compatibility
Because both boards are:
|
1 2 3 4 |
3.3 V large-format Arduino boards |
the electrical transition is easier than moving from Mega 2560.
But libraries and pin mappings still matter.
A Due-specific shield that depends on:
- SAM3X register access;
- specific SPI routing;
- Due timer behaviour;
- Due Native USB internals;
may not work on GIGA without modification.
Which Is Better for Raw I/O Count?
GIGA.
|
1 2 3 4 5 6 |
76 GPIO vs 54 digital I/O |
Which Is Better for CPU Performance?
GIGA, by a huge margin.
The:
|
1 2 3 4 5 6 |
480 MHz Cortex-M7 + 240 MHz Cortex-M4 |
combination is far beyond Due’s 84 MHz Cortex-M3.
Which Is Better for Memory-Heavy Work?
GIGA.
It combines:
|
1 2 3 4 5 6 |
1 MB internal RAM + 8 MB SDRAM |
versus:
|
1 2 3 4 |
96 kB SRAM |
on Due.
Which Is Better for USB Host?
Both can do it.
GIGA’s dedicated USB-A host connector is more convenient.
Which Is Better for Four Serial Devices?
Both.
Each provides:
|
1 2 3 4 |
4 UARTs |
Which Is Better for Dual CAN?
Due has an interesting hardware advantage because SAM3X8E contains two CAN controllers.
For general modern CAN/FDCAN applications, however, GIGA’s stronger processing and newer peripheral architecture may still be preferable.
Which Is Better for Wi-Fi or BLE?
GIGA.
Due needs external wireless hardware.
Which Is Better for Camera or Display Projects?
GIGA by a very large margin.
It was explicitly designed with:
- camera connector;
- display connector;
- large SDRAM;
- high-performance dual-core CPU.
Which Is Better for Existing Due Hardware?
Due may still be the safer choice if your project already depends on:
- Due-specific shields;
- SAM3X libraries;
- Due CAN libraries;
- Native USB behaviour;
- stable deployed firmware.
A working system does not become obsolete simply because a faster board exists.
Which Is Better for a New Large 3.3 V Arduino Project?
GIGA is usually the stronger foundation because it offers:
- far more CPU performance;
- far more RAM;
- more GPIO;
- Wi-Fi/BLE;
- USB host and device connectors;
- camera/display support;
- secure element;
- modern Mbed OS environment.
Decision Table
| Requirement | Better fit |
|---|---|
| Existing Due shield/software | Arduino Due |
| Simpler single-core SAM3X project | Arduino Due |
| Two CAN controllers in MCU | Arduino Due |
| More GPIO | GIGA R1 WiFi |
| Much faster CPU | GIGA R1 WiFi |
| Dual-core workloads | GIGA R1 WiFi |
| More internal RAM | GIGA R1 WiFi |
| External SDRAM | GIGA R1 WiFi |
| External Flash | GIGA R1 WiFi |
| Wi-Fi | GIGA R1 WiFi |
| BLE | GIGA R1 WiFi |
| Secure element | GIGA R1 WiFi |
| Dedicated USB host connector | GIGA R1 WiFi |
| Camera support | GIGA R1 WiFi |
| Advanced display/HMI | GIGA R1 WiFi |
| Four UARTs | Both |
| Two DAC outputs | Both |
| 3.3 V logic | Both |
Quick 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 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
Arduino Due SAM3X8E Cortex-M3 84 MHz 3.3 V logic 512 kB Flash 96 kB SRAM 54 digital I/O 12 analog inputs 12 PWM 2 DAC 4 UART 2 I2C 1 SPI 2 CAN controllers in MCU Native USB OTG Programming USB via ATmega16U2 no Wi-Fi no Bluetooth Arduino GIGA R1 WiFi STM32H747XI Cortex-M7 480 MHz Cortex-M4 240 MHz 3.3 V logic 2 MB internal Flash 1 MB internal RAM 16 MB QSPI Flash 8 MB SDRAM 76 GPIO 12 analog inputs 2 DAC 4 UART 3 I2C 2 SPI 1 exposed CAN/FDCAN interface Wi-Fi BLE USB-C device/HID USB-A host camera connector display connector audio jack ATECC608A |
Final Thoughts
Arduino Due was a major leap when it introduced 32-bit ARM processing to the Arduino ecosystem.
It still offers a useful combination of:
- 54 digital I/O;
- 96 kB SRAM;
- dual DAC;
- four UARTs;
- two I2C buses;
- CAN;
- native USB.
GIGA R1 WiFi takes the same large-board philosophy much further.
It adds:
- dual-core STM32H747;
- 480 MHz M7 performance;
- 1 MB internal RAM;
- 8 MB SDRAM;
- 16 MB QSPI Flash;
- 76 GPIO;
- Wi-Fi/BLE;
- USB host/device;
- camera/display connectors;
- secure element.
The simplest decision rule is:
|
1 2 3 4 5 6 7 8 |
Existing Due project or need SAM3X-specific behaviour? → Arduino Due Starting a new high-performance large-format 3.3 V project? → GIGA R1 WiFi |
For detailed Due pin information, see our Arduino Due pinout guide. The GIGA R1 WiFi pinout guide appears later in this Arduino expansion series.