Arduino GIGA R1 WiFi Pinout: STM32H747 GPIO, ADC, DAC, CAN, UART and USB

Arduino GIGA R1 WiFi pinout guide: 76 GPIO, 12 analog inputs, dual DAC, four UARTs, three I2C buses, two SPI buses, CAN, USB host/device, camera/display connectors, dual-core STM32H747 and 3.3 V limits.

The Arduino GIGA R1 WiFi is Arduino’s most capable board in the classic Mega/Due-sized form factor.

It is built around the:

and adds:

The first rule to remember is:

GIGA R1 WiFi Quick Pinout

Function Pins / interface
Main digital GPIO D0-D53
Camera connector GPIO D54-D67
Display connector GPIO D68-D75
Total dedicated digital GPIO 76
Analog inputs A0-A11
Analog pins usable digitally A0-A7 = D76-D83
Pure analog pins A8-A11
DAC DAC0 = D84, DAC1 = D85
Main UART D0 RX, D1 TX
Additional UARTs D14-D19
Main I2C D20 SDA, D21 SCL
Second header I2C D8 SCL2, D9 SDA2
Dedicated I2C D101 SCL1, D102 SDA1
Main-header SPI D10 CS, D11 COPI, D12 CIPO, D13 SCK
Dedicated SPI header D89 CIPO, D90 COPI, D91 SCK
CAN D93 CAN RX, D94 CAN TX
Logic voltage 3.3 V
VIN 6-24 V

Dual-Core STM32H747XI

The GIGA uses the same high-end STM32H747 family found in Arduino’s Portenta H7 ecosystem.

It contains two application cores:

The M7 is the high-performance core and includes:

  • double-precision FPU;
  • L1 cache;
  • DSP instructions;
  • high memory bandwidth.

The M4 can run simultaneously for secondary or real-time tasks.

Dual-Core Programming

The two cores can be programmed independently.

A typical division might be:

Arduino provides inter-core RPC mechanisms, so the two cores can exchange data and commands.

Memory

The STM32H747 itself provides:

The GIGA adds:

This makes the board suitable for:

  • large framebuffers;
  • camera images;
  • LVGL graphics;
  • audio buffers;
  • large JSON documents;
  • high-rate data logging;
  • MicroPython;
  • machine-learning workloads.

76 Dedicated GPIO

Arduino’s official specification lists:

These are organised as:

This is why GIGA can retain the familiar large Arduino format while still exposing substantially more I/O than Mega or Due.

D0-D21 Main Header Mapping

Arduino pin STM32 pin Default / notable function
D0 PB7 RX
D1 PA9 TX
D2 PA3 PWM / GPIO
D3 PA2 PWM / GPIO
D4 PJ8 PWM / GPIO
D5 PA7 PWM / GPIO
D6 PD13 PWM / GPIO
D7 PB4 PWM / GPIO
D8 PB8 PWM / SCL2
D9 PB9 PWM / SDA2
D10 PK1 PWM / SPI CS
D11 PJ10 PWM / SPI COPI
D12 PJ11 PWM / SPI CIPO
D13 PH6 PWM / SPI SCK
D14 PG14 TX3
D15 PC7 RX3
D16 PH13 TX2
D17 PI9 RX2
D18 PD5 TX1
D19 PD6 RX1
D20 PB11 SDA
D21 PH4 SCL

D22-D53 Extended Main Headers

The lower Mega-style headers provide the remaining general-purpose digital pins:

These pins are especially useful for large:

  • relay panels;
  • parallel interfaces;
  • large control systems;
  • custom shields.

Camera Connector: D54-D67

The 20-pin camera connector exposes:

plus:

  • 3.3 V;
  • GND;
  • SCL1;
  • SDA1.

The current Arduino camera documentation lists support for modules including:

  • OV7670;
  • OV7675;
  • GC2145;
  • Himax HM01B0.

Camera Pin Mapping

The camera data/clock pins are arranged as:

with D66/D67 duplicated on the camera connector as documented by Arduino.

Display Connector: D68-D75

The display connector exposes:

plus DSI high-speed differential signals:

This is used by boards such as the Arduino GIGA Display Shield.

Analog Inputs: A0-A11

The board provides:

but there is an important distinction.

A0-A7 Also Work as Digital Pins

The current Arduino core maps:

These can therefore be used through normal digital GPIO APIs when analog input is not required.

A8-A11 Are Analog-Only

Arduino’s official pinout explicitly warns:

are:

with no normal GPIO peripheral assignment.

The current core maps them to:

Do not assume every GIGA analog pin can be used digitally.

ADC Resolution

The current Arduino core defines a default:

for normal analog reads.

The STM32H747 ADC hardware is more advanced than that simple Arduino default and supports higher-performance operating modes, DMA and advanced triggering.

For general sketches, however, treating:

is the clearest Arduino-level model.

Dual DAC Outputs

GIGA provides two true analogue outputs:

The STM32H7 DAC hardware supports up to:

and these same channels are also routed to the onboard 3.5 mm audio jack.

Audio Jack

The 3.5 mm connector is wired to:

This makes the GIGA unusually convenient for:

  • synthesizers;
  • audio effects;
  • waveform generation;
  • microphone acquisition;
  • DSP experiments.

PWM

The full Arduino pinout clearly marks:

as the familiar PWM-capable header pins.

