From ProventusNova DeveloperWiki
Revision as of 07:54, 28 February 2025 by Sonni (talk | contribs) (Add NVidia Jetson, ESP32, and Texas Instruments)

About

This document provides an overview of various embedded platforms/systems commonly used in the development of embedded applications in the industry. It covers a wide range of popular processors, microcontrollers, and development boards, highlighting their key features, performance, characteristics, and suitable use cases. By comparing different platforms such as Raspberry Pi, NVIDIA Jetson, ESP32, Arduino, and NXP i.MX Series, this document aims to assist in choosing the most appropriate solution based on their project requirements.

Embedded Platforms/Systems Overview

Raspberry Pi

A small low-cost computer the size of a credit card. A Raspberry Pi can be a desktop computer, robotics controller, server, game controller, etc. The Raspberry Pi is an excellent tool for many projects, from basic learning to advanced projects.

Pros

  • Affordable
  • Versatile operating system
  • Very active community
  • Easy to learn
  • Flexible
  • User Imagination

The Raspberry Pi stands out as a cost-effective solution. This makes it an excellent choice for hobbyists, educators, and professionals alike. Its versatility is its key strength, as it can be used for a wide range of applications. The Raspberry Pi community is also another major advantage. A wealth of resources, tutorials, and forums make troubleshooting straightforward.

Cons

  • Limited power
  • Limited processing power
  • Limited RAM
  • Limited Storage

Raspberry Pi comes with certain limitations. One of those is their limited power, which can restrict its ability to perform demanding tasks or multiple peripherals. Raspberry Pi also relies on external storage which offers slower speed and limited capacity. Although it is compatible with many open-source applications, some software may not be optimized or supported for the Raspberry Pi.

Applications

  • Prototyping
  • Automation

Models

  • Raspberry Pi 5
  • Raspberry Pi 500
  • Raspberry Pi Pico
  • Raspberry Pi Zero

Specifications

Raspberry Pi Models Comparison
Model Raspberry Pi 5 Raspberry Pi 500 Raspberry Pi Pico Raspberry Pi Zero
CPU 2.4 GHz quad-core 64-bit ARM Cortex-A76 2.4 GHz quad-core 64-bit ARM Cortex-A76 133 MHz single-core ARM Cortex-M0+ 1 GHz single-core ARM1176JZF-S (Zero 1), 1 GHz quad-core 64-bit ARM Cortex-A53 (Zero 2)
GPU 800 MHz VideoCore VII 800 MHz VideoCore VII N/A 250 MHz VideoCore IV
APU N/A N/A N/A N/A
RAM 2/4/6/16GB LPDDR4x-4267 SDRAM 2/4/6/16GB LPDDR4x-4267 SDRAM 264kB SRAM 512MB LPDDR2 SDRAM
Display Up to Dual 4Kp60 micro HDMI with HDR support, 4Kp60 HEVC decoder Up to Dual 4Kp60 micro HDMI with HDR support, 4Kp60 HEVC decoder N/A Up to 1080P mini HDMI
Ports 2x USB 3.0, 2x USB 2.0, Gigabit Ethernet, PCIe Port 2x USB 3.0, 2x USB 2.0, Gigabit Ethernet, PCIe Port Micro-USB GPIO pins Micro USB On-The-Go (OTG)
Storage options eMMC, MicroSD Card eMMC, MicroSD Card Onboard 2MB flash memory MicroSD Card
Network Wi-Fi, BT 5.0, Gigabit Ethernet Wi-Fi, BT 5.0, Gigabit Ethernet N/A Wi-Fi
Power 5V/5A DC power via USB-C 5V/5A DC power via USB-C 5V via Micro-USB 5V via Micro-USB
OS Support Raspberry Pi OS, Ubuntu, Apertis, RISC OS, Ultramarine Linux, Alpine Linux, Other custom Linux distros (e.g. Yocto) Raspberry Pi OS, Ubuntu, Apertis, RISC OS, Ultramarine Linux, Alpine Linux, Other custom Linux distros (e.g. Yocto) MicroPython, CircuitPython Raspberry Pi OS, RISC OS, Alpine Linux, Other custom Linux distros (e.g. Yocto)
Price Range $50-$120 $120-$150 $4-$7 $5-$15
Documentation and Source Code Documentation: Raspberry Pi Documentation,

Raspberry Pi Hardware Documentation

Github: Raspberry Pi

Documentation:Raspberry Pi Documentation,

Raspberry Pi Hardware Documentation

