Posts Tagged ‘nas’

GNUBee Personal Cloud 2 is a DIY NAS Supporting up to Six 3.5″ SATA Drives (Crowdfunding)

October 11th, 2017 20 comments

GNUBee Personal Cloud 1 is a DIY NAS powered by Mediatek MT7621A MIPS processor that supports up to 2.5″ SATA drives, and runs free and open source software. It was first introduced in March of this year through a CrowdSupply campaign.

The developers are now back with GNUBee Personal Cloud 2 (GB-PC2) with pretty much the same features, but instead of being designed for 2.5″ drives, it supports up to six 3.5″ drive that should offer either more capacity, or a lower total price for an equivalent capacity.

GB-PC2 NAS specifications:

  • ProcessorMediaTek MT7621A dual core, quad thread MIPS processor @ 880 MHz, overclockable to 1.2 GHz
  • System Memory512 MB DDR3 (max supported by MT7621)
  • Storage – SD card slot tested up to 64 GB, 6x 3.5” SATA HDD or SSD (recommended RAID 0 or 1 under LVM, MD, or Linux MD RAID 10)
  • Connectivity – 3x Gigabit Ethernet
  • USB – 1x USB 3.0 port, 2x USB 2.0 ports
  • Serial port – 3-pin J1 connector or 3.5 mm audio-type jack
  • Misc – 2x mainboard fan
  • Power – 12 VDC @ 8A via 5.5 mm x 2.1 mm, center-positive barrel jack
  • Dimensions –  TBD
  • Weight – ~454 g (without drives)

They also added one extra Gigabit Ethernet port for a total of three, and the NAS is obviously larger and heavier than the previous model, as well as requires a beefier power supply. The device can currently run Debian, OpenMediaVault, LEDE, or libreCMC with all documentation, schematics, and source code to be released on Github.

The new GB-PC2 model has also been launched on CrowdSupply with a funding target of $45,000. GnuBee PC2 Starter Kit with two anodized aluminum side plates, six threaded brackets and bracket screws, and 24 drive mount screws requires a $249 pledge. However, you may want to spend $10 more to add the power supply, SD card with firmware image, and USB-to-UART adapter cable for the Delux Kit (Early Bird). Shipping is free to the US, but adds $20 to the rest of the world, with delivery planned for December 31, 2017. Further details may be found on GNUBee website.

Hardkernel ODROID-HC1 Home Cloud One Stackable NAS is now available for $49

August 21st, 2017 14 comments

Hardkernel has just launched their ODROID-HC1 stackable NAS system based on a cost-down version of ODROID-XU4 board powered by Samsung Exynos 5422 octa-core Cortex-A15/A7 processor, which as previously expect, you can purchase for $49 on Hardkernel website, or distributors like Ameridroid.

We now have the complete specifications for ODROID-HC1 (Home Cloud One) platform:

  • SoC – Samsung Exynos 5422 octa-core processor with 4x ARM Cortex-A15 @ 2.0 GHz, 4x ARM Cortex-A7 @ 1.4GHz, and Mali-T628 MP6 GPU supporting OpenGL ES 3.0 / 2.0 / 1.1 and OpenCL 1.1 Full profile
  • System Memory – 2GB LPDDR3 RAM PoP @ 750 MHz
  • Storage
    • UHS-1 micro SD slot up to 128GB
    • SATA interface via JMicron JMS578 USB 3.0 to SATA bridge chipset capable of achieving ~300 MB/s transfer rates
    • The case supports 2.5″ drives between 7mm and 15mm thick
  • Network Connectivity – 10/100/1000Mbps Ethernet (via USB 3.0)
  • USB – 1x USB 2.0 port
  • Debugging – Serial console header
  • Misc – Power, status, and SATA LEDs;
  • Power Supply
    • 5V via 5.5/2.1mm power barrel (5V/4A power supply recommended)
    • 12V unpopulated header  (currently unused)
    • Backup header for RTC battery
  • Dimensions – 147 x85 x 29 mm (Aluminum case also serving as heatsink)
  • weight – 229 grams

The company provides Ubuntu 16.04.2 with Linux 4.9, and OpenCL support for the board, the same image as ODROID-XU4, but there are also community supported Linux distributions including Debian, DietPi, Arch Liux ARM, OMV, Armbian, and others, which can all be found in the Wiki.

SAMBA File Copy To/From HC1 – Click to Enlarge

