Radxa Taco – A Raspberry Pi CM4 carrier board made for NAS with 5x SATA ports

The Radxa Taco is a carrier board for Raspberry Pi CM4 and compatible system-on-modules that is designed for NAS applications with five SATA ports for 2.5-inch or 3.5-inch drives, 2.5GbE and GbE networking, M.2 sockets for expansion, and more.

The new board is the successor of the Rock Pi SATA HAT designed for the Raspberry Pi 4 SBC or Raxda Rock Pi 4 single board computers and supports more SATA drives, M.2 NVMe storage, optional WiFi 6, built-in RTC support, and so on.

Radxa Taco Raspberry Pi CM4 NAS Carrier Board

Radxa Taco specifications:

  • Supported SoMs
    • Raspberry Pi CM4 or CM4 Lite
    • Radxa CM3 based on Rockchip RK3566 quad-core Cortex-A55 processor
    • Maybe others
  • Storage
    • 5x SATA interfaces for 2.5-inch HDD or SSD up to 15mm thick, support for 3.5-inch drive via cables, software RAID 0/1/5
    • 1x M.2 M Key 2280  socket for NVMe SSD
    • MicroSD card slot
  • Networking
    • 2.5GbE RJ45 port
    • Gigabit Ethernet RJ45 port
    • Optional WiFi 6 module via M.2 E Key socket
  • PCIe – High-speed PCIe switch for SATA & Ethernet
  • USB – 1x USB 2.0 port for USB Direct Access Mode from PC
  • Expansion
    • M.2 M Key for NVMe SSD
    • M.2 E Key for WiFi 6 modules or Google Coral AI module
  • Misc
    • 5x activity LEDs
    • User and MaskROM keys
    • PWM-controlled fan for heat dispatching
    • OLED display for system info such as IP address or storage usage
  • Power Supply
    • 12V DC power input for 2.5 and 3.5″ HDD (60W power supply needed for 5x 2.5-inch drives)
    • External standard ATX power supply support for 3.5-inch HDDs
    • HDD suspend mode support
  • Power Consumption
    • SSD – <3W
    • 2.5-inch HDD – 3 to 5W
    • 3.5-inch HDD – 5 to 10W
  • Dimensions – 110 x 85 mm

5 SATA port NAS CM4 board

While in theory, both the Raspberry Pi CM4 and Radxa CM3 modules are supported, the wiki only provides instructions for the Raspberry Pi system-on-module. You’d basically have to flash the Raspberry Pi OS image to the module, and you’d be good to go, although there’s also a script to control the PWM fan:


One known issue is that booting from the M.2 NVMe SSD is not supported because there is no driver for the PCIe switch in the Raspberry Pi bootloader.

Radxa CM3 NAS board
Radxa Taco fitted with Radxa CM3 module

The carrier board is currently sold on Allnet China for $95. You’d need to add a Raspberry Pi CM4 (if you can’t source one), the power supply, and of course the drives.

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK 5 ITX Rockchip RK3588 mini-ITX motherboard
Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
10 Comments
oldest
newest
Dan
Dan
2 years ago

So the m2 slots, sata, and 2.5 gbe are all sharing a single pcie 2 lane? What can you seriously do with this?

andelf
andelf
2 years ago

Yeah, I don’t think performance is the goal..
An old itx Intel J1900 would be cheaper and faster.. and about the same tdp
I guess the backplane design is cool, but not worth it..

tkaiser
tkaiser
2 years ago

> booting from the M.2 NVMe SSD is not supported because there is no driver for the PCIe switch in the Raspberry Pi bootloader.

Since when do PCIe switches require ‘drivers’?

David Willmore
David Willmore
2 years ago

PCI-E devices require an enumeration phase–basically the root port has to walk the tree and enable things (allocating BAR, etc.) as it goes. I’m assuming from what this article says that the code in the CM4 doesn’t know how to recurse into switches below the root hub to enumerate devices on them. I’m curious how Linux handles things in that half initialized state. It’s probably got code to recover such situations as I can’t imagine this is the first device with broken PCI-E enumeration.

tkaiser
tkaiser
2 years ago

> basically the root port has to walk the tree and enable things (allocating BAR, etc.) as it goes.

And that’s what the ThreadX routine to search for PCIe devices is obviously not doing. It’s not a ‘driver’ issue but an enumeration limitation of the primary OS every Raspberry has to run.

David Willmore
David Willmore
2 years ago

Every rpi up to the 4 had poor ethernet and I/O performance due to sharing *one* poor USB port for everything. Rpi4 comes out with more ports to make it better. Radxa: “Hold my beer.” Puts everything off of one port again.

tkaiser
tkaiser
2 years ago

While it’s true that everything relevant is again behind one port it’s a way to outperform a Gigabit Ethernet limited NAS on 2.5GbE since while the single PCIe Gen2 lane acts as a bottleneck it should be possible in real-world scenarios to get almost twice the NAS performance compared to GbE.

Jeff Geerling did some testing already a year ago with an older Taco variant though IMO the benchmarking/settings missed some details/optimisations.

Didier Brami
Didier Brami
2 years ago

Sorry I just add 10 HDD 3.5 on 1 slot of PCI e and it’s working perfect but I don’t know how to tell people or if people have question.

paul Carpenter
1 year ago

Anyone know if the Radxa compute module 3 is compatible with some of the waveshare boards (https://www.waveshare.com/cm4-eth-rs485-base-b.htm for example)?
Mainly interested in either ethernet port working (speed is not a problem); rs485 working; leds working; extra sd card working.

Thanks.

Boardcon Rockchip RK3588S SBC with 8K, WiFI 6, 4G LTE, NVME SSD, HDMI 2.1...