Github: Raspberry Pi

Documentation: Pico-series Microcontrollers - Raspberry Pi Documentation,

Github: Raspberry Pi Pico Examples

Documentation: Raspberry Pi hardware - Raspberry Pi Documentation,

Github: dwelch67/raspberrypi-zero: Raspberry Pi Zero baremetal examples(for Zero 1),

Qengineering/RPi_64-bit_Zero-2-image: Raspberry Pi Zero 2 W 64-bit OS image with OpenCV, TensorFlow Lite and ncnn Framework.(for Zero 2)

Why is Raspberry Pi Popular?

Raspberry Pi is popular because it is a small, affordable, single-board computer that is easy to use. It is also versatile for a wide range of applications and the community is very active. With its robust hardware capabilities, including support for multiple operating systems, it has become a favorite among professionals and hobby enthusiasts.

NVIDIA Jetson

NVIDIA Jetson is the leading platform for robotics and embedded edge AI applications. A series of embedded computing boards designed specifically for AI and machine learning applications. NVIDIA Jetson offers several models to different needs, from low-power to high-performance applications.

Pros

  • Powerful GPU and CPU
  • Versatile applications
  • Open to Developers
  • Wide range of options

One of the key strengths of NVIDIA Jetson is its GPU, designed to accelerate deep learning, computer vision, and AI. This makes it an excellent choice for robotics, IoT, and autonomous systems. It is also supported by popular AI frameworks such as TensorFlow, PyTorch, and OpenCV. NVIDIA Jetson has rich software support from NVIDIA’s JetPack SDK, which simplifies development and deployment.

Cons

  • Expensive
  • Limited GPIO
  • Can get hot

NVIDIA Jetson tends to be on the more expensive side than other single-board computers. Devices under NVIDIA Jetson can consume more power, which may not be ideal for battery-powered applications or energy-efficient applications. It requires a steep learning curve to set up and work with the hardware and software tools.

Applications

  • Robotics
  • Edge AI

Models

  • Jetson AGX Orin series
  • Jetson Orin NX series
  • Jetson Orin Nano series
  • Jetson AGX Xavier series
  • Jetson Xavier NX series
  • Jetson TX2 series
  • Jetson Nano

Specifications

