Hardkernel is a Korean company that makes various embedded ARM based systems, which it calls ODROID.
One of their products is the ODROID-HC1, a mini NAS designed to take a single 2.5″ SATA drive (HC stands for “Home Cloud”) which comes with 2GB RAM and a Gigabit Ethernet port. There is also a 3.5″ model called the HC2. Both of these are based on the ODROID-XU4, which itself is based on the previous iteration ODROID-XU3. All of these are based on the Samsung Exynos5422 SOC and should work with the following steps.
The Exynos SOC needs proprietary first stage bootloaders which are embedded in the first 1.4MB or so at the beginning of the SD card in order to load U-Boot. As these binary blobs are not re-distributable, Fedora cannot support these devices out of the box, however all the other bits are available including the kernel, device tree and U-Boot. So, we just need to piece it all together and the result is a stock Fedora system!
Note that the default Fedora 27 ARM image does not support the Realtek RTL8153 Ethernet adapter out of the box (it does after a kernel upgrade) so if you don’t have a USB Ethernet dongle handy we’ll download the kernel packages on our host, save them to the SD card and install them on first boot. The Fedora 28 image works out of the box, so if you’re installing 28 you can skip that step.
My home automation setup will make use of Arduinos and also embedded Linux devices. I’m currently looking into a few boards to see if any meet my criteria.
The most important factor for me is that the device must be supported in upstream Linux (preferably stable, but mainline will do) and U-Boot. I do not wish to use any old, crappy, vulnerable vendor trees!
The Orange Pi One is a small, cheap ARM board based on the AllWinner H3 (sun8iw7p1) SOC with a quad-Core Cortex-A7 ARM CPU and 512MB RAM. It has no wifi, but does have an onboard 10/100 Ethernet provided by the SOC (Linux patches incoming). It has no NAND flash (not supported upstream yet anyway), but does support SD. There is lots of information available at http://linux-sunxi.org.
Note that while Fedora 25 does not yet support this board specifically it does support both the Orange Pi PC (which is effectively a more full-featured version of this device) and the Orange Pi Lite (which is the same but swaps Ethernet for WiFi). Using either of those configurations should at least boot on the Orange Pi One.
Shrinking the die down to 28-nanometer will provide a 40% performance increase and reduce power consumption by 30%. It should be available later this year. Now that will certainly be something for Intel to think about..
I bought a D-Link DNS-323 NAS box a while ago with the mind to put Debian on it (it already ships with Linux, but I wanted more control). Previously I installed Debian under a chroot environment which activated itself on boot, but it wasn’t really clean or nice.
I came across a blog post by Martin Michlmayr where he talks about getting Debian working on a CH3SNAS, and mentions he might write an installation guide. I emailed him encouraging him to do so, and that I’d be happy to test it for him and provide feedback. He replied with his information once it had started to take shape. Today I finally had a chance to test it out.
Although the box has a gigabit network card, it never transferred anything fast enough to prove it. Copying a 4GB ISO file took 31minutes, averaging around 2.2MB/sec rate which is not even 100Mbit speed. So don’t expect to be serving up high definition movies to your network from this box.
Anyway, if you have one of these boxes, then I highly recommend that you give this a shot. Debian on a tiny little appliance.. it doesn’t get much better than that!
Update: There are some things which don’t work, most of which I didn’t care about, except one. Fan control. I figured this meant the fan couldn’t speed up and slow down based on internal temperatures, but it actually means “fan doesn’t work at all”. The result is that drives can run hot, damn hot in that little box without any air flow. Something to think about if you’re going to install native Debian.