Jump to content
  • 0

Orange Pi Zero Plus2 H5 hardware oddity in VDD_CPUX power circuit


5kft
 Share

Question

I recently purchased a number of Orange Pi and Nano Pi boards, and discovered the awesome work of the Armbian team :-)  The Orange Pi Plus2 H5 is a rather nice board - built in eMMC, H5, etc.  (I wish it had 1GB of RAM but that's a different subject.)  I'd love to use these boards for a number of projects.

 

As a test, I modified the DTS for the board (mainline kernel) to enable support for the 1.1v/1.3v switch for VDD-CPUX using the SY8113B on the board.  I also enabled the allowed clock changes to 1.2GHz for cpufreq.  All of this worked great, but the board was very unstable at anything over 1GHz, which seemed strange, given that the CPU voltage should be switching to 1.3v.

 

I found that when measuring the voltage of the "1V2C" testpoint on the board that VDD-CPUX was always at 1.1v - it never switched to 1.3v.  I did some further examination of the board, and I was surprised to find that the "Q5" BSN20 MOSFET was not populated on the board!  I checked all of the other passives and they are present - it is like Xunlong simply decided not to stuff this part when they built the board.

 

So, as a test, I desoldered this part from my Orange Pi Zero rev 1.4 board and soldered it in the missing "Q5" spot on my Orange Pi Zero Plus2 board.  And now it works great!  VDD-CPUX properly switches between 1.1v/1.3v (measured at the "1V2C" TP), and I can clock the board to 1.296GHz without any problems.

 

Would anyone have an idea why Xunlong doesn't solder this part on the board by default?  They include all the other parts in this part of the power circuit, just not this MOSFET.  I was going to buy a few more of these boards, and I'd like to be able to clock them up.  Perhaps I should just order a set of these BSN20 MOSFETs and solder them on myself when I receive the boards...?

 

Or perhaps I should just forget Xunlong/Orange Pi and use Nano Pis?  My Nano Pi Neo Plus2 has been working perfectly since I powered it up (I enabled clocking to 1.296GHz by default as well in the DTS).  By the way, I did some extensive tests and it looks like with both of these boards DVFS and thermal throttling works fine - the clock throttles back properly at the different temperature thresholds.

 

Thank you!

 

Link to comment
Share on other sites

Recommended Posts

  • 0
18 minutes ago, 5kft said:

If you build Armbian from the latest top-of-tree for a sunxi device (starting with the 4.17.y kernel), two new DT overlays are provided that you can load via "/boot/armbianEnv.txt" that provide this regulator and will enable higher clock speeds to be used.

Ooh. With overlays its very usefull. Thank you very much. Its very cool! :)

Today i recieve mosfets from aliexpress, used link that was in this thread. Tomorrow i will include mosfet on board and try use overlays. :)

 

update: Found additional overlay named cpu-clock-1.4GHz. Is this experemental overlay?

Link to comment
Share on other sites

Open source development is fun. Join Armbian Linux development team today!

  • 0
15 minutes ago, rusatch said:

update: Found additional overlay named cpu-clock-1.4GHz. Is this experemental overlay?

 

This overlay sets the CPU clock frequency curve to 1.392GHz maximum; however it will only function if the board CPU regulator can support 1.4v output maximum, for example the NanoPi NEO Core2, which provides an I2C-based voltage regulator.  If you try using it on a board that only supports 1.3v maximum, then your maximum CPU clock rate would actually be limited to 1.2GHz.  So it should really only be used on higher-voltage capable boards.

Link to comment
Share on other sites

  • 0

@5kft, overlays works perfectly. One more time, thank you very mush! :)

05:28:52: 1296MHz  0.47  33%  10%  14%   0%   8%   0% 45.1°C  0/8
05:29:08: 1296MHz  0.43   5%   5%   0%   0%   0%   0% 43.3°C  0/8
05:29:13:  408MHz  0.39   0%   0%   0%   0%   0%   0% 39.4°C  0/8
05:29:18: 1296MHz  0.36   5%   5%   0%   0%   0%   0% 37.1°C  0/8
05:29:23:  408MHz  0.33   0%   0%   0%   0%   0%   0% 39.0°C  0/8
05:29:29:  408MHz  0.31   1%   1%   0%   0%   0%   0% 37.3°C  0/8
 