NVIDIA Jetson Models Comparison
Model Jetson AGX Orin Series Jetson Orin NX Series Jetson Orin Nano Series Jetson AGX Xavier Series Jetson Xavier NX Series Jetson TX2 Series Jetson Nano
CPU 2.0/2.2 GHz 12-core NVIDIA Arm Cortex A78AE v8.2 64-bit CPU 3MB L2 + 6MB L3 2.0 GHz 8-core NVIDIA Arm Cortex A78AE v8.2 64-bit CPU 2MB L2 + 4MB L3, 2.0 6-core NVIDIA Arm Cortex A78AE v8.2 64-bit CPU 2MB L2 + 4MB L3 1.7 GHz 6-core Arm Cortex-A78AE v8.2 64-bit CPU 1.5MB L2 + 4MB L3 2.0/2.2 GHz 8-core NVIDIA Carmel Armv8.2 64-bit CPU 8MB L2 + 4MB L3 1.9 GHz 6-core NVIDIA Carmel Arm v8.2 64-bit CPU 6MB L2 + 4MB L3 1.95/2.2 GHz Dual-Core NVIDIA Denver 2 64-Bit CPU, 1.92/2 GHz Quad-Core Arm Cortex-A57 MPCore processor 1.43 GHz Quad-Core Arm Cortex-A57 MPCore processor
GPU 200-275 TOPS, NVIDIA Ampere architecture GPU with up to 64 Tensor Cores 117-157 TOPS, NVIDIA Ampere architecture GPU with up to 32 Tensor Cores 34-67 TOPS, NVIDIA Ampere architecture GPU with up to 32 Tensor Cores 30-32 TOPS, NVIDIA Volta architecture GPU with 64 Tensor Cores 21 TOPS 1100 MHz 384-core NVIDIA Volta architecture GPU with 48 Tensor Cores 1.26-1.33 TFLOPS, NVIDIA Pascal architecture GPU 472 GFLOPS 921 MHz 128-core NVIDIA Maxwell architecture GPU
APU Integrated AI Accelerator (NVIDIA Tensor Cores) Integrated AI Accelerator (NVIDIA Tensor Cores) Integrated AI Accelerator (NVIDIA Tensor Cores) Integrated AI Accelerator (NVIDIA Tensor Cores) Integrated AI Accelerator (Tensor Cores) Integrated AI Accelerator (NVIDIA Pascal GPU) Integrated AI Accelerator (Maxwell GPU)
RAM 32/64GB 256-bit LPDDR5 8/16GB 128-bit LPDDR5 4GB 64-bit LPDDR5, 8GB 128-bit LPDDR5 32/64GB 256-bit LPDDR4x 8/16GB 128-bit LPDDR4x 4/8GB 128-bit LPDDR4 4GB 64-bit LPDDR4
Display Up to 8K video output, dual 4K Up to 4K video output Up to 4K video output Up to dual 4K video output Up to 4K video output, Dual 4K displays Up to 1080p video output Up to 1080P video output
Ports 3x USB 3.2 Gen2, 4x USB 2.0, 2x PCIe Gen 4 3x USB 3.2 Gen2, 3x USB 2.0, 1x PCIe Gen 4, Gigabit Ethernet 3x USB 3.2 Gen2, 3x USB 2.0, 1x PCIe Gen 4, Gigabit Ethernet 3x USB 3.2 Gen2, 4x USB 2.0, 1x PCIe Gen 3 1x USB3.2 Gen2, 3X USB 2.0 3x USB 3.0, 3x USB 2.0, 1x USB 3.0, 3x USB 2.0 1x USB 3.0, 3x USB 2.0
Storage options 32/64GB eMMC 5.1, M.2 NVMe NVMe (supports external NVMe) NVMe (supports external NVMe) 32/64 GB eMMC 5.1 16GB eMMC 5.1 16/32GB eMMC 5.2 16GB eMMC 5.1
Network Wi-Fi 6, BT 5.0 Wi-Fi, BT 5.0, Gigabit Ethernet Wi-Fi, BT 5.0, Gigabit Ethernet Wi-Fi, BT 5.0, Gigabit Ethernet Wi-Fi, BT 5.0, Gigabit Ethernet Wi-Fi, BT 4.2, Gigabit Ethernet Gigabit Ethernet
Power 15W-75W 10W-40W 10W-30W 20W-40W 10W-20W 7.5W-20W 5W-10W
OS Support NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto)
Price Range $599-$1,100 $199-$399 $99-$199 $699-$899 $399-$599 $300-$600 $59-$99
Documentation and Source Code Documentation: Documentation: Jetson AGX Orin Developer Kit User Guide Documentation: Documentation: Jetson Orin NX and Nano Series — Jetson Linux Developer Guide documentation Documentation: Documentation: Jetson Orin NX and Nano Series — Jetson Linux Developer Guide documentation Documentation: Documentation: Jetson AGX Xavier Series — Jetson Linux Developer Guide

Jetson AGX Xavier Developer Kit

Documentation: Jetson Xavier NX Series — Jetson Linux Developer Guide Documentation: Jetson TX2 Developer Kit Documentation: Jetson Nano Developer Kit,

Jetson Nano 2GB Developer Kit User Guide

Why is NVIDIA Jetson Popular?

NVIDIA Jetson is popular because it provides high-performance AI computing in a compact, energy-efficient form factor. It is ideal for edge AI and robotics applications. From its entry-level to high-end modules, NVIDIA Jetson scales depending on the project's needs.

ESP32

Low-cost, low-power system-on-chip microcontrollers. A single 2.4 GHz WiFi and Bluetooth combo chip designed with TSMC low-power 40nm technology.

Pros

  • Low-cost
  • Low-power
  • IoT (Internet of Things)

ESP32 is a powerful and versatile microcontroller because of its range of features, making it ideal for a variety of IoT applications. One of its biggest advantages is its low cost and low power consumption. It also has integrated Wi-Fi and Bluetooth, eliminating the need for external modules for wireless connectivity. ESP32 also has a strong developer community with support for ESP-IDF and is also compatible with Arduino IDE, making it great for beginners and experienced developers.

Cons

  • Limited GPIO
  • Low-power
  • High learning curve

While ESP32’s performance is impressive, it may still fall short for resource-intensive tasks like high-end AI or complex video processing. Its lack of built-in storage can be limiting for applications that require large amounts of storage. Its GPIO pin count is also limiting for complex projects that require multiple connections.

Applications

  • Simple smart home
  • Low-power IoT sensors (ultrasonic, IR, etc.)
  • Simple smart agriculture
  • Speech & Image recognition (OpenCV)

Models

  • ESP32-P series
  • ESP32-S series
  • ESP32-C series
  • ESP32-H series
  • ESP8266 series

