Arduino Due vs GIGA R1 WiFi: Cortex-M3 vs Dual-Core STM32H747

Arduino Due vs GIGA R1 WiFi comparison: 84 MHz SAM3X Cortex-M3 versus dual-core STM32H747 at 480/240 MHz, including GPIO, memory, ADC/DAC, USB host/device, CAN, Wi-Fi, BLE, camera/display support and 3.3 V compatibility.

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:

The GIGA R1 WiFi is based on:

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:

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:

GIGA:

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:

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:

GIGA:

That is already more than ten times the internal RAM before GIGA’s external memory is considered.

GIGA Adds 8 MB SDRAM

The onboard:

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:

all available to applications.

GIGA provides:

This makes room for:

  • large firmware;
  • assets;
  • filesystems;
  • graphics;
  • large libraries;
  • secondary core firmware.

GPIO Count

Due exposes:

GIGA exposes:

so GIGA expands the already-large Due footprint even further.

Analog Inputs

Both boards expose:

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:

with:

Arduino defaults to 10-bit reads for compatibility, but:

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:

GIGA:

so both can generate true analog outputs without an external DAC.

Due DAC Has a Restricted Voltage Range

Due’s DAC output is approximately:

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:

This makes either board suitable for:

  • GPS;
  • RS-485;
  • serial displays;
  • motor controllers;
  • modems;
  • industrial instruments.

I2C

Due provides:

GIGA provides:

so GIGA offers one additional independent bus.

SPI

Due exposes one main SPI interface through its dedicated central SPI header.

GIGA provides:

which is useful when separating high-bandwidth devices such as:

  • display;
  • SD card;
  • ADC;
  • radio;

CAN

The Due’s SAM3X8E contains:

and the board exposes CAN-related pins.

GIGA exposes:

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:

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:

for devices such as:

  • keyboards;
  • USB storage;
  • HID peripherals.

Wi-Fi and Bluetooth

This is one of the biggest generational differences.

Due has:

GIGA includes a Murata 1DX module providing:

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:

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:

is particularly important for large framebuffers.

Due can drive displays, but complex graphical HMIs quickly run into memory limits.

Audio

GIGA includes a:

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:

GIGA uses:

so low-level Due code is not source-compatible with GIGA.

High-Level Arduino Code Ports More Easily

Code using:

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:

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.

Which Is Better for CPU Performance?

GIGA, by a huge margin.

The:

combination is far beyond Due’s 84 MHz Cortex-M3.

Which Is Better for Memory-Heavy Work?

GIGA.

It combines:

versus:

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:

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

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:

For detailed Due pin information, see our Arduino Due pinout guide. The GIGA R1 WiFi pinout guide appears later in this Arduino expansion series.

Share your love