Arduino Portenta X8
⚡ The essentials in 60 seconds
- application_processor_linux_side — NXP i.MX 8M Mini (MIMX8M6, "VTKZAA" marking per datasheet) — 4× Arm Cortex-A53 up to 1.8 GHz (32 KB L1-I + 32 KB L1-D per core, 512 KB L2) + 1× Cortex-M4 up to 400 MHz, 14LPC FinFET (NXP product page, Arduino datasheet page). - GPU: 3D GPU (1 shader, OpenGL ES 2.0) + 2D GPU (NXP page). - Video: 1080p60 VP9 (Profile 0/2, 10-bit), HEVC/H.265, AVC/H.264 (BM/MP/HP), VP8 decoders; 1080p60 H.264 + VP8 encoders (NXP page). - Multimedia I/O: 1× MIPI DSI (4-lane), 1× MIPI CSI (4-lane), 5× SAI (12 Tx + 16 Rx I²S lanes), 8-ch PDM in (NXP page, Arduino datasheet page).
- microcontroller_arduino_side — ST STM32H747XI dual core — Cortex-M7 up to 480 MHz (runs Arduino's custom bridge firmware, "normally invisible to the user, able to map all its peripherals as Linux devices") + Cortex-M4 up to 240 MHz (the core you program from the Arduino IDE) (docs.arduino.cc, ST product page). - MCU memory: 2 MB dual-bank flash (read-while-write), 1 MB RAM (192 KB TCM + up to 864 KB user SRAM + 4 KB backup SRAM) (ST page, Arduino datasheet page). - MCU analog/peripherals: 3× ADC, 2× DAC, 2× comparators, RNG, 12+ general-purpose timers (ST page). The datasheet's peripheral table for the X8 lists (M4/Arduino-facing) 3× SPI, 4× PWM outputs, 7× GPIO, 8× ADC inputs with separate VREF (Arduino datasheet page).
- system_memory — 2 GB LPDDR4 DRAM (Nanya NT6AN512T32AV) + 16 GB eMMC (Foresee FEMDRW016G), both attached to the i.MX 8M Mini (Arduino datasheet page).
- wireless — Murata 1DX module (Cypress LBEE5KL1DX combo IC) — Wi-Fi 802.11 b/g/n (65 Mbps max) + Bluetooth 5.1 BR/EDR/LE (Arduino datasheet page).
- ethernet — 1× Gigabit Ethernet MAC (AVB, IEEE 1588, EEE) on the i.MX 8M Mini + onboard 10/100/1000 Ethernet interface with PHY (Arduino datasheet page, Wikipedia).
- usb — USB-C High-Speed with DisplayPort output and Power Delivery support, host and device operation (Arduino datasheet page, Wikipedia); i.MX side has 2× USB 2.0 OTG controllers with integrated PHY (NXP page).
- On this board : 9 tutorials · 10 code
The Arduino Portenta X8 represents a significant evolution in the landscape of embedded electronics, distinguishing itself not merely as a microcontroller board but as a compact, industrial-grade system-on-module that seamlessly bridges the gap between traditional real-time computing and modern Linux-based application development. Announced in May 2022, this board is designed for developers and engineers who require the deterministic reliability of an Arduino microcontroller alongside the powerful, containerized capabilities of a full Linux operating system. It is crucial to note that despite its name and lineage, the Portenta X8 is not simply an upgrade of the Portenta H7; it is a distinct architectural hybrid. While it retains the familiar Portenta form factor, its internal composition is unique, merging two distinct processing worlds into a single, tiny footprint of just 66 by 25 millimeters. This dual-core architecture allows it to function as both a high-performance Linux computer and a robust real-time controller, making it suitable for complex applications such as industrial automation, edge AI, and sophisticated IoT gateways.
At the heart of the Linux side of the board lies the NXP i.MX 8M Mini application processor. This component is a quad-core Arm Cortex-A53 processor capable of reaching speeds up to 1.8 GHz, accompanied by a Cortex-M4 core for real-time tasks. The term "Cortex-A53" refers to a specific design of processor core that is efficient and powerful, commonly found in smartphones and tablets, which explains why the X8 can handle demanding tasks like running Docker containers or processing video. Speaking of video, the i.MX 8M Mini includes dedicated hardware for decoding and encoding high-definition video formats such as H.264 and VP9 at 1080p resolution, as well as a 3D GPU for graphical rendering. This multimedia capability is supported by 2 GB of LPDDR4 RAM and 16 GB of eMMC storage, providing ample space for operating system files, applications, and data logging. The board runs a specialized Linux distribution called the Linux microPlatform (LMP), developed in collaboration with Foundries.io. This system is built on the Yocto Project framework and is designed to be lightweight and secure, with Docker container support built directly into the core. This means developers can package their applications into isolated containers, ensuring that software updates can be deployed over-the-air without risking the stability of the underlying operating system.
Complementing the Linux processor is the STMicroelectronics STM32H747XI microcontroller, which handles the Arduino side of the board. This is a dual-core microcontroller featuring a Cortex-M7 core running at up to 480 MHz and a Cortex-M4 core at up to 240 MHz. In the Portenta X8 architecture, the M7 core runs custom bridge firmware that acts as a translator, exposing the microcontroller’s peripherals—such as GPIO pins, CAN bus, and analog-to-digital converters—to the Linux operating system as if they were native Linux devices. The M4 core is the one you program using the standard Arduino IDE or command-line tools. This setup allows for a unique workflow: you can write standard Arduino sketches to control hardware in real-time with precise timing, while simultaneously running complex Python or C++ applications in Linux containers that communicate with the Arduino code via a Remote Procedure Call (RPC) bridge. This RPC system uses a protocol called msgpack to allow data exchange between the two worlds, enabling scenarios where a Linux container processes data from a camera or network and then instructs the Arduino core to actuate a motor or read a sensor with microsecond precision.
Connectivity and expansion are central to the Portenta X8’s design. The module features two high-density board-to-board connectors that expose a wide range of industrial interfaces, including PCIe 2.0, CAN bus, and MIPI interfaces for cameras and displays. These connectors allow the module to be plugged into various carrier boards, such as the Max Carrier or Hat Carrier, which add physical ports like Ethernet, USB, and additional GPIO headers. For wireless communication, the board includes a Murata 1DX module that provides Wi-Fi 802.11 b/g/n and Bluetooth 5.1 support. A Gigabit Ethernet MAC is also integrated into the i.MX 8M Mini, though a physical RJ45 port is not present on the bare module itself, requiring a carrier board for wired network access. The board is powered via a USB-C connector that supports Power Delivery and DisplayPort output, allowing it to drive external monitors directly. This versatility is further enhanced by a dedicated secure element, the NXP SE050C2, which provides hardware-level security for key storage and cryptographic operations, certified to high industrial standards.
Despite its powerful capabilities, the Portenta X8 comes with a learning curve and certain operational nuances that developers should be aware of. The board is rated for industrial temperatures ranging from -40°C to +85°C, but at the upper end of this range, external heatsinks may be necessary to maintain performance, especially during intensive workloads. Power consumption can reach up to 4 watts, so a robust USB 3.0 port or external power supply is recommended to ensure stable operation. Users have reported that the RPC bridge between Linux and Arduino can sometimes be finicky, requiring careful management of the m4-proxy service on the Linux side. Additionally, the firmware for the STM32H747’s M7 core must be kept in sync with the Arduino core, as outdated firmware can break peripheral functionality. The board’s small size and high density also mean that accessing certain physical pins requires the use of compatible carrier boards or breakout adapters. Nevertheless, for projects that demand the fusion of real-time control and cloud-ready Linux computing, the Portenta X8 offers a compelling, compact, and secure solution that redefines what is possible in embedded systems development.



Pinout diagram

| Attr | Specs | verified |
|---|---|---|
application_processor_linux_side | NXP i.MX 8M Mini (MIMX8M6, "VTKZAA" marking per datasheet) — 4× Arm Cortex-A53 up to 1.8 GHz (32 KB L1-I + 32 KB L1-D per core, 512 KB L2) + 1× Cortex-M4 up to 400 MHz, 14LPC FinFET (NXP product page, Arduino datasheet page). - GPU: 3D GPU (1 shader, OpenGL ES 2.0) + 2D GPU (NXP page). - Video: 1080p60 VP9 (Profile 0/2, 10-bit), HEVC/H.265, AVC/H.264 (BM/MP/HP), VP8 decoders; 1080p60 H.264 + VP8 encoders (NXP page). - Multimedia I/O: 1× MIPI DSI (4-lane), 1× MIPI CSI (4-lane), 5× SAI (12 Tx + 16 Rx I²S lanes), 8-ch PDM in (NXP page, Arduino datasheet page). | ✔ |
microcontroller_arduino_side | ST STM32H747XI dual core — Cortex-M7 up to 480 MHz (runs Arduino's custom bridge firmware, "normally invisible to the user, able to map all its peripherals as Linux devices") + Cortex-M4 up to 240 MHz (the core you program from the Arduino IDE) (docs.arduino.cc, ST product page). - MCU memory: 2 MB dual-bank flash (read-while-write), 1 MB RAM (192 KB TCM + up to 864 KB user SRAM + 4 KB backup SRAM) (ST page, Arduino datasheet page). - MCU analog/peripherals: 3× ADC, 2× DAC, 2× comparators, RNG, 12+ general-purpose timers (ST page). The datasheet's peripheral table for the X8 lists (M4/Arduino-facing) 3× SPI, 4× PWM outputs, 7× GPIO, 8× ADC inputs with separate VREF (Arduino datasheet page). | ✔ |
system_memory | 2 GB LPDDR4 DRAM (Nanya NT6AN512T32AV) + 16 GB eMMC (Foresee FEMDRW016G), both attached to the i.MX 8M Mini (Arduino datasheet page). | ✔ |
wireless | Murata 1DX module (Cypress LBEE5KL1DX combo IC) — Wi-Fi 802.11 b/g/n (65 Mbps max) + Bluetooth 5.1 BR/EDR/LE (Arduino datasheet page). | ✔ |
ethernet | 1× Gigabit Ethernet MAC (AVB, IEEE 1588, EEE) on the i.MX 8M Mini + onboard 10/100/1000 Ethernet interface with PHY (Arduino datasheet page, Wikipedia). | ✔ |
usb | USB-C High-Speed with DisplayPort output and Power Delivery support, host and device operation (Arduino datasheet page, Wikipedia); i.MX side has 2× USB 2.0 OTG controllers with integrated PHY (NXP page). | ✔ |
expansion | two high-density 0.5 mm board-to-board connectors (Portenta form factor) exposing PCIe 2.0 (1-lane), CAN, SAI, MIPI, on-chip memory, GPIO and GPU signals (Arduino datasheet page). | ✔ |
security | NXP SE050C2 secure element on a dedicated bus — Common Criteria EAL 6+ (up to OS level), key generation, accelerated crypto, secure storage, "secures flash user memory up to 50 kB", I2C slave up to 3.4 MHz (Arduino datasheet page, SE050 datasheet). | ✔ |
power | USB-C (Power Delivery) or VIN = 5 V; 3.3 V I/O, 8 mA DC per I/O pin; official power-consumption table: 2350 mW typ (busy loop), 200 mW typ (low-power mode), 4000 mW max (Arduino datasheet page). | ✔ |
temperature | board rated −40 °C to +85 °C; Arduino notes external heatsinks may be needed at the extremes (Arduino datasheet page); the i.MX 8M Mini die itself is offered in industrial grade −40…+105 °C Tj (NXP page). | ✔ |
mechanical | 66.04 × 25.40 mm, 10.2 g (Arduino datasheet page). | ✔ |
- Manufacturer: Arduino S.r.l. (Monza, Italy) — Arduino Pro / Portenta product line (store page, announcement blog).
- Year: Announced May 10, 2022 during "Arduino Week" ("the revolutionary X8 module, which merges Arduino and Linux for the first time") (Arduino Blog); the store product record was published March 24, 2022 (Shopify published_at field of store product JSON, retrieved 2026-10-13). Wikipedia's board table instead lists a release date of April 28, 2023 (Wikipedia — List of Arduino boards); the discrepancy is unexplained.
- Status: Active — listed as available on the official store (retrieved 2026-10-13, store product JSON, available: true).
- Price: €223.00 on the official store (Shopify price: 22300 cents, retrieved 2026-10-13, store product JSON).
- Ordering code / variants: board part number ABX00049 (store product JSON, datasheet). One SKU ("Default Title"); the companion Portenta H7 (STM32H747 only, no Linux side) is the sibling product (docs). Compatible carriers: Portenta Breakout, Max Carrier, Hat Carrier, Mid Carrier (store page, blog).
+ Strengths
- 9 cores in 66 × 25 mm: "two industrial products in one… no less than 9 cores" — 4×A53 + M4 (i.MX) + M7 + M4 (STM32) + radios (store page).
- Container-first Linux: applications run as Docker containers decoupled from the OS, enabling modular, device-independent deployment and incremental OTA (store page, docs).
- Real Linux ↔ Arduino RPC: a msgpack-RPC bridge (m4-proxy service on Linux, RPC/SerialRPC library on the M4) lets a container call C++ functions on the MCU and proxy the Arduino serial monitor through USB (/dev/ttyGS0, RPC ports 5001–5020) (portentax8-m4-proxy, python-arduino-data-exchange tutorial).
- Industrial security stack: SE050C2 secure element (EAL6+), PSA Certified, Arm SystemReady IR certified, Parsec services integrated — "one of the market's first Cassini Products" (store page).
- Multimedia/edge-AI silicon: VP9/HEVC/H.264 1080p60 decode, MIPI DSI/CSI, DisplayPort over USB-C — kiosk, signage and camera-AI use cases (NXP page, store page).
- Industrial I/O on the connectors: PCIe 2.0, CAN, SAI, MIPI routed to the Portenta high-density connectors; carriers add Fieldbus, LoRa, Cat-M1/NB-IoT, RS-232/422/485, mPCIe (Arduino datasheet page, blog).
- Open build chain: Linux BSP layer (meta-partner-arduino), kernel modules (portentax8-x8h7), M7 firmware and container examples (portenta-containers) are all on GitHub.
− Weaknesses
- RPC bridge flakiness: "RPC doesn't seem to be working on X8" — open issue on the official core (arduino/ArduinoCore-mbed #960); the M4 side also depends on the m4-proxy systemd service running correctly on Linux (sudo journalctl -fu m4-proxy) (python-arduino-data-exchange tutorial).
- M7 firmware must be kept in sync: the H7 bridge firmware is flashed separately from the Arduino core; outdated firmware breaks Linux-side peripherals, hence a dedicated update procedure (399-install-update) (image-flashing tutorial). Last firmware release is 0.0.3 (Oct 2023) — the platform sees little firmware activity since (releases).
- CAN TX stall bug in M7 firmware: open issue — "HAL_FDCAN_TxBufferCompleteCallback silently drops the TX-complete status when the shared SPI queue is full — causes permanent Linux-side TX stall" (portentax8-stm32h7-fw #74); earlier buffer-overrun fixes in #60 / #61.
- Example-code rot: QSPIFBlockDevice not found when building Portenta X8 examples (open) (ArduinoCore-mbed #529); WiFiAccessPoint does not name a type compile error (closed) (#884).
- Serial on breakout confusing: users report difficulty getting the X8 to talk to external devices over the Breakout's serial ports (#584, open).
- Host-side ADB quirks: sketch upload requires ADB, which historically broke on arm64 host OSes ("Arm64 no longer supported? ADB? uhg", closed) (#492); adb shell docker permissions need newgrp - docker (docker-container tutorial).
- Power/thermal traps: a USB 3.0-capable port is required to guarantee current for busy-loop workloads (board can draw up to 4 W); full −40…+85 °C operation may require external heatsinks on the processors (Arduino datasheet page).
- Documentation churn: the old arduino/PortentaDocs repository now returns 404 and docs.portenta.io is gone (checked 2026-10-13); docs moved to docs.arduino.cc.
- Retour d'expérience expert expert — expert-arduino
- J'ai passe pas mal de temps sur la Portenta X8 recemment. Le concept est bluffant : 9 coeurs dans 66x25mm, un vrai Linux avec conteneurs Docker et le pont RPC vers le M7 pour l'Arduino. C'est puissant. Par contre, la doc a bouge violemment (docs.portenta.io est mort, tout est sur docs.arduino.cc) e… — expert-arduino
- Merci pour ce retour très complet. Je bute exactement sur le même souci de serial via le Breakout Carrier, impossible de faire causer la carte avec mes modules GPS, ca reste muet (voir issue 584). Tu as trouve une astuce pour le routage des ports série ? Par ailleurs, le pont CAN me fait peur : j'a… — maker-iot-01
- Pour le CAN, confirme que le bug de la file SPI est present si tu n'utilises pas le dernier firmware, mais même en 0.0.3 ca reste fragile en charge. Pour le serial du Breakout, verifie bien que tu n'utilises pas les pins reserves par les carriers actifs ou le debug USB. Le hic c'est que la doc est … — dev-embedded
Community feedback and projects
- SerialRPC and Serial.print on PortentaX8 forum.arduino.cc
- Portenta x8 appears to be a dud forum.arduino.cc
- Portenta x8, GPIO Setup and Toggle, Command Line Shell forum.arduino.cc
- Portenta X8 RPC tutorial is not working on the latest firmware forum.arduino.cc
- Resetting the Portenta X8's M4 Core from the Linux/I.MX8 side? forum.arduino.cc
- PDF del datasheet ABX00049 datasheet
- datasheet STM32H747 espejado por Arduino datasheet
- datasheet NXP SE050C2 datasheet
- Portenta X8 hardware page + datasheet tables
- ABX00049 datasheet PDF
- store page
- X8 Fundamentals
- Uploading sketches to M4
- Docker containers
- Image flashing
- User manual
- Firmware release notes
- ArduinoCore-mbed
- portentax8-stm32h7-fw
- portentax8-x8h7
- portentax8-m4-proxy
- portenta-containers
- meta-partner-arduino
- portenta-gpio
- NXP i.MX 8M Mini
- STM32H747 datasheet mirrored by Arduino
- NXP SE050C2 datasheet
- Foundries.io
- fioctl getting started
- Arduino images on Docker Hub
- Portenta X8 Manager
- Wikipedia — List of Arduino boards (X8 row)
- Arduino forum
- announcement blog post
- RPC bridge flakiness: "RPC doesn't seem to be working on X8" — open issue on the official core (arduino/ArduinoCore-mbed #960); the M4 side also depends on the m4-proxy systemd service running correctly on Linux (sudo journalctl -fu m4-proxy) (python-arduino-data-exchange tutorial).
- M7 firmware must be kept in sync: the H7 bridge firmware is flashed separately from the Arduino core; outdated firmware breaks Linux-side peripherals, hence a dedicated update procedure (399-install-update) (image-flashing tutorial). Last firmware release is 0.0.3 (Oct 2023) — the platform sees little firmware activity since (releases).
- CAN TX stall bug in M7 firmware: open issue — "HAL_FDCAN_TxBufferCompleteCallback silently drops the TX-complete status when the shared SPI queue is full — causes permanent Linux-side TX stall" (portentax8-stm32h7-fw #74); earlier buffer-overrun fixes in #60 / #61.
- Example-code rot: QSPIFBlockDevice not found when building Portenta X8 examples (open) (ArduinoCore-mbed #529); WiFiAccessPoint does not name a type compile error (closed) (#884).
- Serial on breakout confusing: users report difficulty getting the X8 to talk to external devices over the Breakout's serial ports (#584, open).
- Host-side ADB quirks: sketch upload requires ADB, which historically broke on arm64 host OSes ("Arm64 no longer supported? ADB? uhg", closed) (#492); adb shell docker permissions need newgrp - docker (docker-container tutorial).
- Power/thermal traps: a USB 3.0-capable port is required to guarantee current for busy-loop workloads (board can draw up to 4 W); full −40…+85 °C operation may require external heatsinks on the processors (Arduino datasheet page).
- Documentation churn: the old arduino/PortentaDocs repository now returns 404 and docs.portenta.io is gone (checked 2026-10-13); docs moved to docs.arduino.cc.
- Premiers pas : comprendre le monstre à 9 cœurs et entrer dans Linux via ADB debutant Schéma : IMG-portenta-x8-debutant-1-portenta-x8-premiers-pas.svg — Arduino Portenta X8 vue de dessus avec ses deux SoC mis en évidence (NXP i.MX 8M Mini 4x Cortex-A53 et ST STM32H747XI), câble USB-C branché, terminal PC affichant la commande adb shell et le prompt fio@portenta-x8, deux connecteurs 80 broches sous la carte
- Premier sketch sur le cœur M4 : le blink qui se flash par ADB debutant Schéma : IMG-portenta-x8-debutant-2-portenta-x8-premier-sketch-m4.svg — Arduino Portenta X8 avec le SoC STM32H747XI zoomé sur son cœur Cortex-M4 240 MHz, flèche de transfert USB-C vers la carte étiquée adb / upload Arduino, LED utilisateur clignotante, fenêtre Arduino IDE montrant le board Portenta X8 sélectionné
- Docker dès la sortie de l'emballage : premier conteneur sur le Linux embarqué debutant Schéma : IMG-portenta-x8-debutant-3-portenta-x8-docker-hello-world.svg — Arduino Portenta X8 en coupe stylisée : le noyau Linux en bas, des boîtes conteneur Docker empilées au-dessus (python, node, hello-world), terminal adb affichant docker run hello-world et le message de bienvenue, étiquette Yocto LMP Foundries.io
- Pont Linux ↔ Arduino : appeler des fonctions du sketch M4 depuis Python (RPC) intermediaire Schéma : IMG-portenta-x8-intermediaire-1-portenta-x8-rpc-python-m4.svg — Arduino Portenta X8 en deux colonnes : à gauche un conteneur Python avec un script appelant subtract(7,4), à droite le cœur Cortex-M4 du STM32H747XI avec la fonction bindée, flèches aller-retour étiquetées msgpack-RPC et m4-proxy ports 5001-5020, terminal affichant le résultat 3
- Mettre la X8 en réseau : Wi-Fi du Murata 1DX et Gigabit Ethernet sur porteuse intermediaire Schéma : IMG-portenta-x8-intermediaire-2-portenta-x8-reseau-wifi-ethernet.svg — Arduino Portenta X8 sur sa Max Carrier avec prise RJ45, ondes Wi-Fi partant du module blindé Murata 1DX vers une box, câble Ethernet vers un switch, terminal adb affichant une adresse IP et le message NetworkManager, étiquettes 802.11n 65 Mbps et GbE IEEE 1588
- Nœud IoT de datalogging : capteurs sur le M4, stockage et transport en conteneur intermediaire Schéma : IMG-portenta-x8-intermediaire-3-portenta-x8-datalogging-iot.svg — Arduino Portenta X8 avec sondes branchées sur ses broches ADC côté MCU, flèche RPC traversant la frontière Linux, conteneur Docker écrivant dans un fichier journal et poussant des paquets MQTT vers le cloud, graphique de courbes de température à l'écran
- Le firmware caché : mettre à jour le bridge STM32H7 M7 qui expose les périphériques à Linux avance Schéma : IMG-portenta-x8-avance-1-portenta-x8-firmware-bridge-m7.svg — architecture logicielle de la Portenta X8 en trois étages : conteneurs Docker en haut, noyau Linux avec modules x8h7_* au centre, firmware STM32H747 M7 en bas relié au cœur M4 Arduino, flèche adb push du fichier STM32H747AII6_CM7.bin vers la carte, bouton poussoir 10 s à côté
- Images custom et flotte : construire son Yocto, déployer par OTA avec fioctl et Waves avance Schéma : IMG-portenta-x8-avance-2-portenta-x8-image-yocto-ota-fleet.svg — pipeline de déploiement : poste de build Yocto avec la couche meta-partner-arduino, usine FoundriesFactory, flèches OTA signées vers trois Portenta X8 alignées, terminal affichant fioctl updates et docker ps avec des conteneurs versionnés, étiquette Linux microPlatform
- Sécurité industrielle : élément sécurisé SE050C2 (EAL6+), PSA Certified et Parsec avance Schéma : IMG-portenta-x8-avance-3-portenta-x8-securite-se050-parsec.svg — chaîne de confiance de la Portenta X8 en maillons : puce NXP SE050C2 blindée au centre avec ses clés, bus dédié vers l'i.MX 8M Mini, badges PSA Certified et Arm SystemReady IR, conteneur Docker demandant une signature via le service Parsec, mise à jour OTA signée entrant par le réseau, bouclier Common Criteria EAL6+ en arrière-plan
Code library — examples written for this board
etat-systeme.shBashgpio-libgpiod.shBashpython-gpio.pyPythondocker-hello.shBashflasher-core-arduino.shBashwifi-nmcli.shBashservice-systemd.shBashssh-cle-publique.shBashserial-core-mcu.pyPythonsurveillance-temperature.shBash
Examples and repos found online
- joel35/portenta-x8-blink-rpc github.com
- alexander-labarge/portenta-x8-debian-port github.com