5 5
tkaiser

Quick review of NanoPi Fire3

Recommended Posts

If you run it 24/7 or reboot it's fine.

 

It's shutting down thats the problem, I don't know exactly what it does but I know the power draw spikes to 0.8 amps 5.1v and it stays like that. Idle power is 0.3amps 5v. CPU heats up so it's doing something.

 

I think it's an issue somewhere in some file as this thing does has a power button and maybe friendlyarm didn't program it what to do when someone shutdown from terminal. It doesn't shutdown in armbian btw from power button (reset button works). 

 

Kinda hoping this board does get a stable build sometime because it be awesome getting these in a cluster.

Share this post


Link to post
Share on other sites

I now have quite a few of these boards running and I am powering them through Anker mulitport usb charging hubs and all seems well.

 

This might be more of a general Armbian question but if I wanted to verify that my boards aren't experiencing any undervolting, is there a log file that I can look at?

 

I am just being cautious now - everything seems to be running in tip-top shape with no issues.

Share this post


Link to post
Share on other sites
6 hours ago, datsuns said:

This might be more of a general Armbian question but if I wanted to verify that my boards aren't experiencing any undervolting, is there a log file that I can look at?

No, in my experience, the board will either hang, switch off, or reset when undervolted. Usually you need a voltmeter to check the board voltage under load. If you don't have one, you'll need to verify that they're all working fine (ie: ping them). The best you can do is to run cpuburn-a53 on all of them at the same time. If nothing fails, you should be fine.

Share this post


Link to post
Share on other sites
16 hours ago, wtarreau said:

No, in my experience, the board will either hang, switch off, or reset when undervolted. Usually you need a voltmeter to check the board voltage under load. If you don't have one, you'll need to verify that they're all working fine (ie: ping them). The best you can do is to run cpuburn-a53 on all of them at the same time. If nothing fails, you should be fine.

 

So far I have experienced no problems - no hangs, switch offs or resets. I'm giving each unit the recommended 2 amps and I just want to know what I can get away with. Everything is running headless with a heavy cpu load and nothing else.

 

Specifically, I am using this usb charger:

https://smile.amazon.com/gp/product/B00YRYS4T4/ref=oh_aui_detailpage_o08_s00?ie=UTF8&psc=1

 

Since it maxes out at 12 amps over the 10 ports I am only utilizing 6 of them to give each of my nano pis the full 2 amps. I am open to experimentation but I don't want to hurt any of my units or sd cards.

 

What do you think a safe minimum amps is for a high cpu load and not much else?

Share this post


Link to post
Share on other sites
41 minutes ago, datsuns said:

What do you think a safe minimum amps is for a high cpu load and not much else?

Well, all these multi-port chargers never deliver up to the amount they claim. You can safely expect 50 to 66% though, which is not bad overall. I removed the current limit detection in mine to stabilize the output for the MiQi farm. That said, I never managed to pull more than 1.6A in peak from my Fire3 at 1.6 GHz under 1.25V, so you have some headroom I guess. You need to consider that when the board is hot, its DC-DC regulators' efficiency starts to drop and to turn the current into more heat. Thus it's more important to measure the current when the board is already hot if you want to be pessimistic (or realistic). That was the case for me at when I measured 1.6A. Quite frankly, you're worrying too much : if when loading all the boards it still works, that's fine. If you want to buy more boards, then buy them and plug them to your charger until you find the limit. The charger will either cut one port or completely shut down. Then you'll know how many more chargers you need to buy depending on the number of boards :-)

Share this post


Link to post
Share on other sites
18 minutes ago, wtarreau said:

Well, all these multi-port chargers never deliver up to the amount they claim. You can safely expect 50 to 66% though, which is not bad overall. I removed the current limit detection in mine to stabilize the output for the MiQi farm. That said, I never managed to pull more than 1.6A in peak from my Fire3 at 1.6 GHz under 1.25V, so you have some headroom I guess. You need to consider that when the board is hot, its DC-DC regulators' efficiency starts to drop and to turn the current into more heat. Thus it's more important to measure the current when the board is already hot if you want to be pessimistic (or realistic). That was the case for me at when I measured 1.6A. Quite frankly, you're worrying too much : if when loading all the boards it still works, that's fine. If you want to buy more boards, then buy them and plug them to your charger until you find the limit. The charger will either cut one port or completely shut down. Then you'll know how many more chargers you need to buy depending on the number of boards :-)

 