Specifications

ESP32 Series Comparison
Model ESP32-P Series ESP32-S Series ESP32-C Series ESP32-H Series ESP8266 Series
CPU Up to 240MHz Dual-core 32-bit Xtensa LX6 Up to 240MHz Dual-core 32-bit Xtensa LX6 Up to 160 MHz Single-core 32-bit Xtensa LX6 Up to 160 MHz Single-core 32-bit Xtensa LX6 Up to 160 MHz Single-core 32-bit Xtensa LX6
GPU N/A N/A N/A N/A N/A
APU N/A N/A N/A N/A N/A
RAM 320KB SRAM up to 512KB SRAM 320KB SRAM up to 512KB SRAM 128KB SRAM up to 192KB SRAM 128KB SRAM up to 192KB SRAM 128KB SRAM up to 192KB SRAM
Display No direct display support. Can support external display No direct display support. Can support external display No direct display support. Can support external display No direct display support. Can support external display No direct display support. Can support external display
Ports 1x SPI, 2x I2C, 2x UART, GPIO 1x SPI, 2x I2C, 2x UART, GPIO 1x SPI, 1x I2C, 1x UART, GPIO 1x SPI, 1x I2C, 1x UART, GPIO 1x SPI, 1x I2C, 1x UART, GPIO
Storage options Up to 16MB external flash Up to 16MB external flash Up to 16MB external flash Up to 16MB external flash Up to 4MB external flash
Network Wi-Fi, BT 4.2 Wi-Fi, BT 4.2 Wi-Fi, BT 4.2 Wi-Fi, BT 4.2 Wi-Fi
Power 3.3V low power 3.3V low power 3.3V low power 3.3V low power 3.3V low power
OS Support ESP-IDF, FreeRTOS, Arduino IDE ESP-IDF, FreeRTOS, Arduino IDE ESP-IDF, FreeRTOS, Arduino IDE ESP-IDF, FreeRTOS, Arduino IDE FreeRTOS, Arduino IDE
Price Range $1-$3 $2-$6 $1.50-$5 $1.50-$5 $1-$3
Documentation and Source Code Documentation: Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation,

ESP SoCs

Github: Espressif Systems, espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.

Documentation: Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation,

ESP SoCs

Github: Espressif Systems, espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.

Documentation: Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation,

ESP SoCs

Github: Espressif Systems, espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.

Documentation: Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation,

ESP SoCs

Github: Espressif Systems, espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.

Documentation: Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation,

ESP SoCs

Github: Espressif Systems, espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.

Why is ESP32 popular?

ESP32 is popular because it is cost-effective, has integrated Wi-Fi and Bluetooth, benefits from active community support, and has a well-developed ecosystem. ESP32s are heavily used in industries, especially in IoT. ESP32 offers robust connectivity and performance for a wide range of applications.

Texas Instruments Sitara Processors

Developed by Texas Instruments, featuring ARM9, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex A-15, and ARM Cortex-A53 cores. Supported by the Beagle community as well as TI's open-source development community.

Pros

  • Power efficient
  • Cost-effective
  • Scalability
  • Real-time capability

Texas Instruments Sitara Processors offer a wide range of powerful features for embedded and industrial applications. Sitara Processors provide low-power and higher-performance models, making them suitable for battery-operated devices and high-demand industrial systems. They also offer a developer-friendly environment with tools like Code Composer Studio and RTOS support.

Cons

  • Limited raw performance
  • Complexity
  • Limited high-end applications

Sitara processors have challenges related to complexity and cost. Simple applications may offer more performance than necessary, leading to increased power consumption and system cost. The software ecosystem is more specialized compared to platforms like Raspberry Pi or ESP32, making development challenging for those unfamiliar with Code Composer Studio and RTOS. Long-term support for certain models may also be a concern as some projects rely on specific processor families.

Applications

  • IoT gateways
  • Smart thermostats
  • Industrial automation
  • HMI

Models

  • AM335x
  • AM35x
  • AM37x
  • AM437x
  • AM57x
  • AM62x
  • AM65x

Specifications