Link to comment
Share on other sites

  • 0

whats the best price?
Got my first Zero Plus2 H5 (with 8GB eMMC) for GBP 13.99 + 11GBP Postage from Sweden - but via eBay at the 5th of June.

( Item No 112940564893 ).

On AliExpress its 23,90USD + Postage 

https://fr.aliexpress.com/item/Orange-Pi-Zero-Plus-2-H5-Quad-core-Bluetooth-mini-PC-Beyond-Raspberry-Pi-2-Wholesale/32801249806.html

 

I think about getting a second one from eBay (wouldnt use AliExpress from my CreditCard)

 

The Zero Plus2 H5 isnt running hot here as a headless-server - seems like a nice board.

 

Time        CPU    load %cpu %sys %usr %nice %io %irq   CPU  C.St.
19:06:48:  408MHz  0.03   0%   0%   0%   0%   0%   0% 29.3°C  0/2
19:06:54:  408MHz  0.03   0%   0%   0%   0%   0%   0% 30.1°C  0/2
19:06:59:  408MHz  0.03   0%   0%   0%   0%   0%   0% 27.2°C  0/2
19:07:04:  408MHz  0.02   1%   0%   0%   0%   0%   0% 29.5°C  0/2
19:07:09:  408MHz  0.02   0%   0%   0%   0%   0%   0% 29.8°C  0/2
19:07:14:  408MHz  0.02   0%   0%   0%   0%   0%   0% 29.5°C  0/2

 

Also WiFi is working without a problem

 

Link to comment
Share on other sites

  • 0
On 6/6/2018 at 5:00 PM, 5kft said:

When the build pauses for the kernel patch, edit ".../build/cache/sources/linux-mainline/linux-4.14.y/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts", and simply add a block for the LEDs (I added mine following the existing "wifi-pwrseq" block).  E.g.,

Save, and continue the build.  Then simply install the generated packages in ".../build/output/debs".  (It should also be possible to generate an overlay for this, but I haven't bothered to do this.)

 

Today I would update the "Kernel",  but now we have to edit 

.../build/cache/sources/linux-mainline/linux-4.17.y/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts

 

[EDIT] I did unfreeze my kernel and it updated from 4.14 to 4.17

LEDs are working and also reboot seems to work without creating/compiling my "own" kernel :)

 

So I am now at

ARMBIAN 5.57.180810 nightly Debian GNU/Linux 9 (stretch) 4.17.14-sunxi64

Linux opi-zero-plus2-h5 4.17.14-sunxi64 #23 SMP Sat Aug 11 01:00:21 CEST 2018 aarch64 GNU/Linux

 

Link to comment
Share on other sites

  • 0
1 hour ago, guidol said:

 

Today I would update the "Kernel",  but now we have to edit 

.../build/cache/sources/linux-mainline/linux-4.17.y/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts

 

[EDIT] I did unfreeze my kernel and it updated from 4.14 to 4.17

LEDs are working and also reboot seems to work without creating/compiling my "own" kernel :)

 

So I am now at

ARMBIAN 5.57.180810 nightly Debian GNU/Linux 9 (stretch) 4.17.14-sunxi64

Linux opi-zero-plus2-h5 4.17.14-sunxi64 #23 SMP Sat Aug 11 01:00:21 CEST 2018 aarch64 GNU/Linux

 

 

Hi @guidol, yes I found with 4.17 that the HDMI-related shutdown/restart issues no longer occur.  I.e., you should not have to patch out these entries in the DT - it works fine by default (which is nice!).

Link to comment
Share on other sites

  • 0
2 hours ago, guidol said:

whats the best price?
Got my first Zero Plus2 H5 (with 8GB eMMC) for GBP 13.99 + 11GBP Postage from Sweden - but via eBay

( Item No 112940564893 ).

On AliExpress its 23,90USD + Postage 

