

Building a tiny ARM-based server - ttsiodras
http://users.softlab.ece.ntua.gr/~ttsiod/arm.html

======
gwu78
Well done, OP.

I forsee Apple and Google (and Microsoft?) devices will increasingly be aimed
solely at consuming content. This will be the "interactive television" of the
future.

If you haven't noticed, it is not easy is it to turn an iPad into a
router/server. Perhaps it was not meant to be. It is an "interactive TV", for
sharing and consuming content. These type of devices are not under the control
of users; they are ultimatly controlled by large corporate interests, in the
same way that TV is the medium of government and large corporations. That is
not "revolutionary", just business as usual.

As such, I posit that it is another computer -- the computer that retrieves
data from the internet and sends the content to your TV-like device -- that is
the most interesting, and hence the most "revolutionary". That is your
router/server. The OP, a programmer, calls it "one of [his] best hacks."

This I believe is the "PC" of the future. The "PC" was at one time a
revolutionary device that brought the power of computers, once reserved only
for those who could purchase and administer mainframes, to the home and
business. Where would Apple, Google if not for the PC revolution?

I believe the home router/server (not your beautiful form factor, high priced
device) is, going forward, the "PC" of the future. This is the device that you
can program for free, that can run open source software, including an open
source OS of your choice, that you the user can fully control, and where real
innovation can occur. This is where the "PC revolution" can continue.

The OP says he does not see why there should be a separation between
programming and administration (e.g., a subset of programming that, allong
with basic networking know-how, allows the user to install and configure her
own "server" at home).

As a user, if I could only master one and had to choose between the two, I'd
pick administration over programming. This is because I feel it is more useful
to me as a user (like the OP, "one of my best hacks"). As such, I am biased
toward administration and believe if there is to be another "PC revolution" I
believe it should be focused on the home server/router and, if so, must be
lead by those who can at least administer computers performing these crucial
functions.

~~~
RaphiePS
I agree that the "curator" role you're describing will be important, but I
doubt it'll come in the form of user-programmed home servers.

Sure the techie types will always want to get into the nitty-gritty, but my
mom can't even set up a router, let-alone program it.