Ok, I'm going to just keep adding boards if it continues to work. I was more worried about it throttling down the performance of the boards before they shut off but it sounds like that's not what it would do.

 

You seem knowledgeable about the board so what do you feel like is a good stable operating temperature for these units?  I am running active cooling and no overclock (1.4GHz) on all of my fires and I am seeing something between 66-70 degrees C on average when I periodically check on temps. This can of course vary depending on the ambient temerature in the room as well. If I tried out a mild overclock what temperature range would you start to get concerned at? It sounds like you are running yours at 1.6GHz - what kind of cooling are you running?  I'm currently using small fans running on 3.3v. My setup is close to my desk and I have found running them at 5v is on the annoying side so I'd like to keep them at 3.3v.

Share this post


Link to post
Share on other sites
On 5/18/2018 at 4:23 AM, tkaiser said:

Just spotted another important difference between NanoPi M3 and Fire3: 'AXP288 PMIC is gone, and replaced by an STM32 Cortex M0 MCU'. So DVFS implementation is different which also explains why with Armbian there's no difference in idle consumption/temperature when clocking with 400 vs. 1400 MHz.

 

Ah, so that explains why my Fire3 runs so hot all the time...!  It would be great to get DVFS support for this board working.  It looks like one would just need to include the spu1705 regulator driver and associated DT support for the STM32/spu1705.  Perhaps it will be straightforward to enable.  It will be interesting to play with this a bit...!

 

Share this post


Link to post
Share on other sites
23 hours ago, datsuns said:

 

Ok, I'm going to just keep adding boards if it continues to work. I was more worried about it throttling down the performance of the boards before they shut off but it sounds like that's not what it would do.

 

You seem knowledgeable about the board so what do you feel like is a good stable operating temperature for these units?  I am running active cooling and no overclock (1.4GHz) on all of my fires and I am seeing something between 66-70 degrees C on average when I periodically check on temps. This can of course vary depending on the ambient temerature in the room as well. If I tried out a mild overclock what temperature range would you start to get concerned at? It sounds like you are running yours at 1.6GHz - what kind of cooling are you running?  I'm currently using small fans running on 3.3v. My setup is close to my desk and I have found running them at 5v is on the annoying side so I'd like to keep them at 3.3v.

 

I am currenty running 5 fire 3 with https://www.amazon.co.uk/dp/B00PK1IIJY/ref=asc_df_B00PK1IIJY53128804/?tag=googshopuk-21&creative=22146&creativeASIN=B00PK1IIJY&linkCode=df0&hvadid=214877336784&hvpos=1o1&hvnetw=g&hvrand=4890684913338719900&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9045573&hvtargid=pla-420046835187

 

As for cooling i use https://www.amazon.co.uk/ELUTENG-Computer-Portable-Radiator-Ventilator/dp/B071CL82G9/ref=sr_1_18?ie=UTF8&qid=1528834494&sr=8-18&keywords=usb+fan. I have mine stacked so no need for fans for each unit.

 

All nanopi fire 3s are around 55c at stock freq under full cpu load.

 

Also be very very careful with that 10 port power supply. I know mine gets warm running 5 fire3 and the usb fan at present so do not go to the limit with the power supply as it will most likely melt. Always stay under the rated wattage!. They are not designed for prolonged high wattage usage.

 

I have got my fire3 stacked in https://www.amazon.co.uk/ILS-Clear-Acrylic-Cluster-Raspberry/dp/B0768DDTKD/ref=sr_1_2?s=electronics&ie=UTF8&qid=1528835367&sr=1-2&keywords=raspberry+pi+stack+case

You will need to drill new holes to mount them btw.

 

If you do get problems with under voltage or shutdown etc check the usb cables. So many times with the raspberry pi i have got under-voltage warnings and 95% time it isn't the power supply but cheap cables or long length usb cables that caused the problem.

 

Share this post


Link to post
Share on other sites
2 hours ago, shaun27 said:

 

I am currenty running 5 fire 3 with https://www.amazon.co.uk/dp/B00PK1IIJY/ref=asc_df_B00PK1IIJY53128804/?tag=googshopuk-21&creative=22146&creativeASIN=B00PK1IIJY&linkCode=df0&hvadid=214877336784&hvpos=1o1&hvnetw=g&hvrand=4890684913338719900&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9045573&hvtargid=pla-420046835187

 

As for cooling i use https://www.amazon.co.uk/ELUTENG-Computer-Portable-Radiator-Ventilator/dp/B071CL82G9/ref=sr_1_18?ie=UTF8&qid=1528834494&sr=8-18&keywords=usb+fan. I have mine stacked so no need for fans for each unit.

 

All nanopi fire 3s are around 55c at stock freq under full cpu load. 

 

Also be very very careful with that 10 port power supply. I know mine gets warm running 5 fire3 and the usb fan at present so do not go to the limit with the power supply as it will most likely melt. Always stay under the rated wattage!. They are not designed for prolonged high wattage usage.

 

I have got my fire3 stacked in https://www.amazon.co.uk/ILS-Clear-Acrylic-Cluster-Raspberry/dp/B0768DDTKD/ref=sr_1_2?s=electronics&ie=UTF8&qid=1528835367&sr=1-2&keywords=raspberry+pi+stack+case

You will need to drill new holes to mount them btw. 

 

If you do get problems with under voltage or shutdown etc check the usb cables. So many times with the raspberry pi i have got under-voltage warnings and 95% time it isn't the power supply but cheap cables or long length usb cables that caused the problem. 

 

Overall I am running a very similar setup to you but I have 16 nano pi fire3s across three different anker usb multiport chargers. I have 6 fires on a 6-port, 6 fires on a 10-port and 4 fire on a 5 port. Also each of my fires has it's own fan. But now with what you're saying about the power supplies I guess I am going to switch one of my fires off the 6-port over to the 10-port.

Share this post


Link to post
Share on other sites
On 6/11/2018 at 11:11 PM, datsuns said:

You seem knowledgeable about the board so what do you feel like is a good stable operating temperature for these units?

I'm pretty sure it depends on a number of parameters. Mine starts to throttle at 113 degrees C because I found that it works fine till 120 and I don't want it to throttle for no reason. In your case for a cluster it will be difficult to test all boards and check that they're running fine over time. But it can also be valuable. I seem to remember reading 90 degrees max in the datasheet so that could be a good start but it's very close to the existing limits. I don't know if the stability of your workloads is critical or if you can take the risk to see one board hang once in a while to find the limits. One other important factor to keep in mind is whether you're using the GPU or not. I am not, which is why I can trust the ability to throttle to cool it down. If you are not using it either, you could possibly decide to start with a limit at 105.

 

Quote

I am running active cooling and no overclock (1.4GHz) on all of my fires and I am seeing something between 66-70 degrees C on average when I periodically check on temps. This can of course vary depending on the ambient temerature in the room as well. If I tried out a mild overclock what temperature range would you start to get concerned at?

I'm only concerned by temperatures getting close to the ones causing instability. For most of my hardware, when I focus on performance I don't care if it shortens its life since it will be obsolete before it dies.  That's why I searched the limits for my board. You need to keep a bit of margin because it takes some time for the temperature to be reported, then when the board starts to throttle it continues to heat a bit. However at very high temperatures it cools down very quickly. Mine throttles at 113 and it rarely reaches 115.

 

Quote

It sounds like you are running yours at 1.6GHz - what kind of cooling are you running?

I'm using the stock heat sink, and worse, the whole thing is packed into a cardboard "enclosure" so that it can safely lay in my computer bag. Basically there is no air flow around it, it only adds latency to the temperature raise, and spreads it all around in the cardboard. It's totally horrible, and when I leave it for too long on my desk, the desk gets hot under it :-)

 

For my use cases (mostly network endpoint for development) it doesn't throttle at all. I've run some build tests, and I have enough time to compile for a few minutes before it starts to throttle, but even when it does, it doesn't for too long (it oscillates between 113 and 115 degrees).

 