https://fr.aliexpress.com/item/Orange-Pi-Zero-Plus-2-H5-Quad-core-Bluetooth-mini-PC-Beyond-Raspberry-Pi-2-Wholesale/32801249806.html

 

I think about getting a second one from eBay (wouldnt use AliExpress from my CreditCard)

 

The Zero Plus2 H5 isnt running hot here as a headless-server - seems like a nice board.

 

Time        CPU    load %cpu %sys %usr %nice %io %irq   CPU  C.St.
19:06:48:  408MHz  0.03   0%   0%   0%   0%   0%   0% 29.3°C  0/2
19:06:54:  408MHz  0.03   0%   0%   0%   0%   0%   0% 30.1°C  0/2
19:06:59:  408MHz  0.03   0%   0%   0%   0%   0%   0% 27.2°C  0/2
19:07:04:  408MHz  0.02   1%   0%   0%   0%   0%   0% 29.5°C  0/2
19:07:09:  408MHz  0.02   0%   0%   0%   0%   0%   0% 29.8°C  0/2
19:07:14:  408MHz  0.02   0%   0%   0%   0%   0%   0% 29.5°C  0/2

 

Also WiFi is working without a problem

 

 

Hi @guidol, very nice!  I am curious, if your board is new is it missing the Q5 MOSFET (next to the SD card slot on the bottom)?

Link to comment
Share on other sites

  • 0
21 minutes ago, 5kft said:

So strange... oh well!  Thank you for checking!

Are there any new of these in the wild originally with Q5?

 