I think the future is cloud-based (ugh, buzzwords, but true) services like
IFTTT ([https://ifttt.com/](https://ifttt.com/)) that let non-technical users
manipulate content/events without touching code.

~~~
gwu78
It is the "techie types" I'm focused on. They are the ones who drive progress
in computing, not your mom.

When every device in your home is connected to a public network, I imagine
that you, a techie type, are going to want some control over what and how
those devices communicate with the public network.

That control will not likely come through the device (at least, not easily,
anyway). However it could come through your router/server.

------
ah-
After being not very satisfied with OpenWRT on a router as a fileserver (it's
great overall, but file transfers are just too slow), I'm now using an IFC6410
as my home server.

It doesn't use much more power than the linked NAS device, but comes with
basically the same hardware as the Nexus 4, on a nice board with all those
useful connectors. Quad-core 1.5 Ghz CPU, 2GB of RAM, SATA and Gigabit
ethernet.

~~~
jsundquist
This is something I am looking for to experiment with. Where did you buy your
IFC6410? I keep looking for a source of ARM based machines where I can play
with Linux or Android...but in a different form factor than a phone (Something
I could put on top of my rack), and a little more power than a Raspberry PI.

~~~
ah-
I bought mine directly from inforce
([http://www.inforcelive.com/index.php?route=product/product&f...](http://www.inforcelive.com/index.php?route=product/product&filter_name=ifc6410&product_id=53)).
There are a few similar boards like the odroid-xu, but the IFC6410 is
currently the only one with both SATA and real gigabit ethernet, not something
attached via USB. And it uses the GPU with the best open source driver support
([https://github.com/freedreno/freedreno/wiki/Ifc6410](https://github.com/freedreno/freedreno/wiki/Ifc6410)),
so it runs the full Gnome 3 desktop and even weston/wayland.

There's a small community forming around the board, so there's some degree of
support available. But currently it's not comparable to what's available for
the Raspberry PI, you still need decent linux skills to set it up. But that's
half the fun anyways.

~~~
voltagex_
Thank you!

I've been looking for something to replace my Dreamplug for a while and this
might do it

------
riobard
Great post!

On a side note, for the newer (not the newest) edition of the WD My Book Live
(and its 2-disk brother My Book Live Duo) NAS device, the OS is a full-
featured Debian already, and you can easily enable SSH to login and `apt-get`
almost everything you want. The processor is a MIPS one, though, not an ARM
one, which might affect the availability of Debian packages. However, I've
heard the newest edition called WD My Cloud NAS runs on an dual-core ARM
processors.

People who are less hardware-hack-oriented (like myself) should definitely
give those a try.

~~~
joezydeco
Or you could buy a Beaglebone Black. I did the exact same project above, with
more memory and way faster speed for $49. I just nfs-mount my drive instead of
using the onboard SATA.

~~~
riobard
I looked at the alternative ARM boards too, but unfortunately they are only
100Mbps ethernet, which is really slow for a media server :(

Any ideas of boards with gigabit ethernet?

~~~
joosters
Also worth checking that the hw is good enough to fill a gigabit connection.
Many of the cheaper machines (for instance, the WD MyBook World, like in the
article) cannot really sustain gigabit disk<->network transfers. The limiting
factor is often the CPU or a slow bus connecting the NIC, hard drive and CPU.

~~~
nodata
Some hardware (such as the raspberry pi) has its network speed limited by the
usb network adaptor.

------
joosters
Great post. I've got an old WD MyBook lying around, I should try and get some
use out of the thing.

You don't have to hack it too much in order to get a 'full' linux on there.
You can enable SSH access on the system via the web UI. From there, you can
set up a simple packaging system to install most other common binaries (and a
functioning build environment to add anything else)

Take a look at:
[http://mybookworld.wikidot.com/optware](http://mybookworld.wikidot.com/optware)
for instructions.

------
cpg
This is pretty cool and (disclaimer) the reason I started Amahi: running a low
power home server for my media.

If you are interested in this space, join the Amahi community! People
interested in building hardware are especially welcome
[https://www.amahi.org](https://www.amahi.org)

Edit: one person asked how to join - there's the forums and there are the
github repos to contribute[2]. There is also the developer mailing list[3]

[1] [https://forums.amahi.org](https://forums.amahi.org) [2]
[https://github.com/amahi](https://github.com/amahi) [3]
[http://sourceforge.net/p/amahi/mailman/amahi-
devel/](http://sourceforge.net/p/amahi/mailman/amahi-devel/)

------
h2o2
FYI the freedom box project had a list of hardware you can buy for this type
of thing. It sounds like raspberrypi 's raspbian project isn't really
considered a Debian in their eyes, and instead the ones on list run a purer
Debian than the pi.

[https://wiki.debian.org/FreedomBox/TargetedHardware](https://wiki.debian.org/FreedomBox/TargetedHardware)

------
spiznnx
nas-central.org is full of useful information about hacking with different NAS
hardware. It helped me install debian with a custom kernel on my Lacie NAS
without even opening it up.

------
zachwill
Great post, OP. Always love this type of HN content the most.

~~~
ttsiodras
Thanks! I really enjoyed building the thing :-)

------
csense
As someone who doesn't own a soldering iron, I've found the $35 Raspberry Pi
board [1] [2] [3] to be an excellent choice as a low-cost low-power general-
purpose ARM-based server.

It also has a number of GPIO pins, UART, i2c and SPI, which may be of interest
to those who do own soldering irons :)

[1] [http://www.raspberrypi.org/faqs](http://www.raspberrypi.org/faqs)

[2] A model with no Ethernet is available for $25, but Ethernet is kind of
non-optional for a server :)

[3] The price doesn't include power supply, case or boot media.

~~~
stusmall
While we are plugging fun toys I'm going to piggie back on your comment, for
those who don't own a soldering iron the Weller WES51 [1] is great! Extremely
high quality, great selection of tips, very durable and reliable. You get by
far the most for your money with it. The price is low enough for a hobbyist
but the quality is high enough for some professional work.

[1]
[http://www.amazon.com/dp/B000BRC2XU/?tag=googhydr-20&hvadid=...](http://www.amazon.com/dp/B000BRC2XU/?tag=googhydr-20&hvadid=27113928363&hvpos=1t2&hvexid=&hvnetw=g&hvrand=2823871302008355468&hvpone=&hvptwo=&hvqmt=b&hvdev=c&ref=pd_sl_4h0bek3vqx_b)

------
jotm
This is all very cool, but I can't help but think that it would be easier to
get a used 12" HP 2530p for ~$150, install 2 hard drives inside it, install
whatever distribution of Linux you want and connect it via its fast Gigabit
port.

Less headache (though not as fun!), more storage space, less latency, more
processing power at a still very low power consumption :-)

------
aduitsis
Always agreeable to see a link from softlab.ntua.gr high in the HN front page!

~~~
atmosx
any .gr would do the job for me :-P

------
phaer
Are there any suggestions for a low-energy (possibly arm) server with raid 1?
I guess software raid over USB would not be very satisfying, right?

~~~
joosters
Synology NAS servers will do that. Many of them are ARM-based, they run Linux
- albeit a cut-down version, but there are add-on package managers to install
more stuff (and SSH access is available without any hacks). They are quality
IMO. However, they are not cheap hardware.