One source discrepancy is worth noting:

  • Arduino’s current store page lists 12 PWM pins;
  • the current datasheet feature table lists 13 PWM pins.

For a specific design, use the current full pinout/core peripheral mapping rather than relying only on the headline count.

Four Hardware UARTs

GIGA provides four hardware serial interfaces.

Header pair Function
D0 / D1 RX / TX
D19 / D18 RX1 / TX1
D17 / D16 RX2 / TX2
D15 / D14 RX3 / TX3

In the current Arduino Mbed variant, the hardware serial objects are exposed separately from the USB CDC console.

That means GIGA can keep USB serial debugging while still providing multiple independent TTL UART links.

Three I2C Buses

The current board core defines three hardware I2C buses.

Main bus

Second header bus

Dedicated camera/auxiliary bus

The D101/D102 pair appears on the dedicated header/camera ecosystem rather than the normal D0-D53 side headers.

Why Three I2C Buses Are Useful

You can separate:

  • camera control;
  • display peripherals;
  • sensors;
  • slow devices;
  • devices with conflicting fixed addresses.

without immediately adding an I2C multiplexer.

Two SPI Buses

The GIGA current Arduino core defines:

Main-header SPI

Dedicated SPI header

The dedicated SPI header provides a second independent bus for high-speed peripherals.

CIPO and COPI Terminology

Arduino now uses:

instead of the older:

terminology on current pinout diagrams.

CAN / FDCAN

The board exposes:

An external CAN transceiver is required.

The STM32H747 provides modern FDCAN-capable hardware, but the physical bus still requires the transceiver that converts logic TX/RX into differential:

USB-C Device Port

The USB-C connector is used for:

  • power;
  • programming;
  • serial communication;
  • HID device operation.

The board acts as a USB peripheral through this connector.

USB-A Host Port

The dedicated USB-A connector provides USB host capability.

It can be used for supported devices such as:

  • keyboards;
  • USB mass storage;
  • HID devices.

The current variant identifies:

USB Host Power Limit

The official pinout documents approximately:

as the USB-A host current limit.

The board cannot itself be powered through the USB-A host connector.

Wi-Fi and Bluetooth

GIGA uses the Murata 1DX radio module for:

The board does not have an onboard PCB antenna.

Arduino supplies an external antenna that connects through the:

connector.

Do Not Forget the External Antenna

Arduino’s pinout explicitly warns that:

That is an easy setup mistake if the board is being used for the first time.

Secure Element

The board includes:

for protected cryptographic functions and credential storage.

This is useful for:

  • TLS credentials;
  • device identity;
  • secure Arduino Cloud connections;
  • authentication.

RGB LED

The current core defines:

and:

Use the symbolic LED names rather than hard-coded internal pin numbers.

RTC and VRTC

GIGA includes an RTC in the STM32H747.

The board exposes:

so a small backup battery can keep the RTC domain powered while the main board is off.

Arduino explicitly notes that:

OFF Pin

The board also exposes:

which can be shorted to ground to shut the board down.

This is useful in battery-powered or controlled-shutdown systems.

BOOT0 Button

The board includes a:

button connected to the STM32 boot configuration path.

It can also be repurposed as a user button in applications where the boot behaviour is understood.

Logic Voltage

The operating I/O level is:

Do not connect a 5 V output directly to a GIGA input.

This is especially important when reusing:

  • Mega shields;
  • 5 V UART hardware;
  • 5 V I2C modules;
  • legacy relay boards;
  • older LCDs.

5 V Power Pin Does Not Mean 5 V GPIO

GIGA exposes a:

for peripherals.

That does not make the STM32H747 GPIO a 5 V logic interface.

Keep the distinction clear:

GPIO Current Limits

The current Arduino store page recommends:

The official full pinout additionally states:

For real designs, treat the GPIO as logic-level signals and use external drivers for meaningful loads.

Do Not Drive Relays or Motors Directly

Use:

  • MOSFETs;
  • transistors;
  • ULN2803;
  • motor-driver ICs;
  • dedicated LED drivers.

The fact that GIGA has 76 GPIO does not mean those pins can directly supply large aggregate load current.

Input Voltage

The board accepts:

This is wider than the traditional recommended range of Mega/Due and makes GIGA easier to integrate into 12 V and some 24 V control systems.

Board Size

The GIGA retains approximately the same large Arduino footprint:

as Mega and Due.

This was intentional so custom large-format shields can be adapted more easily.

But Mechanical Compatibility Is Not Electrical Compatibility

Before plugging an old Mega shield into GIGA, verify:

  • logic levels;
  • I2C pull-ups;
  • SPI routing;
  • interrupt assumptions;
  • current consumption;
  • library support.

Quick GPIO Reference

Quick Communications Reference

Final Thoughts

The Arduino GIGA R1 WiFi is effectively Arduino’s modern replacement philosophy for large-format boards such as Mega and Due.

Its biggest strengths are:

  • dual-core STM32H747;
  • 76 dedicated GPIO;
  • 12 analog inputs;
  • two true DAC outputs;
  • four UARTs;
  • three I2C buses;
  • two SPI buses;
  • CAN/FDCAN;
  • USB host and device;
  • Wi-Fi/BLE;
  • camera/display connectors;
  • large onboard RAM and Flash.

The most important pinout rules are:

For projects that need the familiar Mega/Due form factor but far more processing, memory and connectivity, GIGA R1 WiFi is one of the most capable Arduino boards available.

Share your love