Based on Hardkernel’s own tests, you should be able to max out the Gigabit Ethernet bandwidth while transferring a files over SAMBA in either directions. tkaiser, an active member of Armbian, also got a sample, and reported that heat dissipation worked well, and that overall Hardkernel had a done a very good job.

While power consumption of the system is usually 5 to 10 Watts, it may jump to 20 Watts under heavy load with USB devices attached, so a 5V/4A power supply is recommended with the SATA drive only, and 5V/6A if you are also going to connect power hungry devices to the USB 2.0 port. The company plans to manufacture ODROID-HC1 for at least three years (until mid 2020), but expects to continue production long after, as long as parts are available.

$15 Orange Pi Zero Plus Board Released with Allwinner H5 SoC, Gigabit Ethernet, WiFi, and SPI flash

August 12th, 2017 32 comments

We had Orange Pi Zero, followed by Orange Pi Zero Plus 2, then Orange Pi Zero Plus 2 H5, but now there’s another “Zero” model that’s called Orange Pi Zero Plus, which like Orange Pi Zero Plus 2 H5 board is based on Allwinner H5 processor, but adds a faster Gigabit Ethernet port, and offers a fairly different features set compared to the first Orange Pi H5 board, albeit in the same form factor.

Click to Enlarge

Orange Pi Zero Plus specifications with highlights in bold and stricken-through showing difference with Orange Pi Plus 2 H5 model:

  • SoC – Allwinner H5 quad core Cortex A53 processor with hexa core Mali-450MP4 GPU
  • System Memory – 512 MB DDR3
  • Storage – 8GB eMMC flash, micro SD card slot + 2MB SPI flash
  • Video Output – HDMI ; AV port via 13-pin header
  • Connectivity – Gigabit Ethernet, 802.11 b/g/n WiFi (Realtek RTL8189FTV) with u.FL antenna connector and external antenna. No Bluetooth
  • USB – 1x micro USB OTG port, 1x USB 2.0 host port
  • Camera – MIPI CSI port
  • Expansion headers
    • Unpopulated 26-pin “Raspberry Pi B+” header
    • 13-pin header with headphone, 2x USB 2.0, TV out, microphone and IR receiver signals
  • Debugging – 3-pin serial console header
  • Misc – 2x LEDs for power and status
  • Power Supply – 5V via micro USB port
  • Dimensions – 48 x 45 mm
  • Weight – 26 grams

The eMMC flash is gone, but has been replaced with an SPI flash that should allow for network boot without micro SD card. HDMI output is gone, so your only video output option would be via the video composite signal on the 13-pin header. Bluetooth is gone as they replaced the Ampak module by a Realtek one, and the camera connector. All those differences means the two Orange Pi H5 boards have different uses case, with the new board is better suited to headless application where you need Gigabit Ethernet connectivity, and potentially want to save a few dollars on the board price, and remove the need for storage (if you use network boot).

The board should also be compatible with Orange Pi Zero NAS expansion board, so you’d have an inexpensive micro NAS with performance and price that rivals with FriendlyELEC NanoPi NEO 2 NAS kit, minus the enclosure. 2017 has been an exciting year for affordable networked storage so far, with various options from the two lower-end solutions aforementioned, to the better upcoming ODROID-MC1, and the higher end EspressoBin board, with some interesting work also taking place on ROCK64 board.

Software-wise, it may be worth noting that there’s no stable Armbian build so far, but there are experimental Ubuntu Xenial images for Orange Pi Zero 2 H5 board with mainline Linux kernel, which should work on the new board by just changing the DTB file. However, I did use NanoPi NEO2 with Allwinner H5 as a OpenMediaVault NAS, and it worked well enough, so I would not worry too much about software support for this use case. I’m not sure about U-boot support in the SPI flash, but hoping for some feedback in the comments section.

Orange Pi Zero Plus is sold for $14.90 plus shipping ($18.29 in total here). If you’re interested in mini NAS / home cloud system, you’ll need to add the NAS expansion board for $6.98, which in my case brings the total to $27.13 including shipping. A direct comparison with NanoPi NEO2 NAS kit is not possible, since Shenzhen Xunlong micro NAS solution does not include a case, nor heatsink, but for reference, a complete NAS kit v1.2 with NEO2 board goes for $28.98 plus shipping, or $44.98 in total in my case.

