Arduino Portenta H7
A dual-core microcontroller board by Arduino featuring Remote Procedure Call mechanism allowing for programming with high-level languages and AI while performing low-latency operations on its customizable hardware.
Specifications
Dimensions | 25mm (W) x 66 mm (L) |
Microcontroller | STM32H747XI dual Cortex®-M7+M4 32bit low power Arm® MCU |
USB connector | USB-C |
Digital I/O Pins | 22 |
Analog input pins | 8 |
PWM pins | 10 |
Radio module | Murata 1DX dual WiFi 802.11b/g/n 65 Mbps and Bluetooth® 5.1 BR/EDR/LE |
Secure element | NXP SE0502 |
Communication | UART, I2C, SPI |
Circuit operating voltage | 3.3V |
Input voltage (VIN) | 5V |
DC Current per I/O Pin | 8 mA |
Clock speed | Main core: 480 MHz |
Second core: 240 MHz | |
Memory | ST STM32H747XI: 2MB Flash, 1MB RAM |
Supported Battery | Li-Po Single Cell, 3.7V, 700mAh Minimum (integrated charger) |
GPU | Chrom-ART graphical hardware Accelerator™ |
Camera Interface | 8-bit, up to 80 MHz |
Overview
Problem/Solution
Microcontrollers have the power to control a wide variety of machines, including life-support systems, spacecraft, aircraft, and even mobile phones. It is integrated into a system and manages a single function by deciphering data received and taking appropriate actions. A more powerful and customized microcontroller is required as the complexity and functionality of the device increases.
The production of specialized microcontrollers for unique devices is time and money inefficient. But microcontroller hardware and software now see a better route—thanks to open-source software. Numerous developers from all around the world supply these license-free codes that are not only available but also flexible enough, allowing users to modify them for the desired function.
Ranging from industrial use to demanding pro applications, the Portenta H7 has the traditional Arduino openness enhanced with a family 80-pin high-density connector. Following the Arduino MKR form factor, Portenta H7 can master machine learning by harnessing the power of its dual-core STM32H747 processor Cortex® M7 and a Cortex® M4. These cores communicate through the Remote Procedure Call mechanism for multitasking applications along with low latency sensor/actuator interaction. Portenta H7 grants several customization possibilities for tailoring board functions into specific applications suited to high-volume use cases.
Description
Special Configuration Request
Portenta H7 offers a highly configurable design, from memory to crypto chip, to the antenna, and more. These board configurations are up for purchase through the Arduino sales team, requiring only a minimum amount of orders. Standard board configurations include the barebones version Arduino Portenta H7-0000000 and the Arduino Portenta H7-15EUCWAD that features 8MB SDRAM, 16MB NOR Flash, 10/100 Ethernet Phy, USB HS, NXP SE050C2 Crypto, WiFi/BT Module, U.FL Antenna, and DisplayPort over USB-C.
Variants
Portenta H7 highlights several variants for every user preference. First is the Portenta H7 version with an NXP SE050C2 Security. Next is the cost-optimized Portenta H7 Lite, which suits best in complex environments devoid of radio communication. Developers can leverage computational power using the H7 Lite without the need for wireless connectivity, extra security features, and high-resolution video interference. The last variant, suited for industrial-strength solutions, is the Portenta H7 Lite Connected which fills the wireless connectivity gap between the other two variants. All of these variants have access to the ATECC608 Security, an 8 MB/16 MB Memory, and a 3.7V Li-Po single cell 700mAh battery.
Processors - Two Parallel Cores
H7’s dual-core STM32H747 processor boasts a Cortex M7 at 480MHz and a CortexM4 at 240 MHz. A hardware-assisted mailbox facilitates communication between the two cores. The same mailbox prompts Arduino’s implementation of Remote Procedure Call, which grants calling functions between processors seamlessly. Sharing all the in-chip peripherals, both processors can run Arduino sketches on top of the Arm® Mbed™ OS, Native Mbed™ applications, MicroPython, and TensorFlow™ Lite.
In any application combination, invoking synchronous or asynchronous API calls is possible, like extending Python language in Arduino-implemented functions upon parallel execution of another python function in the opposite core. In terms of power consumption, the processor has power modes that can abruptly switch from high to very low power configurations and vice versa—optimizing power usage when cores are idle.
Memory
The internal memory has a 2MB of flash with read-while-write support and a 1MB of RAM partitioned among 192 Kbytes of Tightly Coupled Memory for time-critical routines and 64 Kbytes for instruction. Another 128 Kbytes contain data, a user SRAM of 864 Kbytes, and a backup domain of 4 Kbytes of SRAM.
Graphics Accelerator
Portenta H7 thrills users as it can connect an external monitor to a customized embedded computer with a user interface. Chrom-ART Accelerator™, the processor’s on-chip GPU, allows for this extension aside from a dedicated JPEG encoder-decoder.
Wireless Module
The onboard wireless module grants simultaneous management of Bluetooth and WiFi connectivity. The WiFi interface which can handle up to 65Mbps can operate as an Access Point, a Station, or a simultaneous dual-mode AP/ST. Meanwhile, the Bluetooth interface supports both Classic and BLE. Exposing a chain of different wired interfaces is likewise possible, either through MKR-styled connectors or the new Arduino industrial 80-pin connector pair, which also provides Ethernet as an extra feature.
External Memories
Additional external memories are available for Portenta H7. One, the external SDRAM gives up to 64MByte of storage directly mapped in the CPU addressing space for code execution. On the other hand, the external QSPI flash provides up to 128MByte of storage that is either memory mapped for code execution or set as peripheral data storage.
Crypto Chips
There are two Crypto Chip choices for Portenta H7, the Microchip’s classic ATECC608A for low-cost compatibility with Arduino apps and NXP’s advanced SE050C2 for Common Criteria certification, bigger storage, and more complex functions.
Ethernet Phy and High Speed USB Phy
Providing full duplex communication is the optional 10/100 Ethernet physical interface, which directly connects to the internal Ethernet MAC along with automatic MDIX support. For optimizing power consumption, the Wake On Lan functions during sleep mode.
Available on the USB-C connector, the optional High-Speed USB Phy can provide up to 480Mbps of data transfer, where it can function both as a host and a device. This USB is one of the two USB interfaces on the high-speed connectors.
USB-C Multipurpose Connector
Other functions of the USB-C connector include providing the board with a power supply on both DFP and DRP modes and sourcing power to peripherals when VIN-powered. It can function as a 480Mbps high-speed bus or a Full Speed USB Host/Device interface at 12Mbps. It can likewise function as an optional DisplayPort output interface, which is usable in conjunction with USB. It can be used using a simple cable adapter when VIN-powered or with dongles providing power while outputting DisplayPort and USB.
Battery Connector
Portenta H7 draws power from a single cell 3.7V 700maH Li-Po or Li-Ion battery through a 3-pin BM03B-ACHSS-GAN-TF connector. The battery charger can support Lithium Ion/Lithium Polymer batteries with a linear charging of 10 mA to 1500 mA input limit. The programmable charge voltage ranges from 3.5V to 4.44V, the current from 100mA to 1000mA, and the termination current from 5.0mA to 50mA. The PF1550 IC performs battery management.
Power Tree
The PF1550 PMIC handles every power conversion on Portenta H7. Specified PMIC rules draw current via VUSB, VIN, or VBATT. A buck converter configured as a 3V3 that is accessible on both MKR headers and HDR connector drives the VCC. Another two buck converters give 3V1 and 2V8 outputs. There are also three precision LDO for providing 1V0, 1V2, and 1V8 outputs.
Accessories
Portenta H7 highlights several accessories for better functionality. The Portenta H7 Vision Shield proves to be a rapid route to developing applications that combine vision, audio, and connectivity. The HM-01B0 CMOS image sensor has an always-on design at ultra-low power usage. It has a 324x324 data stream that can detect gestures, ambient light, proximity, and objects when used with either Arduino toolchain or OpenMV. Its large 3.6μm pixel size allows for a high signal-to-noise ratio. The two omnidirectional digital microphones (MP34DB02) grant parallel capture of stereo sound and video stream on the MicroSD card, and even for beamforming uses. Either ethernet or LoRa technology provides connectivity, with LoRa furthering the platform as a wireless sensor network solution.
Applications
Given Portenta H7’s dual-core processing at low-power capabilities, it is a wonder in a broad range of applications. Matched with Portenta Vision Shield, H7 allows for machine vision suited for movement detection in video streams. This machine vision also allows for AI and machine learning as the two cores can read and interpret data, using the directional microphones and the camera module as data sources upon operation with the Portenta Vision Shield. H7’s connectivity power also makes it a solid contender for IoT applications. It can communicate effectively over long distances when combined with the Portenta Vision Shield.
Where to find it
Arduino Pro
Arduino is a global leader in open-source hardware and software, with over 33 million developers worldwide.