Texas Instruments Sitara Processors Comparison
Model AM335x AM35x AM37x AM437x AM57x AM62x AM65x
CPU ARM Cortex-A8, up to 1GHz ARM Cortex-A8, up to 600MHz ARM Cortex-A8, up to 1GHz ARM Cortex-A9, up to 1GHz Dual ARM Cortex-A15, up to 1.5GHz Quad ARM Cortex-A53, up to 1.4GHz Dual ARM Cortex-A53, up to 1.1GHz, Real-Time ARM Cortex-R5F
GPU PowerVR SGX530 N/A PowerVR SGX530 PowerVR SGX544 PowerVR SGX544MP2 ARM Mali-G52 MP2 N/A
APU PRU-ICSS N/A N/A PRU-ICSS Embedded Vision Engine (EVE), DSP C66x N/A PRU-ICSSG, Embedded Vision Engine (EVE)
RAM Up to 1GB DDR2/3L Up to 256MB DDR2 Up to 512MB DDR2/3L Up to 1GB DDR3/3L Up to 4GB DDR3/3L, DDR4 Up to 2GB DDR4 Up to 8GB DDR4
Display 24-bit LCD Controller 24-bit LCD Controller 24-bit LCD Controller 24-bit LCD Controller 24-bit LCD Controller, HDMI 24-bit LCD Controller 24-bit LCD Controller, DP/HDMI
Ports Up to 2x USB 2.0, Up to 2x Gigabit Ethernet, Up to 2x CAN ports, Up to 6x UARTS, Up to 3x I2C, GPIO USB 2.0, Gigabit Ethernet, UART, I2C, GPIO USB 2.0, Gigabit Ethernet, UART, I2C, GPIO Up to 2x USB 2.0, Up to 2x Gigabit Ethernet, Up to 2x CAN ports, Up to 6x UARTS, Up to 3x I2C, GPIO Up to 2x USB 2.0, Up to 2x USB 3.0, Up to 2x PCIe, Gigabit Ethernet, Up to 2x CAN ports, Up to 3x I2C, GPIO Up to 2x USB 2.0, Up to 2x USB 3.0, Up to 2x PCIe, Gigabit Ethernet, Up to 2x CAN ports, Up to 3x I2C, GPIO Up to 2x USB 2.0, Up to 2x USB 3.0, Up to 4x PCIe, Up to 2x Gigabit Ethernet, Up to 2x CAN ports, Up to 3x I2C, GPIO
Storage options eMMC, SD/SDIO, NAND NAND, SD NAND, SD eMMC, SD/SDIO, NAND eMMC, SD/SDIO, NAND, SATA eMMC, SD/SDIO eMMC, SD/SDIO, NVMe
Network Ethernet Ethernet Ethernet Ethernet Gigabit Ethernet Gigabit Ethernet Gigabit Ethernet
Power 1.8V/3.3V 1.8V/3.3V 1.8V/3.3V 1.8V/3.3V 1.8V/3.3V 1.8V/3.3V 1.8V/3.3V
OS Support Linaro, Linux (Yocto), RTOS, Android, Windows Embedded Compact Linux, Windows CE Linaro, Linux (Yocto), RTOS, Android, Windows Embedded Compact Linaro, Linux (Yocto), RTOS, Android, Windows Embedded Compact Linux (Yocto), RTOS, Android Linux (Yocto), Android Linux (Yocto), QNX, Android
Price Range $5-$20 $10-$25 $15-$30 $10-$25 $50-$150 $25-$60 $70-$200
Documentation and Source Code Documentation: AM335x Sitara™ Processors datasheet (Rev. L),

SDK: PROCESSOR-SDK-AM335X Software development kit (SDK)

Documentation: AM35x ARM Microprocessor Technical Reference Manual (Rev. C),

SDK: LINUXEZSDK-AM35X Software development kit (SDK)

Documentation: AM3703 Sitara ARM Microprocessors datasheet (Rev. F),

SDK: LINUXEZSDK-AM37X Software development kit (SDK)

Documentation: AM437x Sitara™ Processors datasheet (Rev. E),

SDK: PROCESSOR-SDK-AM437X Software development kit (SDK)

Documentation: sprt689a.pdf,

SDK: PROCESSOR-SDK-AM57X Software development kit (SDK)

Documentation: AM62x Sitara™ Processors datasheet (Rev. B),

SDK: PROCESSOR-SDK-AM62X Software development kit (SDK)

Documentation: AM65x/DRA80xM Processors Technical Reference Manual (Rev. E),

SDK: PROCESSOR-SDK-AM65X Software development kit (SDK)

Why are Texas Instruments Sitara Processors popular?

Texas Instruments Sitara Processors are popular due to their reliability, cost-effectiveness, and scalable processing power. They excel in integrating key peripherals such as Ethernet, CAN, and industrial interfaces.