Hardkernel to Launch Stackable $49 ODROID-HC1 Home Cloud & $200 ODROID-MC1 Cluster Solutions

August 10th, 2017 59 comments

Hardkernel ODROID-XU4 board is a powerful – yet inexpensive – ARM board based on Exynos 5422 octa-core processor that comes with 2GB RAM, Gigabit Ethernet, and a USB 3.0 interface which makes it suitable for networked storage applications. But the company found out that many of their users had troubles because of bad USB cables, and/or poorly designed & badly supported USB to SATA bridge chipsets. So they started to work on a new board called ODROID-HC1 (HC = Home Cloud) based on ODROID-XU4 design to provide a solution that’s both easier to ease and cheaper, and also includes a metal case and space for 2.5″ drives.

Click to Enlarge

They basically remove all unneeded features from ODROID-XU4 such as HDMI, eMMC connector, USB 3.0 hub, power button, slide switch, etc… The specifications for ODROID-HC1 kit with ODROID-XU4S board should look like:

  • SoC – Samsung Exynos 5422 quad core ARM Cortex-A15 @ 2.0GHz quad core ARM Cortex-A7 @ 1.4GHz with Mali-T628 MP6 GPU supporting OpenGL ES 3.0 / 2.0 / 1.1 and OpenCL 1.1 Full profile
  • System Memory – 2GB LPDDR3 RAM PoP
  • Storage – Micro SD slot up to 64GB + SATA interface via JMicron JMS578 USB 3.0 to SATA bridge chipset
  • Network Connectivity – 10/100/1000Mbps Ethernet (via USB 3.0)
  • USB – 1x USB 2.0 port
  • Debugging – Serial console header
  • Power Supply
    • 5V via power barrel
    • 12V unpopulated header for future 3.5″ designs [Update: ODROID-HC2 is in the works, to be released in November 2017]
    • “Backup” header for battery for RTC
  • Dimensions & weight – TBD

Exynos 5422 SoC comes with two USB 3.0 interfaces and one USB 2.0 interface, and since USB 3.0 interfaces are used for Ethernet and SATA, that’s why they only exposed a USB 2.0 port externally. The metal frame supports 2.5″ SATA HDD or HDD up to 15 mm thick, and it also used as a heatsink for the processor. The company tested various storage devices including  Seagate Barracuda 2 TB/5 TB HDDs, Samsung 500 GB HDD and 256 GB SSD, Western Digital 500 GB and 1 TB HDD, HGST 1TB HDD with UAS and S.M.A.R.T. function.

The fun part is that you can easily stack several ODROID-HC1 kits on top of each other, and you could use Ceph filesystem (Ceph FS), if you want the stacked boards to show as one logical volume [Update: This may not work well due to lack of RAM and 32-bit processor, see comments’ section]. The price is not too bad either, as ODROID-HC1 is slated to launch on August 21st for $49 + shipping with the board and metal frame.

But the company did not stop there, as they found out it was rather time-consuming to setup a 200 ODROID-XU4 cluster in order to test Linux kernel 4.9 stability, and also designed a ODROID-MC1 (MC = My Cluster) cluster with 4 boards, a metal frame and a large USB powered heatsink.

Click to Enlarge

The solution is based on the same ODROID-XU4S boards, minus the SATA parts. It’s also stackable, so building that 200 board cluster should be much easier and faster to do. The solution is expected to start selling for $200 around the middle of September, and on the software side some forum members are working on Docker-Swarm. Hardkernel is also interested in sending samples to people who have cluster computing experience.

Thanks to Nobe for the tip.

ROCK64 Board Review – Part 2: Quick Start Guide with Ubuntu 16.04.3 MATE, Multimedia Features, Some Benchmarks

August 7th, 2017 15 comments

Pine64 ROCK64 is the first maker board based on Rockchip RK3328 processor, and is potentially interesting for various applications including network storage thanks to USB 3.0 and Gigabit Ethernet, multimedia applications with 4K HDR video support, as well as other applications requiring I/Os. I’ve already tested Rock64 board with Android 7.1 operating system, so today I’ll report by finding and experience with Ubuntu 16.04.3 with MATE desktop.

Selecting and Flashing a Linux Image

