• Content Count

  • Joined

  • Last visited

Reputation Activity

  1. Like
    teenytinycactus reacted to km1kze in Orange Pi Zero Plus2 H5 hardware oddity in VDD_CPUX power circuit   
    Don't remember what was written on them, but if you bought from my link, they're good 
    You can also see a J1 marking on the original mosfet from the orange pi zero H2+
  2. Like
    teenytinycactus reacted to 5kft in Orange Pi Zero Plus2 H5 hardware oddity in VDD_CPUX power circuit   
    Decoding SMD part codes can be an interesting exercise   Unfortunately my AliExpress order for these parts had an issue and was never delivered.  I ended up ordering a set of BSN20s from Digi-Key in the U.S. (https://www.digikey.com/products/en?keywords=BSN20-7DICT-ND).
    Of course I can't promise that any of the following is applicable in general, but at least for my parts it seems to work...:
    My parts have the codes "N20" and "E9" on them.  Doing a quick Google search for the package type (SOT-23) and the label on the part (N20) - i.e., "SOT-23 N20" - turns up this page:  http://www.s-manuals.com/smd/n2.  Looking in the table one can see two BSN20s listed, with the associated data sheets.  From the data sheet the "E9" is a date code, so it looks like my parts were made in September 2017 (which seems reasonable).
    If you search for "SOT-23 J1" you'll see this page:  http://www.s-manuals.com/smd/j1.  Looking in the table you'll see lots of SOT-23 J1 devices.  Assuming that your part is in fact actually an N-Channel MOSFET, there are two entries for BSS138s...so that might be the part you have.  You may want to download the datasheet (http://www.s-manuals.com/pdf/datasheet/b/s/bss138_taitron.pdf) and compare the part specs with a standard BSN20 datasheet (e.g., mine is https://www.diodes.com/assets/Datasheets/ds31898.pdf) to determine if it might work okay...?

  3. Like
    teenytinycactus reacted to 5kft in Orange Pi Zero Plus2 H5 hardware oddity in VDD_CPUX power circuit   
    Glad to help!  Yes, the photos on Xunlong's site show the part being present, but on both my Zero Plus2 and my Zero Plus (also an H5-based device) this single part is missing.  I've been running my fixed version of my Plus2 (where I soldered a BSN20 onto the missing spot) since my last post, and it's been working wonderfully!
    As I noted previously, I updated the appropriate sun50i-h5* DTS files and added the regulator setting, updated the cpu_opp_table to include the increased clock frequencies, and updated the thermal cooling-maps and it clocks to 1.296GHz perfectly (and downclocks when the temps get too high).   I've been hammering the board over this past week to test stability, and it works great - zero crashes.
    test@orangepizeroplus2:~$ cpufreq-info -c 1 cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009 Report errors and bugs to cpufreq@vger.kernel.org, please. analyzing CPU 1: driver: cpufreq-dt CPUs which run at the same hardware frequency: 0 1 2 3 CPUs which need to have their frequency coordinated by software: 0 1 2 3 maximum transition latency: 6.24 ms. hardware limits: 240 MHz - 1.30 GHz available frequency steps: 240 MHz, 408 MHz, 648 MHz, 816 MHz, 912 MHz, 960 MHz, 1.01 GHz, 1.06 GHz, 1.10 GHz, 1.15 GHz, 1.25 GHz, 1.30 GHz available cpufreq governors: conservative, userspace, powersave, ondemand, performance, schedutil current policy: frequency should be within 240 MHz and 1.30 GHz. The governor "ondemand" may decide which speed to use within this range. current CPU frequency is 1.30 GHz. cpufreq stats: 240 MHz:88.52%, 408 MHz:3.58%, 648 MHz:0.00%, 816 MHz:0.00%, 912 MHz:0.00%, 960 MHz:0.00%, 1.01 GHz:0.00%, 1.06 GHz:0.00%, 1.10 GHz:0.00%, 1.15 GHz:0.00%, 1.25 GHz:0.00%, 1.30 GHz:7.89% (28476) test@orangepizeroplus2:~$ test@orangepizeroplus2:~$ sysbench --num-threads=4 --test=cpu --cpu-max-prime=20000 --validate run sysbench 0.4.12: multi-threaded system evaluation benchmark Running the test with following options: Number of threads: 4 Additional request validation enabled. Doing CPU performance benchmark Threads started! Done. Maximum prime number checked in CPU test: 20000 Test execution summary: total time: 6.9850s total number of events: 10000 total time taken by event execution: 27.9254 per-request statistics: min: 2.79ms avg: 2.79ms max: 6.15ms approx. 95 percentile: 2.79ms Threads fairness: events (avg/stddev): 2500.0000/1.22 execution time (avg/stddev): 6.9813/0.00 test@orangepizeroplus2:~$ test@orangepizeroplus2:~$ cat /sys/class/thermal/thermal_zone0/temp 31339 test@orangepizeroplus2:~$  
    This simple fix really makes the Plus2 an incredibly useful board - just $20, super fast, built in eMMC, etc.!  It is unfortunate, however, as without this modification these boards are basically maxed at 816MHz (seemingly the safe peak for 1.1v CPU voltage).
    Interestingly, all my Orange Pi H3-based devices do include this part.  It's just the H5-based ones that do not (but all the other power circuit parts are present).  Perhaps this is a quick workaround that Xunlong did to address potential thermal issues or something (?).
    I ordered a number of BSN20 SOT23-3s as well as some more Plus2s, and will be doing a bit of soldering when they all arrive...!
  4. Like
    teenytinycactus reacted to 5kft in Orange Pi Zero Plus2 H5 hardware oddity in VDD_CPUX power circuit   
    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!