The seller from sweden does use a "standard" Picture which show the PCB with Q5 :(

Zeo_Plus2_with_Q5.jpg

 

PS: I have send a question to the seller if his newer boards include the Q5 voltage regulator....

Link to comment
Share on other sites

  • 0

Hi! Just wanted to share my experince.

I received Orange Pi Zero Plus and it was a board without Q5 FET soldered.

I could not find BSN20 FET, so I tried to check for an alternative.

 - First one to try and solder it was a SI2302 N-channel FET with marking A2SHB. This one was a failure. I could boot Armbian with nightly kernel 4.17.14, but  armbianmon utility showed "---" instead of the CPU clock. And I was unable to boot kernel with "gpio-regulator-1.3v" "cpu-clock-1.3GHz" overlays, it just hanged soon after loading kernel modules.

 - The second one I found was 2N7002 N-channel FET with marking K72-P2 (this one I salvaged out of an old MoBo). And it was a success! Board was able to boot with overlays enabled and it runs fine with clocks up to 1300MHz, yay! Now my board works just fine, but it heats like hell under stress, even with a good heat sink. Thanks that throttling works just fine too.

I think the diffrence in FETs is that we need one with lower Vgs threshold voltage than the one with higher drain current.

 

Hope this could be useful to somebody.

Thanks to everyone who made this tweak possible!

Link to comment
Share on other sites

  • 0
16 hours ago, gyrex said:

I just received a Orange Pi Zero Plus without the Q5 voltage regulator. I purchased it a couple of weeks ago from the official Orange Pi store on Aliexpress.

 

Thanks for the info!  So it's clear that Xunlong still isn't stuffing these parts... :blink:

Link to comment
Share on other sites

  • 0
2 hours ago, vortigont said:

Hi! Just wanted to share my experince.

I received Orange Pi Zero Plus and it was a board without Q5 FET soldered.

I could not find BSN20 FET, so I tried to check for an alternative.

 - First one to try and solder it was a SI2302 N-channel FET with marking A2SHB. This one was a failure. I could boot Armbian with nightly kernel 4.17.14, but  armbianmon utility showed "---" instead of the CPU clock. And I was unable to boot kernel with "gpio-regulator-1.3v" "cpu-clock-1.3GHz" overlays, it just hanged soon after loading kernel modules.

 - The second one I found was 2N7002 N-channel FET with marking K72-P2 (this one I salvaged out of an old MoBo). And it was a success! Board was able to boot with overlays enabled and it runs fine with clocks up to 1300MHz, yay! Now my board works just fine, but it heats like hell under stress, even with a good heat sink. Thanks that throttling works just fine too.

I think the diffrence in FETs is that we need one with lower Vgs threshold voltage that the one with higher drain current.

 

Hope this could be useful to somebody.

Thanks to everyone who made this tweak possible!

 

Thanks @vortigont!  I'm very glad that you found a solution and that it's working for you!

Link to comment
Share on other sites

  • 0

Thanks, 5kft.

 

I tried this MOSFET (https://detail.tmall.com/item.htm?id=42054287753&spm=a1z09.2.0.0.1d862e8dqfVd64&_u=kkr253ef31) with latest nightly release (Armbian_5.59.180815_Orangepizeroplus_Ubuntu_bionic_next_4.17.14).

After applied "gpio-regulator-1.3v & cpu-clock-1.3GHz"  overlays, my opi zero plus has been successfully actived 1296Mhz frequency. 

 

But if I boot my opi with default overlay(kernel 4.17.14), armbianmonitor shows "----" at cpu frequesncy column, dont know why. 

Link to comment
Share on other sites

  • 0
2 minutes ago, allen_key said:

at cpu frequesncy column, dont know why. 


Something is broken in the regard of DVFS on the modern kernel 4.17.y/4.18.y which we are trying to put together. Currently exploring what the issue is ... in the meantime I also consider reverting NEXT branch back to 4.14.y and leave it there for a while. 

Link to comment
Share on other sites

  • 0
4 minutes ago, Igor said:


Something is broken in the regard of DVFS on the modern kernel 4.17.y/4.18.y which we are trying to put together. Currently exploring what the issue is ... in the meantime I also consider reverting NEXT branch back to 4.14.y and leave it there for a while. 

 

Thanks, Igor. But interesting, after applied 1.3v regulator overlay, the cpu frequency could be read correctly on kernel 4.17. It looks the modern kernel can only handle CPU frequency with voltage regulator. 

 

BTW, will the 1.3v regulator overlay still exist if you roll back to kernel 4.14? Thanks.

Link to comment
Share on other sites

  • 0
19 minutes ago, allen_key said:

Thanks, Igor. But interesting, after applied 1.3v regulator overlay, the cpu frequency could be read correctly on kernel 4.17. It looks the modern kernel can only handle CPU frequency with voltage regulator. 

 

BTW, will the 1.3v regulator overlay still exist if you roll back to kernel 4.14? Thanks.


On 4.14.y DVFS generally works, but not sure if it works in all cases (board from the topic for example).

Link to comment
Share on other sites

  • 0

I have done a simple openssl benchmark for Allwinner H5 @ 816Mhz vs 1296MHz.

Just for all your information, I saw huge performance improvement @ 1296MHz.

 

Command: openssl speed -elapsed -evp aes-128-cbc

 

Thanks, 5kft bring us such useful information again.

aes-128-cbc.PNG

Link to comment
Share on other sites

  • 0

Would someone please be kind enough to either point me to a post or some basic instructions on how to activate the higher frequency once I solder the mosfet into Q5? Is there a post on this thread which explains what I need to do? I have a Orange Pi Zero Plus.

Link to comment
Share on other sites

  • 0
20 minutes ago, gyrex said:

 Is there a post on this thread which explains what I need to do? I have a Orange Pi Zero Plus.

Take a look at the first post at this page (thread page 4, post from 5kft at July 29):
 

Quote

Hi @rusatch - yes, however this is actually even easier to enable now; no patching and custom kernels should be needed   If you build Armbian from the latest top-of-tree for a sunxi device (starting with the 4.17.y kernel), two new DT overlays are provided that you can load via "/boot/armbianEnv.txt" that provide this regulator and will enable higher clock speeds to be used.  

 

Link to comment
Share on other sites

  • 0
On 8/20/2018 at 3:36 PM, Igor said:


On 4.14.y DVFS generally works, but not sure if it works in all cases (board from the topic for example).

 

Hello igor,

 

I've run apt upgrade today. It seems you have downgrade the kernel for opi zero plus to 4.14. Meanwhile the 1.3v regulator overlay was removed.

May I know how can I use the 1.3v regulator overlay on kernel 4.14 to boost my cpu frequency to 1296Mhz? Sincerely thanks.

Link to comment
Share on other sites

  • 0
1 hour ago, allen_key said:

May I know how can I use the 1.3v regulator overlay on kernel 4.14 to boost my cpu frequency to 1296Mhz? Sincerely thanks.

 

You can't. You have to wait until is fixed, donate that we will be able to hire help or fix on your own ... which will be much faster.  You can also switch to DEV kernel branch, which should be the same as it was before your upgrade. 

 

And remember, nightly kernels comes without support. If they break, nobody will fix them on the spot.

Link to comment
Share on other sites

  • 0
3 minutes ago, Igor said:

You can't. You have to wait until is fixed, donate that we will be able to hire help or fix on your own ... which will be much faster.  You can also switch to DEV kernel branch, which should be the same as it was before your upgrade. 

 

Yes...+1 to what Igor said...  Unfortunately as much as I wished wasn't the case I don't have any spare time to help with this currently...  My advice right now is that you take a look at my overlay additions for these two overlays (in the DEV branch now) - they are very small - and you could try manually building them for your 4.14 kernel.  This should be fairly straightforward (e.g., take a look at "armbian-add-overlay" on-device).  I hope this helps - good luck!

Link to comment
Share on other sites

  • 0
23 minutes ago, 5kft said:

 

Yes...+1 to what Igor said...  Unfortunately as much as I wished wasn't the case I don't have any spare time to help with this currently...  My advice right now is that you take a look at my overlay additions for these two overlays (in the DEV branch now) - they are very small - and you could try manually building them for your 4.14 kernel.  This should be fairly straightforward (e.g., take a look at "armbian-add-overlay" on-device).  I hope this helps - good luck!

Thanks, @5kft @Igor .  I have successfully switched to dev kernel(4.18). It looks everything is working like 4.17.

Link to comment
Share on other sites

  • 0

Edit: Sorry, had a massive brain fart and forgot to put the microSD card back in. It's working now :)

 

I'm hoping someone might be able to help me... I bought BSN20's from aliexpress here https://www.aliexpress.com/item/10pcs-lot-BSN20-M8W-SOT-23-new-original/32705392701.html?spm=a2g0s.9042311.0.0.16904c4dCoV0Uu

 

And soldered one to my Orange Pi Zero Plus board but now it doesn't power up. It was powering up OK before soldering the voltage regulator. Has anyone soldered one to an Orange Pi Zero Plus and did it work ok?

Link to comment
Share on other sites

  • 0
On 9/6/2018 at 11:54 AM, gyrex said:

Edit: Sorry, had a massive brain fart and forgot to put the microSD card back in. It's working now :)

 

I'm hoping someone might be able to help me... I bought BSN20's from aliexpress here https://www.aliexpress.com/item/10pcs-lot-BSN20-M8W-SOT-23-new-original/32705392701.html?spm=a2g0s.9042311.0.0.16904c4dCoV0Uu

 

And soldered one to my Orange Pi Zero Plus board but now it doesn't power up. It was powering up OK before soldering the voltage regulator. Has anyone soldered one to an Orange Pi Zero Plus and did it work ok?

 

I soldered one of those on my board and it worked, but had some problems with 5v pins not giving enough voltage - but it boot up with no problems (I did the patching of armbian like it was presented in the first posts, by compiling it, etc.)

After I removed the mosfet the 5v pins were working as they should.

Link to comment
Share on other sites

  • 0
 

I soldered one of those on my board and it worked, but had some problems with 5v pins not giving enough voltage - but it boot up with no problems (I did the patching of armbian like it was presented in the first posts, by compiling it, etc.)

After I removed the mosfet the 5v pins were working as they should.

I'll check the output on the pins now. What voltage did you read?

 

Edit: just checked my board and all 5v pins are outputting at 5.09V and the 3.3 pins are at 3.34V so mine seems fine. What mosfet did you buy?

 

Sent from my ONEPLUS A5010 using Tapatalk

 

 

 

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...