You’ll find several operating systems in the Wiki, but you’ll also find more cutting edge images in ayufan’s github. But first let me explain some vocabulary used for Pine64 firmware files:

  1. Engineering version – Becomes with release build based on the stock build develop by Pine64 and the SoC vendor. It’s supposed to be more stable, but get less updates
  2. Community versions (currently managed via ayufan) are more frequently updates, and comes with more recent features. You’ll find two categories
    1. Release builds – The current stable version released by the community
    2. Pre-release builds – Version under test to eventually become the release build

Currently, documentation is still work in progress for the board, so I spent some time on IRC #Rock64 chatting with the helpful community there, and I noticed most of them used the community builds. I’ve also been told there has not been that much work on the Desktop version right now, with most people focusing on NAS support with images such as Debian + OpenMediaVault. But since I wanted to test a desktop image I was recommended the Ubuntu Mate image, and download the pre-release 64-bit version: xenial-mate-rock64-0.4.17-85-arm64.img.xz.

If you’ve read the WIki, you’ll notice all those are “micro SD” images, so since I had a eMMC flash module, I was a little confused at the beginning, but since I have Hardkernel’s micro SD to  eMMC flash module adapter, installation was just the same as on a micro SD card with Etcher.

Top to Bottom: ROCK64’s 16GB eMMC flash Module, Hardkernel adapter, and micro SD card reader

But Pine64 does not sell such adapter, so how are you supposed to do with you bought an eMMC flash module? I’ve been explained you first need to flash a micro SD card with the image, and then interrupt the boot in u-boot (USB to TTL debug board required), remove the eMMC jumper, and continue the boot by typing “boot”. This has be to be done, or you won’t see the eMMC flash module, while booting from a micro SD card.

Now you can download, and flash the firmware to the eMMC flash module with curl:

Not the most user-friendly method, but it should work. If you don’t have a USB to TTL board, first you should really buy one, but for this specific case, you could remove the eMMC jumper about two seconds after applying power. In that case, your mileage may vary though… Pine64 is working on an easier method of installation to the eMMC flash module.

Rock64’s Ubuntu 16.04.3 MATE Boot, System Info, and Initial Setup

Since I want to get the boot log, I connected the USB to TTL board. There’s no dedicated UART connected on the board, so I download the GPIO pinout charts for Pi 2 Bus and Pi 5+ Bus from the Wiki, amd we’ll use it to test GPIOs later on.

Pi 2 Bus – Click to Enlarge


Pi 5+ Bus – Click to Enlarge

UART Tx and Rx can be found on respectively pin 8 and 10 of Pi 2 Bus header, so I connect the debug board accordingly, together with USB keyboard and mouse, a USB harddrive, Ethernet and HDMI cables.

Click to Enlarge

Finally I put the micro SD card into the board, applied powered, and after a few seconds, I got to the Ubuntu MATE desktop. however, I only got ribberish in the serial console, which was set to 115,200 8N1, the most common settings “in the universive”. There’s currently no info about serial console setting in the Wiki, but a web search lead me to the right settings: 1,500,000 8N1, which apparently is the default in Rockchip SDK.

This high bitrate may cause troubles with some serial adapter, but after changing minicom settings accordingly, I had no trouble with the serial console. That’s the complete boot log after a reboot:

We can now login with rock64/rock64 credentials in the desktop or the serial console:

I checkout some infor about CPU, storage, memory usage, and Linux & Ubuntu versions:

I have the 1GB version of the board, and the firmware is based on the latest Ubuntu 16.04.3 LTS release with a fairly recent Linux 4.4.70 kernel. However, we can see that with just 4.8GB capacity the rootfs partition has not been automatically resized during the first boot. So let’s run the relevant script, and check again:

All good, as we now have a 14GB rootfs partition. It’s worth noting the other scripts in /usr/local/sbin too:

Modules and GPIOs on Rock64

The next step was to check pre-loaded modules and GPIOs:

Only uas and usb_storage modules are loaded, which shows people are truly focusing on the NAS part right now, or some other drivers are directly built-into the kernel. GPIOs need to be exported manually, and a quick search lead me to that forum post (again no info in the Wiki right now).

You need to convert the gpio pin name as shown in the pinout diagram (e.g. GPIO3_A5) into a raw number using a formula combining bank number (3), pad name (A) and pad number (5). marcushh777, who is also a helpful member on IRC, wrote a Python script to do just that, and you may want to create that script in /usr/local/sbin/

The file is also on Github so you could use wget or curl instead:

We can now run the script with the GPIO we want to use…

… switch to root, then use sysfs to export the gpio number and set the direction, and switch the GPIO to high and low levels:

I connected a 5V LED to GPIO3_A5 pin via a transistor and could turn it on and off with the last two commands above.

Eventually, a PDF document will be uploaded to the Wiki, but it does not appear to be ready yet. I was unable to find info to use I2C or SPI at this stage.

GPU (OpenGL ES) and VPU (Video Decoding) Testing

GPU and VPU support are often problems in Linux on ARM, and while I had low expectation, I still tried those by installing the usual OpenGL ES demo to test Mali GPU support:

I ran es2info first, and Mali-450MP GPU support is indeed enabled:

That command ended in a segfault however. Not too reassuring.

So I ran es2gears demo, but could not take a screenshot, as all screenshots were black with only the mouse pointer showing up, so instead I some photos, and it works, but the transparent window is unlikely to be normal.

Performance does not appear to be optimal right now however with just around 35 fps.
glmark2-es2 demo started well too…

Click to Enlarge

… but some features are not supported (maybe normal), and it crashed at the end as shown in full log below:

The results are actually better than I expected, but there’s still some work.

I tried to play 1080p60 H.264 Big Buck Bunny video with VideoLAN (VLC) first, and all I got was the first frame with changing artifacts around the bufferfly, and I had somewhat better luck in SMPlayer with the video playing almost smoothly in windowed mode, and some saturated and accelerated audio. Switching to full screen mode would just show a black screen, until I was asked to signing again a few seconds later…

So video playback is basically unusable at this stage in the Ubuntu MATE image, and you’d better go with Android, or potentially LibreELEC currently released as alpha for ROCK64 board.  LongChair also told me in IRC that “we have ffmpeg / mpv working on rock64 … we need to do more testing and get a few bugs fixed by rockchip before I finally upstream that to ffmpeg / mpv”, so video support is definitely coming. It’s just not ready yet. Another person informed me that contrary to Amlogic, Rockchip does not use AFBC (ARM Frame Buffer Compression) natively, and the memory bandwidth is critical, 4K H.265 HDR videos may not always play that well in RK3328. I’ve been told it may take one to two more months for 4K support in Linux, and that 1080p is now supported but not released just yet in the Ubuntu image.

Storage and Networking Benchmarks

I’ll skip the Phoronix benchmarks in this review, as we’ve had so many ARM Cortex A53 platform the results won’t be much better, unless there’s a bug, which would eventually be fixed. Instead, I’ll focus on storage and network performance on Rock64, since it may vary between boards.

Those are the results for the 16GB eMMC flash module:

Up to ~115 MB/s read speed, and ~69 MB/s write speed, and good random I/O too. For reference, Ubuntu boots in 17 seconds from power on to the login screen.

I then tried to create the iozone test on the NTFS partition of my hardware, but it failed because NTFS is read-only.

That can happen because of file system error, or because the image using the NTFS kernel module that provides read-only access only. So I installed ntfs-3g instead:

and remounted the drive inside the file manager in the desktop.

You can see the type is now “fuseblk” instead of “ntfs” – meaning the userspace ntfs-3g driver is used – , and the partition mounted as read/write.  So I could run iozone on the NTFS partition:

Something is clearly wrong with the read speed: up 271 MB/S is not right, as it’s much higher than what my USB drive is capable of (~115 MB/s) on my main PC. That means caching must be involved here, so I’ve increased the file size to 500 MB in the test:

and the results are much more realistic, except for the random read with 16384 reclen. It shows up to 119 MB/s reads, and up to 92 MB/s writes, which means everything is working as expected. So I repeated the test with the EXT-4 partition:

The results are a bit lower at 96 MB/s read and 94 MB/s write, but still pretty good for a mechanical drive over USB 3.0.  It should be noted that performance decreases the closer you are from the center of the drive. The NTFS partition in the first quarter, and the EXT-4 in the second quarter of the drive, and I got 108 MB/s with the first partition (NTFS) and 96 MB/s with the second partition (EXT-4) using “Disks” utility in Ubuntu when I first bought the drive. Other people have reached close to 400 MB/s with SSDs over the USB 3.0 port of ROCK64 board, but for most people getting to around 100 MB/s should be enough for their data.

Finally I tested Gigabit Ethernet by doing the usual full duplex test with iperf:

That’s OK, but not overwhelming, maybe it will improve with a more recent kernel as with some other platforms. I also did a download-only test with iperf3, and it could do so at around 933 Mbps: