Enter the NanoPi M1+

NanoPi M1+Today must be my day for easy installs. The FriendlyArm NanoPi M1+ turned up this morning along with spare heatsink and antenna.

So first of all what is it? – this is a small SBC, a development from the Nanopi M1 which I’ve reviewed here before.  So is this worth reading? I would say YES. The M1+ comes complete with 8GB of EMMC which as we’ve seen with other boards makes a significant difference to speed. It can of course handle SD.

The most important features are:

  • H3-based (which means there is code out there for the GPIO)
  • Mali GPU
  • 1GB DDR3 RAM
  • 8GB eMMC
  • WIFI, Bluetooth (4.0 dual mode)
  • Gigabit Ethernet
  • 3.5mm Audio jack
  • Microphone on board
  • IR sensor
  • 2 USB-2
  • 2 USB Type A
  • OTG
  • DVP Camera
  • Serial Debug port….

As usual 4 serial ports, though one is debug and one will be tied up with Bluetooth – but that still leaves the Pi wanting.

tmp8DB7I opened up the box, downloaded the EMMC loader image from the FriendlyArm site onto a 16GB SD and ran it on the hardwired Ethernet connector. A box popped up offering to install one of two operating systems, I picked Debian. Minutes later I turned it off – took out the SD, turned it on and… working complete with LDXE. Size – around 70mm * 65mm.

I don’t remember an easier setup – everything worked including SCP access to both users FA and ROOT. I logged in as root from WinSCP, copied my script across – ran it – it created the Pi user, I logged in as Pi, ran the script and went off for coffee. Exactly 58 minutes later the whole thing was done and dusted with all my favourite software in place.

This time I’d put in a new addition to the script…AVAHI.  Once the script finished I popped into the HOSTS file and the HOSTNAME file and changed the name from “friendlyarm” to “m1plus” and rebooted the board.  Antonio who gave me this mod had assured me that this would now mean local access to the boards by name – which should work but hasn’t in the past.   I went to my browser on the main pc and typed http://m1plus.lan and sure enough – up popped the board. I tested all my main programs – all work. Actually, just http://m1plus works too.

I’ve not done any speed tests other than the script install which at 58 minutes is not bad…. but the whole thing has a good feeling of speed about it.  This could be my new favourite board. Up to now it has been the M3 boards but the fan noise is getting on my nerves a bit – need to sort that – the M1+ definitely does not need a fan.  I have hardwired Ethernet on one IP, WIFI on another – the WIFI is reporting a good signal WITHOUT an external aerial. I checked the Bluetooth and it immediately found my Bluetooth speakers.

So up to now, all looks good and as we’ve seen the H3 before there should be no horrible surprises anywhere.

I’ll let you know more about speed and reliability as I get into using this little board. Just a shame they’d not put the connector on for their LCDs… but hey – you can’t have everything.

Facebooktwittergoogle_pluspinterestlinkedin

55 thoughts on “Enter the NanoPi M1+

  1. Quite interesting...Congrats on your painless xPi experience finally 🙂

    For months I thought Orange Pi would come out ahead given the Armbian folks' hype about price/performance. They can't do the WiFi driver on the Orange PiZero, but claim to have "recommended" a SATA over USB 2 (!) board for the OPi0, instead of fixing basic issues. Don't know why they are so defensive about SD cards against eMMC, but it's their right to keep doing repair jobs.

    Only CHIP guys who hired the professional Free Electrons to mainline seem to have bucked the trend of orphan boards- 3D acceleration became available on their $9 board last November and they seem to be keeping the pace.

    So I got to try out this model after getting more feedback from you. I guess you are excited.

    1. Good to hear you not only found another board with EMMC onboard but that it plays well and has decent performance. I have the Orange Pi PC + and started to get going on it but stopped after hearing so many were having OS and support issues. Was hopefully when yesterday I heard Canonical was teaming with them to get Snappy Core running on the Orange Pi's.

      Now you have added another SBC which will probably find it's way to my door and become part of my array of ARM SBC's. Boy, I should start a Beowulf Cluster of these things. 😉

        1. Know anything about this? I've heard there's this thing called "The Script" and maybe it has some interesting things it can do on something like this pile of parts. 🙂

          We'll see where it fits in with the ODroid serving up 2 full LoRaWAN Multichannel gateways and the Beaglebone Black serving up data from the 3KW solar system and NFS from a 5.5TB RAID5 disk. But I'm running out of wall wart slots in my power strip.

            1. 🙂 yes, anyone who's been following your blog(like myself) should have a bit of a curiosity and a but of understanding of what The Script does. LOL, just looked to the right and under "Node Red Weather" is "The Script".

              Looking forward to playing. Will also be adding influx, Grafana and a local IoT server to the Odroid for balloon chasing and offline use.

              1. Well you are in luck as they've just recently upgraded Influx (which I can't help thinking is a work in progress)... some filtering that would not work before has started working for me. I'd still rather have a proper DELETE function for deleting a single point - I don't care HOW slow it is... however, with filtering of duff info - it does work and there is no doubt the graphs are pretty.

      1. Don't believe in every rumour spread. OPi PC + is pretty much the same as M1 Plus here just lacking BT and Gigabit Ethernet (and different pin-out on the 24 pin camera connector). But the eMMC Xunlong uses is way faster than those modules currently used by FriendlyARM (KLMxGxxEPD-B031 is rated for only 7MB/s (8 GB) or 12 MB/s (16 GB) sequential write speeds and). Fortunately FriendlyELEC's CEO promised to check that so there's some hope we get faster eMMC on NanoPis in the future.

        If Gigabit Ethernet isn't needed I still would prefer OPi PC + but that's due to prefering community software builds (for security reasons alone, I don't like to have devices running vulnerable to 'Dirty COW' for example).

        All those H2+, H3 and H5 boards are more or less the same from a 'software support' point of view (eg. it took me just an hour to add M1 Plus to Armbian even without having the hardware in my hands): https://forum.armbian.com/index.php?/topic/1351-h3-board-buyers-guide/#comment-28169

        But I fully agree with others: FriendlyELEC's own software offerings and support are outstanding (even more true now that they promised to focus on mainline kernel support for their OS images in the future)

        1. tkaiser, do you know any SBC or similar with 2 ethernet sockets? We'd like to try some sort of pfsense like firewall on these boards, to see how it works, but dual eth is a must (wan+lan) and a minimum (a 3rd for dmz would be great, but don't think there's something like this, without going to the Alix boards, which are very pricey...)
          thanks in advance

          1. Antonio, just check out Marvell's so called ESPRESSOBin based on ARMADA 3700. In fact it does not have 2 real independent NICs but combines one 2.5GbE implementation with an integrated network switch (connected to the SoC with 2.5GbE!).

            And the important detail regarding security is: The switch comes up in a state with all ports being physically separated. Only when the switch is configured by the OS it starts to either bridge packets or not (so unlike boards like Lamobo R1 where the switch comes up in dumb 'switch only' state) you can use this board really to implement 2 or even 3 independent NICs.

            You could also add another 'real' PCIe attached NIC like this https://aliexpress.com/item/Mini-PCIe-to-1Port-Gigabit-Card-Ethernet-Network-Adapter-10-100-1000M-For-Server/32707175554.html

            And those Marvell SoCs since made for NAS/routers can deal with high bandwidth unlike those phone and tablet SoCs we're dealing with all the time 🙂

            And the best detail: pfSense guys are already in and met personally with ESPRESSOBin makers. I guess we will add Armbian support for this board also in 2017 so if you favour Linux over FreeBSD you'll have multiple choices (good idea would be to ping IPFire folks to get their hands on ESPRESSOBin too).

            Another variant is using any RTL8153 dongle (those from Aliexpress for $8 will do but you can opt to buy the same stuff from Belkin, StarTech and others for $40 too 😉 ).

            Though being an USB(3) device it works quite well (it's the onboard GbE implementation on ODROID-XU4 for example, well supported by most OS already and even on USB2 ports able to perform pretty well: In NAS scenarios with an OPi Lite and an UASP capable disk with mainline kernel I got stable 35MB/s, latency is also pretty low and unlike the other USB3 alternative AX88179 stability/reliability isn't an issue here.

            BTW: Did you know that you can combine something like NanoPi NEO 2 with an el cheapo 'smart managed' switch supporting VLANs and then do almost the same with a single NIC GbE implementation?

            Imagine an 8-port switch like TL-SG108E, define two VLANs (1 x WAN and 6 x LAN) and NEO2's port has both VLANs assigned. Now you can filter packets (or even frames on network layer 2) on the NEO 2 truly separating the WAN from the LAN ports (as long as you trust in the VLAN implementation 😉 ). Only drawback: Since packets have to pass the board's NIC twice you limit filtered throughput to half of the available so GbE becomes a requirement.

  2. Better than an Orange Pi Zero ? I'm very disappointed with the OPiZ Wifi implementation and am looking for an alternative SBC, perhaps this is it!

      1. I agree (especially since I consider all these 2.4GHz single antenna onboard Wi-Fi implementations are crap anyway 😉 )

        But guess where the same Wi-Fi (Allwinner's XR819) is also used? On yet not released NanoPi NEO Plus 2: https://forum.armbian.com/index.php?/topic/3576-nanopi-neo-2/&do=findComment&comment=28100

        I already asked FriendlyELEC whether they got new stuff from Allwinner (be it a better driver variant, firmware or even just documentation) and they promised to get back to us. So maybe the current driver hassles with OPi Zero (high TX retransmit count for yet unknown reasons) will resolve eventually.

        1. Is that Neo Plus 2 or Neo 2? Biggest issue I have found with Neo 2 is... their Ubuntu is out of date (15.10), No Debian, Dietpi have nothing and Armbian have only nightly builds... ie no useful platform at all yet. I just dropped them a line.

          1. NEO (Plus) 2 has H5 SoC and while this one is pin-to-pin compatible with H2+ and H3 software support looks different (bootloader and kernel stuff).

            It seems FriendlyELEC so far wasted a lot of time with Allwinner's H5 BSP, got bootloader/kernel created and then combined their usual Ubuntu-QT image they use for all their headless boards.

            It might surprise you (and Antonio) but the real work happens below distro layer and this is where devs at FriendlyELEC currently spend a lot of time (we already had today some email exchange explaining how they can use community stuff internally). It's pretty easy to exchange the distro above (it's just exchanging the so called rootfs/userland), DietPi folks do this all day long without caring about the basis too much or at all (bootloader, kernel, settings), with Armbian we do it differently and also spend most of the time on this stuff.

            But currently H5 support with mainline kernel is a moving target (work in progress), we won't touch Allwinner's BSP kernel (it's a mess!) and that explains the state of Armbian support: experimental/nightlies. And we keep to focus on optimizations and won't rush pushing out images that aren't ready.

            I think you just need some patience. It's a logical step also for FriendlyELEC themselve to upgrade their Ubuntu rootfs from 15.10 to 16.04 and it's just a matter of time until DietPi folks take an image from FriendlyELEC, replace the userland with some Debian (maybe even 64-bit?) and push it out.

            Don't count on Armbian here please, we currently focus on helping both community and FriendlyELEC 'doing it right' (and that means dropping smelly Allwinner/BSP kernel, joining the mainline club and getting those little gems supported 'upstream' so software support is guaranteed forever since living on kernel.org 🙂 )

            1. good to know, but why continue to release new boards with a so old ubuntu version... if it's so easy to swap what's on top, then do it! And prove of this is that we took their 15.10 versions and updated at 16.04 without problems... let's wait... tic tac tic tac tic tac

              1. Please don't forget that FE also supports those Samsung/Nexell-Boards and that it's about Ubuntu+Qt-Embedded (needs most probably HW acceleration support for both GPU and video and a small distro upgrade will take you directly to dependency hell, at least it was exactly like that when I played once with this stuff and Allwinner SoCs).

                While I can't speak for FE I would assume they try to minimize the count of rootfs they support (since you get real support from them and then dealing with totally different OS images for every device you would end up in support hell) and that's most likely the reason you/they are stuck at 15.10 here.

                At the end of the day it's always time/efforts/money too and so priorities. But hey, they already start to move away from those smelly legacy kernels with Allwinner boards so I would assume they could also upgrade their Ubuntu offering soon (maybe for those headless boards even sooner). We'll see. I'm still convinced that if they would adopt Armbian's build system they could save huge amounts of time even if it's a bit of efforts to get familiar with it -- but since they only support Debian and Ubuntu anyway and Armbian can be highly customized and is able to produce those images with sane settings 'from scratch'...)

                We'll see. If nothing changes within the next 2 months then try to ping me, most probably script changes to deal with an outdated 15.10 Ubuntu are minor...

                The 'minor changes' assumption is based on me providing scripted installers or even whole workflow installations for Solaris, various Linux distros, OS X and even Windows (cygwin) for some time. You just need to know the platforms and implement every distro specific stuff with switches or case constructs 🙂

                  1. They're fast and got it up and running. Whether they'll switch completely we'll see. At least I'm not able to do any direct consultancy for free any longer but since there exists awesome linux-sunxi community over at http://linux-sunxi.org this shouldn't be an issue (and paid consultancy is available from other Armbian devs so...)

                    Also good news: by discussing a software issue (how to talk to an external voltage regulator from the kernel) they discovered potential for better voltage regulation and now partially re-do the M1 Plus 2 PCB which will result in both overall lower consumption and higher max performance. This will make M1 Plus 2 a real upgrade compared to M1 Plus now... especially if they also look into replacing the rather slow eMMC with fast one 🙂

                    Of course this will delay the H5 variant somewhat and will also justify an increase in price. So there's nothing wrong with buying H3 based M1 Plus now since I would assume H5 will be 'plagued' by minor software issues the next months anyway while H3 is already pretty stable now.

    1. Well, I went here, clicked to add one - and I could not even FIND the shopping cart. I will accordingly point the people at FriendlyArm to this blog and these comments...
      But remember the time difference - so they won't be up until morning and that's Saturday - so it may or may not take a little while for a response. From what I can see from mine which is working a TREAT it is worthwhile.

      Thanks for that.

      1. you need to login, select ram wanted AND some of the options below (without, you'll get a message "NanoPi M1 Purchase Combination required!"), then add to cart and a notification will popup on top, or the cart is in the top right menu...

        1. I had a sneaking suspicion that it would only work if you logged in. But that is a very unfriendlyarm approach 😉

          I don't want to have to give over loads of personal details only to find out that they charge loads for shipping or have something else that stops me.

          Anyway, which are the best of their boards? They seem to have a lot and it is hard to work out what to get. The M+ seems good but are there any other stand-out models I should consider?

          1. no, just tried without doing login... you have to check AT LEAST the NO THANKYOU box under the item, to add NOTHING but the item itself, then you can add to cart, a popup will, well, pop up, and in top right menu there's the cart...

            1. Ah, I can see now that an error message appears:

              "NanoPi M1 Plus Purchase Combination required!"

              I don't get a popup. Possibly because I don't allow popups except on whitelisted sites. Though my browser isn't giving me the usual warning.

              Oh, haha, the joke is on me - I totally missed that the list was a list of options! Not just a list of features for the device! It was more obvious when I opened the page in IE instead of Chrome.

              Is the heatsink necessary do you think?

          2. Ok, in my experience - the boards I like best are the M3 and the M1+ both of which work fine on their own Debian software. Nothing wrong with the M2 - but which one you go for depends on costs and what features you want. Bear in mind the M1+ has both WIFI and Bluetooth.

                1. Urg, yes, cheapest UK price is £54 - though it does have 2GB RAM.

                  The C2 is the same price. Also has 2GB RAM. I would something with 2GB RAM, 1GB often feels a little tight.

                  I don't actually NEED another SBC right now so these are all a bit rich for me having just brought a new phone.

                  Maybe later in the year, but thanks for those recommendations. I'll keep them in mind. Perhaps when my Samsung microSD on the Pi2 finally starts breaking down, I'll think about a switch.

        1. Well, the vendor is probably still looking in - FRIENDLYARM - how about it - 2GB would certainly be more useful for anyone making NAS units or MEDIA centres etc - or even just someone who wants to use a large RAM DISK for caching.

          And while you'e on - LANDSCAPE for that display would be good 🙂

          Regards

          Pete.

          1. Maybe they want to leave this market segment for Xunlong? 😉

            Orange Pi Plus 2E is currently the best H3 device around with 2 GB DRAM, 16GB fast eMMC, best single antenna 2.4GHz Wi-Fi and also slightly faster (better voltage regulation so able to reach 1.3GHz max cpufreq or even 1.5GHz in stupid overclocker mode).

            It should be noted that DDR3 DRAM and NAND became both more expensive within the last months so chances to see more devices with larger DRAM aren't that great since most customers don't care about BOM costs and expect everything only getting cheaper and cheaper.

      1. why you insist on publishing shitty old ubuntu versions? We again, as in the past, were having problems with those ubuntu 15.10 you distribute on your site... the first thing we do is to update to 16.04, as it's an LTS, and it works... so, please update those distros!!!

          1. i clicked reply at FRIENDLYELEC comment, and my comment shifted down here, but clearly is aimed at them as friendlyarm representatives... old version on nanopi64, old version on the one you're testing now... why, if the base is fine with both 15.10 and 16.04, someone has to go down the route of the long process of upgrading from 15.10 to 16.04? Which involves the filesystem resize, too, or upgrade fails for no space left... and none of these steps is clearly addressed on their site... How long can take to publish an updated ubuntu image?

  3. Pete, you can't connect FriendlyELEC's LCDs to this board since H3 SoC lacks LCD output capabilities (same with H5 on soon to be released NanoPi M1 Plus 2 which is slightly faster but otherwise identical).

    And it seems you forgot to mention that there's another 4-pin header exposing the 3rd USB2 host port (that has not to share bandwidth with any of the other 3 USB ports!). Just grab this $4 USB-to-SATA thingie below, cut the cable, crimp 4 female pins, connect 5V/GND and the two USB data lines to the 4-pin header and a 2.5" HHD to the SATA connector and you got a decently performing NAS as well!

    https://aliexpress.com/item/JEYI-Q3-EasyDrv-drive-true-USB3-0-easy-drive-line-SATA3-hard-disk-line-Jmicron-JMS578/32764282065.html

    1. Yes Tkaiser - a real shame the M1+ won't take those LCDs - though they would be a lot more useful if they'd enable landscape mode - I have brought this up with them and I'm hoping they'll sort that out. You are right - I DID forget about the 3rd USB and that SATA IS a good idea and I WAS pondering a NAS setup - so well timed!!!

      Sadly I leave for Spain in 2 weeks and so orders to China will have to wait to a little closer - right now I could not predict where to send them 🙂

      Actually there are several at the same price (once you factor postage in) so I may be able to get one in a matter of days from Ebay.

      I think the next model is on it's way.

      Cheers.

      1. Well, those Allwinner SoCs FriendlyELEC currently use are made for TV boxes and lack LCD support so it would be way too expensive to add it here. It would've been possible with NanoPi A64 since the SoC there supports 3 different kinds of LCD outputs but for whatever reasons FriendlyELEC saved the LCD connector there too (and also battery -- the only two features why I would look at A64 boards at all are missing)

        But I agree, having LCD support would be nice especially since FriendlyELEC only provides quality displays and their own 1-wire protocol (not the common one) using an EEPROM on the LCD, reading this out by u-boot and then providing correct display information to the kernel command line is really smart and saves users a lot of hassles.

        But good news: You'll soon be able to use HDMI LCDs on H2+, H3 and H5 boards since guys from linux-sunxi community wrote an HDMI driver for u-boot with correct EDID parsing. The problem with 'legacy' HDMI driver on all these Allwinner devices is that count of HDMI resolutions is rather limited so currently with FriendlyELEC's OS images you won't be able to use one of those common 1024x600 HDMI LCDs since this resolution isn't supported (with Armbian's mainline kernel images it might work but currently we don't provide any support for those since still everything is too much WiP with mainline)

      2. Re the 'NAS' use case. These days I wouldn't choose any enclosure or USB-to-SATA adapter that's not based on either ASMedia's ASM1053-s/ASM1153 or JMicron's JMS567/JMS578 or VIA's VL715/VL716. For reasons see below (in preparation of a CNX post about storage options for embedded devices): http://www.cnx-software.com/2017/03/24/cubieboard6-development-board-powered-by-actions-semi-s500-processor-comes-with-sata-lipo-battery-support/#comment-540638

        Devices based on these bridge chips are at least ~10 bucks when bought locally here in EU. Since I guess NAS means Samba for you just a quick link to some tunables (for both /etc/rc.local and smbd.conf): https://forum.armbian.com/index.php?/topic/3821-bananapi-network-performance-problem/#comment-27876 (3 posts above are copy&paste ready instructions how to build Samba 4.6 from scratch).

        By choosing a) a good USB-to-SATA bridge, b) choosing mainline over legacy kernel, c) building most recent Samba from source and not relying on distro packages and d) appropriate network and Samba settings performance will be twice as high as usual. But especially step c) is time consuming but fortunately the least important too 🙂

        1. Or - if one just happens to have a 2.5" external USB drive handy - cut the end off a USB to mini-USB connector - and put 4 terminals on. And it just so happens I have both - a little box of assorted terminals and bits just turned up from China.

          1. Great idea (though keep an eye on the SATA bridge used, 'lsusb' should tell). And in case FriendlyELEC sends you NEO 2 or NEO Plus 2 for review you can then test this board also immediately regarding NAS use cases after soldering pin headers there 🙂

            BTW: we exchanged today some emails with FE devs and I mentioned that they might need a potential fix for Gigabit Ethernet on NEO 2 / NEO Plus 2 (so called RX/TX delay settings that need to be adopted on a per board basis to compensate different trace lengths on the PCB). No idea whether that might also be an issue with M1 Plus now (with the legacy kernel you should get iperf throughput numbers of at least ~680/930 Mbits/sec without any tuning)

            BTW: A new Armbian user reported today that he gradually upgraded his Orange Pi Zero. He removed U56 on the PCB to deactivate onboard video and soldered cables for an external Ralink RT5572 (dual-band, dual-antenna). Then he soldered such a Mini USB cable like yours to the board to connect an external disk. And in Zero's single USB receptacle he placed an RTL8153 Gigabit Ethernet dongle. NEO 2 and NEO Plus 2 are even better suited for such experiments since also 2 USB ports on headers but featuring 'native' Gigabit Ethernet already 🙂

            Regarding Wi-Fi: I didn't know Ralink RT5572 before and learned that driver support seems to be quite good so I ordered the cheapest dual antenna device I could get: ~£11 shipping included: http://www.ebay.de/itm/311059044605

            Will update Wi-Fi performance thread in Armbian forum within the next days with results.

      1. I too hate fan noise and it's rather easy to avoid it. Just do this 'hardware hack' replacing the fan with two el cheapo adhesive heatsinks as can be seen here: https://forum.armbian.com/index.php?/topic/1285-nanopi-m3-cheap-8-core-35/&do=findComment&comment=15291

        And then simply let throttling do the work or do something that everyone will consider stupid but works quite well: M3 has 8 CPU cores, most workloads are single threaded so throttling is not the best strategy anyway (especially since FriendlyELEC's kernel for M2/M3 implements throttling badly).

        So if your average use case is not just running multi-threaded benchmarks then simply kill 2-3 CPU cores. This will have no performance impact (check with htop) unless you run synthetic benchmarks. And it's just adding the following to /etc/rc.local prior to 'exit 0' (in a single line):
        for i in 7 6 ; do echo 0 > /sys/devices/system/cpu/cpu${i}/online ; done

Leave a Reply

Your email address will not be published. Required fields are marked *