In the world of embedded Linux industrial System-on-Modules (SoMs), the entry-level market has long been dominated by two major camps: NXP's i.MX6ULL and STMicroelectronics' STM32MP1 series. Choosing between them is a classic dilemma every hardware engineer and project manager faces.
This article compares EBYTE's flagship modules based on these two chips — the ECK20-6Y28C series (i.MX6ULL) and the ECK10-13xA series (STM32MP135) — across product positioning, core specifications, interface differences, packaging, and ecosystem support
The EBYTE ECK20-6Y28C series is an embedded SoM based on NXP's Cortex-A7 i.MX6ULL processor. It connects to the baseboard via a BTB connector (0.8mm pitch, 120 pins) and integrates DDR3L memory, eMMC/NAND Flash storage, and power management on a single board.
| Feature | Specification |
|---|---|
| Processor | MCIMX6Y2CVM08AB, single-core ARM Cortex-A7 @792MHz |
| Memory | Onboard DDR3L SDRAM, 16-bit, 256MB/512MB optional |
| Storage | 8GB eMMC or 512MB parallel NAND Flash optional |
| Interface | 120-pin BTB connector (pluggable) |
| Dimensions | 46 × 36 × 6.8mm |
| Positioning | Low-cost, low-power, high cost-effectiveness industrial control |
The EBYTE ECK10-13xA series is based on STMicroelectronics' STM32MP135 processor. It uses a 128-pin stamp-hole (half-hole) soldering method and integrates one ARM Cortex-A7 application processor and one ARM Cortex-M4 coprocessor.
| Feature | Specification |
|---|---|
| Processor | STM32MP135DAF3, single-core ARM Cortex-A7 @1GHz + M4 coprocessor @209MHz |
| Memory | Onboard DDR3L SDRAM, 16-bit, 256MB/512MB optional |
| Storage | 8GB eMMC optional (select models) |
| Interface | 204-pin DDR3 gold finger |
| Dimensions | 67.6 × 30 × 4.5mm |
| Positioning | High integration, dual-core异构, next-gen industrial gateway |
| Comparison Dimension | ECK20-6Y28C (i.MX6ULL) | ECK10-13xD (STM32MP135) |
|---|---|---|
| Processor Core | Single-core Cortex-A7 @792MHz | Single-core Cortex-A7 @1GHz + M4 coprocessor @209MHz |
| Architecture Philosophy | Pure application processor | Dual-core异构: A7 runs Linux, M4 runs real-time control |
| Linux Kernel | Kernel 5.10.9 (mature, widely compatible) | Kernel 6.1.28 (newer, better driver support) |
| Display Interface | 1x parallel LCD, max 1366×768@60fps | 1x parallel LCD, max Full HD 1920×1080@30fps + 1x digital camera |
| Networking | 2x 100M Ethernet (MII/RMII) | 2x GigE MAC + 1x onboard GigE PHY |
| USB | 2x USB2.0 OTG | 1x USB2.0 OTG + 3x USB2.0 HOST |
| UART Count | 8x UART | 4x UART + 4x USART |
| CAN | 2x CAN | 2x FDCAN |
| Storage Options | 8GB eMMC or 512MB NAND Flash | 8GB eMMC optional + NAND Flash (select models) |
| Package | 120-pin BTB connector (pluggable, easy upgrade) | 204-pin DDR3 gold finger (pluggable, high reliability) |
| PCB | 8-layer, ENIG, lead-free | 8-layer, ENIG, lead-free, hard gold on gold finger |
| Operating Temp | -40℃~85℃ (industrial) / 0℃~70℃ (commercial) | 0℃~70℃ (commercial) |
| Onboard WiFi/BT | Yes | Yes |
| Typical Power | Lower | ~1.55W (moderate) |
| QSPI Interface | 1x (bootable) | — |
i.MX6ULL: Pure single-core Cortex-A7 @792MHz. All workloads (Linux system, application logic, real-time control) run on the same core. Sufficient for scenarios without strict real-time requirements (e.g., HMI display, data acquisition gateways).
STM32MP135: Innovative dual-core architecture — Cortex-A7 @650MHz~1GHz runs Linux and upper-layer applications; Cortex-M4 @209MHz handles high real-time tasks (motor control, sensor data acquisition, PWM generation). This means "Linux system + real-time control" on a single chip, eliminating the need for an external MCU.
i.MX6ULL: 2x 10/100M adaptive Ethernet with IEEE 1588 support. Sufficient for most industrial control, HMI, and IoT gateway scenarios.
STM32MP135: 2x Gigabit Ethernet MAC controllers, with 1x onboard 10/100/1000M Ethernet PHY. Users can use Gigabit Ethernet directly without an external PHY chip, greatly simplifying baseboard design and enabling high-bandwidth data transmission (HD video streaming, large-scale sensor data).
i.MX6ULL: 8x UART — absolute advantage for connecting multiple serial devices (sensors, card readers, printers).
STM32MP135: 4x UART + 4x USART. USART adds support for synchronous communication (SPI) and smartcards, offering more functionality, but total serial port count is lower.
i.MX6ULL: 1x parallel LCD, max 1366×768@60fps — meets basic industrial HMI needs.
STM32MP135: 1x parallel LCD, max Full HD (1920×1080@30fps), plus 1x digital camera (DCMIPP) input — superior for HD display and vision applications.
ECK20-6Y28C: 120-pin, 0.8mm pitch BTB connector. Pluggable, easy to upgrade, debug, and repair. Suitable for products requiring rapid iteration or预留 upgrade space.
ECK10-13xD: 204-pin DDR3 gold finger. Hard gold plating ensures more reliable contact and greater durability. Ideal for long-term stable operation and vibration-prone industrial applications, with higher baseboard interface density.
| Core Parameter | ECK20-6Y28C (i.MX6ULL) | ECK10-13xD (STM32MP135) |
|---|---|---|
| Processor | MCIMX6Y2CVM08AB | STM32MP135DAF3 |
| CPU Frequency | 792 MHz | 650 MHz - 1 GHz |
| Coprocessor | None | Cortex-M4 @209 MHz |
| DDR3L Memory | 256MB/512MB (16-bit) | 256MB/512MB (16-bit) |
| eMMC Storage | 8GB optional | 8GB optional |
| Parallel LCD | 1366×768@60fps | 1920×1080@30fps |
| Digital Camera | None | 1x |
| Ethernet | 2x 100M (MII/RMII) | 2x GigE MAC + 1x onboard GigE PHY |
| USB | 2x OTG | 1x OTG + 3x HOST |
| UART | 8x | 4x UART + 4x USART |
| CAN | 2x CAN | 2x FDCAN |
| I2C | 5x | 5x |
| SPI | 5x | 5x + 1x QSPI |
| SDIO | 2x | 2x |
| GPIO | Multiple | 86 (max, including interrupts) |
| ADC | 2 modules, 10 channels | 2x 12-bit ADC, multi-channel |
| WiFi/BT | Onboard | Onboard |
| Package Interface | 120-pin BTB connector | 204-pin DDR3 gold finger |
| Dimensions | 46×36×6.8mm | 67.6×30×4.5mm |
| Operating Temp | -40℃~85℃ (industrial) | 0℃~70℃ (commercial) |
| Power Consumption | Lower | ~1.55W |
| Linux Kernel | Kernel 5.10.9 | Kernel 6.1.28 |
| U-Boot | U-boot 2020.04 | U-boot 2022.10 |
| Scenario | Why |
|---|---|
| Industrial control with many serial ports | Serial servers, multi-UART data collectors, PLC communication modules |
| Cost-sensitive mass production | Mature ecosystem, abundant development resources, lower BOM cost |
| Wide temperature applications | -40℃~85℃ industrial grade for outdoor, cold storage, extreme environments |
| Simple HMI | Display resolution ≤1366×768, needs stable and reliable touch display |
| IoT gateways | 2x 100M Ethernet + WiFi/BT for sensor data upload and protocol conversion |
| Scenario | Why |
|---|---|
| Dual-core scenarios | Linux GUI + real-time motion control (printers, robots, CNC) |
| HD display + camera | 1080P large screen + face recognition, barcode scanning |
| Gigabit networking | High-bandwidth industrial gateways, routers, video servers |
| Rich interface projects | Multiple USB (3x HOST + 1x OTG), GigE, multi-CAN, advanced USART |
| New project development | Latest Kernel 6.1.28 with comprehensive driver support |
| High performance needs | 1GHz provides faster application processing vs. 792MHz |
Mature Industrial Design: 8-layer PCB, ENIG/hard gold plating, excellent signal integrity and anti-interference capability
Complete Software Ecosystem:
ECK20: U-boot 2020.04 + Kernel 5.10.9
ECK10: U-boot 2022.10 + Kernel 6.1.28
Full kernel source, device tree, driver source, Buildroot/Yocto support
Rich Interface Resources: Both modules integrate WiFi/BT, PMIC, DDR3L, and storage — users only need to design the baseboard
Comprehensive Technical Support: Reference schematics, PCB footprint libraries, baseboard layout guidelines, detailed user manuals, and配套 single-board computers for rapid evaluation
Q1: Can the frequency difference (792MHz vs 1GHz) be felt in practice?
A: For high-load applications (complex web interaction, heavy data computation), the 1GHz STM32MP135 has a clear advantage. For most industrial control tasks (data acquisition, protocol conversion, HMI display), both are sufficient — the architecture difference (dual-core异构 vs. pure A7) matters more.
Q2: Which SoM is more power-efficient?
A: i.MX6ULL (ECK20) consumes less power due to its simpler architecture and lower frequency. STM32MP135 (ECK10) has good power management but its dual-core architecture and higher frequency result in ~1.55W typical power consumption.
Q3: Which is better for mass production?
A: Both are suitable. i.MX6ULL (ECK20) has a longer history with richer BSP, driver, and mass production experience. STM32MP135, as ST's newer entry-level product, has a slightly less mature ecosystem but is growing rapidly with strong ST support.
Q4: Do I need external CAN transceivers?
A: Yes. Both modules provide CAN controllers (FDCAN/CAN) — you need external CAN transceiver chips (e.g., SN65HVD230/TJA1050) for a complete CAN bus interface.
Q5: How do I use the digital camera function?
A: This is only supported on STM32MP135. You need a parallel interface camera module (DCMIPP), connect it via the corresponding pins, and develop the driver for video capture or image recognition.
Choosing i.MX6ULL means choosing a battle-tested, cost-controllable, extremely stable mature industrial solution.
Choosing STM32MP135 means choosing a future-oriented, architecturally advanced, higher-performance next-generation intelligent edge computing solution.
The difference is essentially a trade-off between mature stability and innovative performance. Make your choice based on your project's interface, cost, power, ecosystem, and future expansion requirements.