Quote

I'm currently using small fans running on 3.3v. My setup is close to my desk and I have found running them at 5v is on the annoying side so I'd like to keep them at 3.3v.

Oh I know what you're talking about, I also happen to hate fans for the same reason. I've installed a 12cm fan behind my MiQi build farm at work, which is powered by the central board's GPIO when the temperature gets too high. It's a 12V fan running on 5V so it probably rotates at less than 1000 RPM and I almost can't hear it. The one at home has much larger heat sinks and no fan. Small fans are noisy and inefficient, you should really pick a large and slow one for your whole cluster. That's what I'd do if I built one (I'd love to just for fun, it's just that I figured that I have no use case for a NanoPi cluster at the moment!).

Share this post


Link to post
Share on other sites
On 6/12/2018 at 11:25 PM, datsuns said:

Overall I am running a very similar setup to you but I have 16 nano pi fire3s across three different anker usb multiport chargers. I have 6 fires on a 6-port, 6 fires on a 10-port and 4 fire on a 5 port. Also each of my fires has it's own fan. But now with what you're saying about the power supplies I guess I am going to switch one of my fires off the 6-port over to the 10-port.

The 6 port one I got is same wattage as your 10 port one. It can handle 6 fine, I was just more concerned if you tried to plug up 10 to your 10 port what heat that would generate. I did see a picture on Amazon of one with a burnt out side.

 

In theory that 10 port should be fine as these only require 4 watt each but that's at stock setting headless. On board fans etc adds more draw.

 

Also temperature range i would stay within the nanopi fire3 wiki range or close to it. The CPU could handle it but being such a small board it's the other components you got to worry about which could reduce lifespan of your device. Tests I done with wtarreau .dtb file at 1.6ghz it be fine with a bit of cooling.

 

Share this post


Link to post
Share on other sites

The review is really interesting, and I was about to buy one of these boards.
I asked a few questions at the TechSales, and got one interesting answer:

Quote

but there is one thing that needs attention.
the USB interface on the computer does not provide enough power for the Fire3,
so you need to power the Fire3 in other ways,
such as using the DuPont line to connect directly to the 5V and GND pins.

I hope it will be enough if the power source comes from a Raspberry Pi power supply... If this doesn't work, what kind of power supply could I buy to plug in the "DuPont line" (I guess it means the GPIO)?
Thanks.

Share this post


Link to post
Share on other sites
44 minutes ago, gounthar said:

The review is really interesting, and I was about to buy one of these boards.
I asked a few questions at the TechSales, and got one interesting answer:

I hope it will be enough if the power source comes from a Raspberry Pi power supply... If this doesn't work, what kind of power supply could I buy to plug in the "DuPont line" (I guess it means the GPIO)?

Any "correct" USB power supply delivering more than 1.5A under 5V will work, though you'll have to make you own cable or to solder the wires. But with good quality USB cables, it will also work via the micro-USB port, because the current drawn by this board is not *that* high. I even power mine from a USB3 connector of my laptop which delivers about 1.6A (it's over spec and that's great for this use case). You really need to test. Some reported 1.2A under 5V. It's only 33% higher than the regular USB3 limit (900mA) and may actually work fine with most PCs or chargers due to large enough margins in the design.

Share this post


Link to post
Share on other sites
7 hours ago, gounthar said:

Thanks a lot @wtarreau, I feel more confident about buying this board now.

By the way if we start to be numerous to buy the board, it may finally become incentive for someone to design a 3D printed enclosure. I'd prefer a metal one with a thermal pad serving as a heat sink at the same time, but I'd be happy with anything better than cardboard+duct tape...

Share this post


Link to post
Share on other sites

Just out of curiosity is it possible to upgrade the kernal in armbian os (wip version) to include the most recent image dtb files from friendlyelec? If so how you do it because this might solve a few hardware issues i am running into with the wip version mainly power button tbh as thats the only way to truly shutdown this thing.

 

Currently version on armbian wip is 4.14 on friendlyelec 4.4.

 

 

 

 

 

Share this post


Link to post
Share on other sites

Update

 

All my boards have had continuous up-time for a full month now with rock solid consistency. I am really happy with this board so far and would recommend it to others. Just make sure the cooling is adequate and you will be happy with performance.

 

 

 

Share this post


Link to post
Share on other sites
On 6/16/2018 at 11:36 PM, shaun27 said:

Just out of curiosity is it possible to upgrade the kernal in armbian os (wip version) to include the most recent image dtb files from friendlyelec? If so how you do it because this might solve a few hardware issues i am running into with the wip version mainly power button tbh as thats the only way to truly shutdown this thing.

 

Currently version on armbian wip is 4.14 on friendlyelec 4.4.

 

In case it is helpful, I just implemented support for this (and a number of other things for the Fire3) and have submitted a pull request for master; see https://github.com/armbian/build/pull/1045.

 

Share this post


Link to post
Share on other sites
On 7/10/2018 at 2:21 PM, datsuns said:

Update

 

All my boards have had continuous up-time for a full month now with rock solid consistency. I am really happy with this board so far and would recommend it to others. Just make sure the cooling is adequate and you will be happy with performance.

 

I totally agree, it is a really, really nice and powerful little board!  Temperature is a challenge with it, so I mounted a 25x25x10mm fan using thermal tape, and added a small circuit to drive it via the pwm1 line (transistor-controlled from the 5v input rail):

 

20180714_171315_1.thumb.jpg.081481ca655354facb1b352d03e85d90.jpg

 

The fan scales up and down smoothly based on the CPU temperature (e.g., see https://github.com/5kft/nanopi-fire3-fancontrol/blob/master/fancontrol).  Using this with cpuburn-a53 on all eight cores at 1.4GHz it doesn't get above ~85C, and idles at ~35C (fan is running slow and silent at that temperature).  Very fun stuff!  :)

 

Share this post


Link to post
Share on other sites
18 hours ago, 5kft said:

and added a small circuit to drive it via the pwm1 line (transistor-controlled from the 5v input rail):

additionally to the fan-controling script - do you got a URL for the little circuit - it look like I am searching for ;)

Share this post


Link to post
Share on other sites
On 7/31/2018 at 3:57 AM, Димитър Мазнеков said:

Did someone manage to use OV5640 camera at nPi Fire3 ?

 

Unfortunately the required driver support hasn't been ported over from the FE 4.4 kernel.  I started looking at this and the core kernel media platform changes are fairly substantial from 4.4 to 4.14, and I haven't had time to finish them.  (I'm also not an expert in the v4l2 area...)

 

Depending on your situation you could try running this camera with the FE 4.4 kernel?

Share this post


Link to post
Share on other sites
2 hours ago, teh_namelessone said:

@datsuns and everyone, can you link what cables you bought for usb power?

I bought a couple of bad usb cables on the net... :(

 

For what it's worth, I've been using the FE 3A USB power adapter - see https://www.friendlyarm.com/index.php?route=product/product&product_id=141.  These adapters seem to be very good - at a 3A/15W load mine only drop to around 4.9v (verified using a Ruideng LD25 and UM25C).

 

I measured the inline power draw of the Fire3 using a Ruideng UM25C while running cpuburn-a53, and with proper CPU cooling to prevent throttling it pulls around 14W (consistent with @tkaiser's earlier posts in this thread).  However if I were to run this at max load for any period of time, I would definitely power it via the pin headers on the board, as the standard maximum rated/recommended current through the micro-USB port is just 9W.  (I do wish this board had a barrel power connector!)

Share this post


Link to post
Share on other sites
On 8/11/2018 at 1:22 AM, 5kft said:

 

Unfortunately the required driver support hasn't been ported over from the FE 4.4 kernel.  I started looking at this and the core kernel media platform changes are fairly substantial from 4.4 to 4.14, and I haven't had time to finish them.  (I'm also not an expert in the v4l2 area...)

 

Depending on your situation you could try running this camera with the FE 4.4 kernel?

No I hadn't manage to do it. I'd try to receive video from my BT.656 equipment and I have patched drivers and kernel patches for 3.X.Y  for NanoPi Air which just works. Now I need to make the same for Fire3 (to use more powerfull CPUs) but there not even work OV5640. BTW under Android works fine ?!

Share this post


Link to post
Share on other sites
On 6/17/2018 at 6:25 AM, wtarreau said:

By the way if we start to be numerous to buy the board, it may finally become incentive for someone to design a 3D printed enclosure. I'd prefer a metal one with a thermal pad serving as a heat sink at the same time, but I'd be happy with anything better than cardboard+duct tape...

 

I made a preview of a NanoPi Fire3 CAD model: https://grabcad.com/library/nanopi-fire3-1

I hope someone can design an enclosure from the Fire3 model.

 

Share this post


Link to post
Share on other sites
On 6/17/2018 at 8:36 AM, shaun27 said:

Just out of curiosity is it possible to upgrade the kernal in armbian os (wip version) to include the most recent image dtb files from friendlyelec? If so how you do it because this might solve a few hardware issues i am running into with the wip version mainly power button tbh as thats the only way to truly shutdown this thing.

 

I flashed the last recent Armbian Bionic (desktop mainline kernel 4.14.y) dated on 22.08.2018.

Most of the device tree is the same. One thing I noticed is SPI (fetched from the loaded device tree):

 

Armbian

spi@c005b000 {
        pinctrl-names = "default";
        #address-cells = <0x1>;
        num-cs = <0x1>;
        pinctrl-0 = <0x49>;
        clock-names = "spi", "spi_busclk0";
        resets = <0x12 0x2c 0x12 0x2d>;
        interrupts = <0x0 0xc 0x0>;
        clocks = <0x48 0x48>;
        samsung,spi-src-clk = <0x0>;
        #size-cells = <0x0>;
        dma-names = "tx", "rx";
        compatible = "nexell,s5p6818-spi";
        status = "disable";
        reg = <0xc005b000 0x100>;
        dmas = <0x39 0x6 0x0 0x39 0x7 0x0>;
        reset-names = "pre-reset", "spi-reset";
};

 

FriendlyARM

spi@c005b000 {
        reg = <0xc005b000 0x100>;
        dmas = <0x3a 0x6 0x0 0x3a 0x7 0x0>;
        interrupts = <0x0 0xc 0x0>;
        pinctrl-0 = <0x49>;
        compatible = "nexell,s5p6818-spi";
        cs-gpios = <0x29 0x1e 0x0>;
        clock-names = "spi", "spi_busclk0";
        reset-names = "pre-reset", "spi-reset";
        clocks = <0x48 0x48>;
        num-cs = <0x1>;
        resets = <0x11 0x2c 0x11 0x2d>;
        status = "okay";
        #address-cells = <0x1>;
        samsung,spi-src-clk = <0x0>;
        #size-cells = <0x0>;
        dma-names = "tx", "rx";
        pinctrl-names = "default";

        spidev@0 {
                reg = <0x0>;
                compatible = "linux,spidev";
                spi-max-frequency = <0x989680>;
                status = "okay";

                controller-data {
                        samsung,spi-feedback-delay = <0x0>;
                };
        };

        fbtft@0 {
                fps = <0x21>;
                reg = <0x0>;
                debug = <0x0>;
                compatible = "sitronix,st7789v";
                reset-gpios = <0x4b 0x8 0x0>;
                spi-max-frequency = <0x2faf080>;
                dc-gpios = <0x4a 0x1c 0x0>;
                rotate = <0x5a>;
                status = "disabled";
                buswidth = <0x8>;

                controller-data {
                        samsung,spi-feedback-delay = <0x0>;
                };
        };
};

 

On 5/18/2018 at 11:18 AM, tkaiser said:

 

As usual FriendlyELEC did a great job documenting the board: http://wiki.friendlyarm.com/wiki/index.php/NanoPi_Fire3 -- they also provide OS images that make full use of all hardware features (camera, LCD displays auto-detected by u-boot, GPU/VPU acceleration, HDMI resolution switching in Linux sounds a bit like PITA though).

 

Because NanoPi Fire3 is not supported from Armbian, how can I still contribute?

 

https://github.com/armbian/linux is only for sun8i / rockchip CPUs.

 

Should I just clone https://github.com/armbian/build and the script knows how to fetch the correct kernel?

 

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
5 5