NanoPi NEO is a tiny board with Fast Ethernet and USB 2.0 interface, so in theory it could make a nice low-end NAS as long as you don’t need the best performance. As always the problem is that there was no case for it, but FriendlyELEC changes that as they just launched a 1-bay NAS Dock Kit for NanoPi NEO / NEO 2 board selling for just $12.99 (promotional price at launch).
The kit comes with the following:
- 1-bay NAS Dock expansion board with
- JMicron JM20329 USB to SATA bridge
- SATA connector for 2.5″ HDD drive
- Extra USB host port
- On/off switch, and dual color status LED
- Header to connect NanoPi NEO board
- 12V DC power input
- Dimensions – 151 x 89.7 mm
- NS-120 aluminum enclosure (154 x 100 x 47.5 mm, 4141 grams)
- Heatsink set for NanoPI NEO
- M3 6mm screws, M2.5 6 mm screws
- Four rubber pads
- Front and back covers
The company provides an OpenMediaVault image and all instructions on the Wiki. Talking about performance, FriendlyELEC gave me a comparison table showing USB to SATA performance for NanoPi NEO (512MB), Raspberry Pi 3 board, and Synology DS916+ NAS.
The USB to SATA speed is actually pretty much as expected considered data is going through a USB 2.0 interface, and somewhat comparable to the values I get doing USB storage tests on Android TV boxes. We can also see the performance on Raspberry Pi 3 is about the same as with NanoPi NEO + NAS Dock, but obviously not matching actual NAS with a native SATA interface. Nevertheless, all this does not matter that, as once the 32 MB/s get down to the Fast Ethernet port in NEO board, it has to drop to around 10 MB/s, which is why NanoPi NEO 2 is a better choice.
Tkaiser of Armbian community also had a look at the hardware and software, and one complain was the lack of UASP support on Jmicron JM20329 chip which would yield slightly better performance, and the OpenMediaVault image relies on Linux 3.4.39 which lacks many security updates (the latest available version is 3.4.113). If you prefer having a recent Linux kernel, it’s always possible to install Armbian, plus whatever NAS software you’d like to use.
Nevertheless, it’s difficult to beat the price as with $12.99 for the NAS board and enclosure, $9.99 for NanoPi NEO 512MB RAM, and a few extra dollars for shipping you get a complete NAS solution with limited performance, but that should still work as well as current Raspberry Pi NAS solutions on the market. Just add a micro SD card with the operating systems of your choice, a 2.5″ hard drive or SSD, and a 12V/2A power supply, and you’re done.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress
wow ..very nice casing ..
I commited minutes ago an OpenMediaVault installer routine to Armbian’s build system so anyone can now build OpenMediaVault OS images relying on mainline kernel and using more sane settings (not just for NEO but ~50 SBC).
The idea is to fully automate building of the OS image (that’s what Armbian’s build system is made for in the first place) so people don’t have to use OMV images they find somewhere on the Internet. Two show-stoppers with this approach:
1) Postfix installation does not finish within the cross-compiling chroot (smelly like Ubuntu bug 1531299) so the installer function patches Armbian’s firstrun procedure so that the first boot of such an image needs network connectivity and 2-3 minutes to finish installation. Will then reboot one time and then OMV is ready (http://openmediavault.local)
2) for whatever reasons a default OMV installation overwrites /etc/defaults/cpufrequtils with
These settings might be ok for x86 boxes but ruin performance with most ARM kernel variants so now part of the installation is to backup Armbian’s settings first and restore them after OMV installation.
Am generating OMV images for a Banana Pro (SATA) and a ClearFog Pro (SATA that doesn’t suck) just now to test through and anyone able to read through Armbian’s documentation is encouraged to test also (FriendlyELEC could now generate mainline kernel OMV images by themselves, we’re already in contact regarding this).
BTW: You get RTL8153 USB3-GbE-dongles for as less as $7 (see link above to Armbian forum). With this inserted NAS performance even with H3 NEO will improve from ~8MB/s to +30MB/s (requires mainline kernel).
Can You put a lipo battery inside this case? Shame they didn’t add a stereo jack to serve some music. Or are the I2S pins still reachable?
I will await the NEO 2 kit, maybe they will add a usb3 to sata chip and possiblity to add a lipo and a I2S dac.
Then there is still something I didn’t have time to look at yet: is htere a kind of garbage collector to unmount usb devices after disconnecting them? Now on my cubie 1 I automount usb drives and dvd-roms as a normal user, but when I unplug them the created mount folders are still there. Probably I just use the wrong software: https://github.com/LemonBoy/ldm
“it’s difficult to beat the price as with $12.99 for the NAS board and enclosure, $9.99 for NanoPi NEO 512MB RAM, and a few extra dollars for shipping you get a complete NAS solution with limited performance”
… it will be only complete with the additional “12V 2A Universal Power Adapter (+$9.89)”
@roel
You can put a battery inside but won’t get charging and voltage control without adding your own circuitry (the Allwinner H SoCs are not accompanied by a PMIC). Audio pins are all available so you either modify the side cover yourself, drill some holes somewhere or simply use a 3D printed replacement for the side cover (and are then also able to use it with NEO 2 or if you like it ugly even with NEO Plus 2 too 😉 )
@Sander
There’s some hope that it’s the usual 12V connector (5.5/2.1mm barrel, centre positive)
a 12V-2A PSU is 1.8$ on ebay
Please make the neo 2 one support 3.5 hard drives
Regarding the software side: https://forum.armbian.com/index.php?/topic/3953-preview-generate-omv-images-for-sbc-with-armbian/
@tkaiser
Yes, it’s an universal 5.5/2.1mm connector, you can find the 12V PSU everywhere easily.
“it’s difficult to beat the price”. nope. just do-it-yourself. http://imgur.com/a/jFygV inside: microamp (with direct to speakers connectors) and li-ion (18650, not shown). took some fiddling but works and looks acceptable 😉
@roel
If you want audio added to it just use an USB audio dongle. Not very expensive.
General: for a NAS I would have preferred a bit more RAM, but still quite a nice solution.
Wrt the measurements: It is interesting to see that the RPI3 SSD write is slower than the HD write.
And wrt the performance: 34 MB/s may seem slow, but with overhead it will eat 300-400 Mbit of network bandwidth.
This is just an indication that this is ‘benchmarking gone wrong’ as usual. When I saw that writes are ‘faster’ than reads then I already stopped reading (since this is the result of linux kernel happily caching so not ‘disk only’ but ‘buffers + disk IO’ — I never understood why people continue to mis-use dd/hdparm since both are no appropriate benchmark tools). On an RPi 3 with 1 MB blocksize you get close to 35MB/s sequential write and a little bit more than 37MB/s read: https://community.wd.com/t/technical-questions-regarding-pidrive/142658/2
On a NEO with mainline kernel and UASP capable USB-to-SATA bridge you can exceed these numbers. But that doesn’t matter at all since these are just numbers without meaning when it’s about overall NAS performance.
@Mindee
Thanks for confirming the specs, I hope you update wiki and product page soon. Regarding ‘real-world’ performance with NEO as NAS settings matter, I already wrote that OMV by default uses cpufreq settings that are only suitable for x86 (‘conservative’ cpufreq governor, interactive would be better for legacy and ondemand for mainline with some tweaks — see latest github commit), on these little ARM boards with single user NAS situations it could help a lot to start samba and similar daemons with ‘ionice -c1’ and then for NEO 2 you should have in mind that a 64-bit userland will need a lot more memory ressources than a 32-bit one. In other words: an armhf NAS distro for NEO 2 might perform faster even if the code runs 15%-20% slower since the bottleneck is somewhere else.
@FransM
Addendum: In active benchmarking mode one would look for each device to test in /sys/block/*/queue/rotational first (HDD or SSD) and then set /sys/block/*/queue/scheduler accordingly (today we can use noop, deadline or cfq IO schedulers and they do differently with HDD and SSD).
In passive benchmarking mode one wastes his time producing numbers without meaning 😉
BTW: In Armbian we check rotational at boot and try to set the IO scheduler accordingly. But this might not work with a NAS/OMV approach since users will also connect/disconnect USB disks later so settings like this have to be set event driven (though yet no idea how/whether OMV handles this). But Armbian’s settings for NEO since optimized for lowest consumption possible will always show a pretty low disk performance while with a more realistic NAS benchmark when network becomes the bottleneck on NEO it looks differently.
@FransM
I would encourage anyone wishing or perferring more memory to speak to friendlyelec and explain why and for what use.
Unlike build and run manufacturers Friendlyelec talk to and listen to their customers whether industrial, hobbiest or makers.
@Theguyuk
Man, can’t you just post your usual valuable opinions and please stop encouraging people to spam FriendlyELEC? They’re not that stupid as you might think.
Anyway, in the meantime the ‘active benchmarking’ approach regarding NAS/OMV and little ARM gems continues over there: https://forum.armbian.com/index.php?/topic/3953-preview-generate-omv-images-for-sbc-with-armbian/#comment-28825 (anyone willing to contribute feel free to join the party, this is not about ‘Armbian’ but only settings, installer routines and stuff like that to squeeze out the max out of this little gems)
Well hold on to your hats folk!
The Friendlyelec 1-bay Nas Dock at $6.99 is on sale and can be used by NanoPi Neo, Neo 2, Air
http://www.friendlyarm.com/index.php?route=product/product&product_id=185
@Theguyuk
It works with all NEO boards because there’s no case. That also explains why the price is so low.
@cnxsoft
To be honest: this Dock’s best companion is NEO 2 for obvious reasons (Gigabit Ethernet) and then it’s simply the wrong USB-to-SATA bridge since not UASP capable. 12V and step-down converter all nice but I’m really not that stupid to solder 36 pins to a board when only 4 are needed. So either FriendlyELEC provides kits with better bridge chip and pre-soldered pin headers for convenience or I simply walk to Aliexpress, search for ‘jms578 jeyi’, save some money, cut the cable and solder just power and USB data lines.
BTW: As part of the active benchmarking approach testing with NEO yesterday it came to my attention that there’s a lot wrong currently with Armbian + mainline kernel + NEO (DT/settings mismatches, old mainline Ethernet driver variant) so ‘NAS performance’ is a lot lower than necessary: http://kaiser-edv.de/tmp/lGtv38/Bildschirmfoto%202017-04-05%20um%2000.01.41.png
Currently building an OMV image for OPi One with new driver variant since there are 2MB/s missing in each direction 🙂
@cnxsoft
Wonder if you attach a 2.5 to 3.5 adaptor can you use 3.5 HHD, since no case?
@cnxsoft
I had a look in FriendlyELEC wiki… still no schematic released so we can only guess whether they were that smart to route the 12V also to pins 13-15 of the SATA power connector.
@Mindee
Can you please comment on that?
@Theguyuk
Not sure, but then it would not be such a neat solution with wires all over the place.
@cnxsoft
There’s no different connector for 2.5″ and 3.5″ SATA disks (was different with IDE back then) so all that’s needed is 12V on the connector: SATA power pins 13-15 feed the 12V a 3.5″ disks need for the spinner motor. And then maybe adjusting the PSU requirements to 12@2.5A is a good idea for some safety headroom with older 3.5″ HDDs and their insane spin-up peak consumption requirements. Since I’m such an electrics/electronics noob I fail to look at the PCB pictures and get a clue 🙂
@Mindee
Since situation with mainline kernel is still a bit too much WiP (tested today with montjoie’s latest dwmac-sun8i-v3 driver version and while network/iperf numbers look good there are some issues with ‘NAS performance’) and since Armbian’s build system can now generate OMV images for all supported devices here you go (OMV from scratch with latest 3.4.113 and all Armbian tweaks):
http://kaiser-edv.de/tmp/lGtv38/Armbian_5.27_Nanopineo_Debian_jessie_default_3.4.113.7z
Please note that this OMV image uses Armbian’s ‘IoT settings’ optimized for lowest consumption possible eg. limiting H3 to 912MHz/1.1V max. But even with these settings a quick LanTest showed NEO being faster in 5 tests and slower in only 2 compared to a Raspberry Pi 3 (and one of those two tests is irrelevant since only testing memory on Fast Ethernet boards). And unlike with Raspberries by adding a cheap RTL8153 USB dongle performance will increase by 3 times (but the same is true for every other H2+ or H3 board around with Fast or even no Ethernet).
You might also want to follow http://forum.openmediavault.org/index.php/Thread/17855 the next weeks…
If it has a USB 3.0 with UASP capability, its NAS performance should be 114~118MB/sec.
http://forum.odroid.com/viewtopic.php?f=146&t=26016#p183215
@Armer
Nice to see that people start to understand the importance of UASP slowly 🙂
I commented in ODROID forum why the 114~118MB/sec are mostly irrelevant and hope they start to use LanTest instead since this tool used in ‘active benchmarking’ mode can be used to fine-tune Samba, NFS and other filesharing daemon parameters. Looking at sequential transfer speeds of huge files only is just another attempt to fool yourself 🙂
I would like something like this for NAS purposes. I dont understand what the article means in “lack of UASP support?” I know what UASP means, but can you still transfer data from a computer to a hard drive attached to this Nanopi without removing the hard drive? Sorry I have never used any of these or raspberry pie computers before.
@mike
UASP will just improve performance, but as mentioned it does not really matter with this kit due to the 100Mbps bottleneck. You can still do transfer data from a computer to a hard drive and vice versa. Note that transfer speed will probably be limited to 8 to 10 MB/s.
I am looking for the Debian-for-nas images on the friendly arm wiki. Anyone know where they are?
I’ve got the dock, nanopi-neo (not 2), dock etc., but only have the debian or ubuntu images on their download list.
i’ve not gotten any update from them in response to my support email on this one.
I did get an email go by that said they had a problem with the original dock and are sending a replacement.
NanoPi Neo downloads here:
https://www.mediafire.com/folder/n5o8ihvqhnf6s/Nanopi-NEO#n5o8ihvqhnf6s
as of 5/4/17 didn’t find the
cffafd7dd050276e70c18629e09d772b ./official-ROMs/Debian-for-nas-20170405.img.zip
or its predecessor.
Thanks to Tkaiser for working on the openmediavault, am analyzing your approach and whether it will work with the Nanopi NEO (not 2) that I have.
@jim st
Sure it will work, if you have a NanoPi NEO PCB rev 1.1 or higher (those that don’t overheat that much any more) you can even use OMV build for Orange Pi Zero (since H2+ and H3 boards are the same anyway): http://kaiser-edv.de/tmp/NumpU8/ (contains more fixes and shows better performance than the older build I did for the NEO which generated zero feedback by FriendlyELEC).
Armbian currently switches the dev branches for H3, H5 and A64 boards from 4.10 to 4.11, maybe I’m in the mood to generate/test new OMV images based on that.
@jim st
Almost forgot: since running a NAS with Fast Ethernet only is somewhat stupid all my OMV builds are prepared to support Gigabit Ethernet USB dongles. There exist only two reasonable choices out there:
– ASIX AX88179 chipset
– RealTek RTL8153 chipset (better driver support and performance)
Try to get one that is based on RTL8153 (or just chose any USB3 Gigabit Ethernet dongle since it’s then either/or) and connect it on first boot of my OMV builds and the dongle will be supported from then on (otherwise you might need to adjust /etc/modules again). And never ever buy USB Ethernet dongles for USB2 since they all suck more or less, use USB3 gear even on USB2 ports (same with USB-to-SATA bridges!).
https://forum.armbian.com/index.php?/topic/3953-preview-generate-omv-images-for-sbc-with-armbian/&do=findComment&comment=29569 (performance is not stellar but at least 2-3 times higher than with Fast Ethernet)
@jim st
Isn’t the newer debian nas there ?
nanopi-neo_debian-nas-jessie_4.11.0_20170417.img.zip
https://www.mediafire.com/folder/umkhdtp5nkect/official-ROMs
NAS Kit v1.2 is out today, which support NEO1 & NEO2
@TH
That was quick! Information in wiki is (yet) not updated so one significant change is missing there: replacing the older USB-to-SATA bridge with JMS567 (UAS capable): http://wiki.friendlyarm.com/wiki/index.php/1-bay_NAS_Dock_v1.2_for_NanoPi_NEO/NEO2
It should also ne noted that after some discussion FriendlyELEC devs abandoned Allwinner’s smelly 3.4.39 kernel and use now 4.11 (though I still would like seeing them sending their stuff upstream so it’s really mainline kernel after patches got accepted)
Now I’m wondering what happened to position of Ethernet jack since at least in the past NEO and NEO2 were incompatible here…
@tkaiser
They just included two panels in the kit: one for NEO, one for NEO 2.
@cnxsoft
Good choice. I’ve checked schematics in the meantime and saw that VDD_SATA_12V is also available on pins 20-22 of the SATA connector. That means the ‘naked’ PCB they sell separately is fortunately also suitable for 3.5″ disks so looking forward to a 3.5″ enclosure version soon 🙂
@Mindee
I hope you adopted Armbian’s OMV tweaks already (IRQ affinity optimizations, IO scheduler and priority class improvements, necessary ondemand scheduler settings, use of flashmedia plugin to reduce wear on SD card)? In case that hasn’t happened already please do a web search for OMV and customize-image.sh — will provide a nice speed boost for free 🙂
And please think about starting aggressively advertising such NEO2 based OMV solutions. Based on OMV download statistics https://sourceforge.net/projects/openmediavault/files/ ~2000 RPi 2 or 3 users download OMV per week. A NEO2 based OMV setup is as energy efficient as RPi 2/3 but both less expensive and way more performant.