Jump to content


Photo

Quick review of Orange Pi One


  • Please log in to reply
31 replies to this topic

#1 tkaiser

tkaiser

    Advanced Member

  • Moderators
  • 2660 posts

Posted 21 February 2016 - 04:18 PM

OPiOne_Review_Comparison.jpg

 

The Orange Pi One is the most recent SBC from Xunlong. It's clearly the Orange Pi PC's little sibling. In case you haven't read the PC's review already maybe it's time to do it now since here only important differences will be shown.

 

Since it's based on an Allwinner SoC (system on chip) please keep in mind that you will always find the most comprehensive and up-to-date information in the linux-sunxi wiki: http://linux-sunxi.org/Orange_Pi_One

 

The most important differences between One and PC as follows:

  • Smaller size: the PC used the RPi form factor (85mm x 55mm) while the One is just 69mm x 48mm in size
  • 512MiB instead of 1GiB DRAM (still two DDR3L modules making use of the full 32 bit memory bandwidth)
  • 2 USB host ports less (available through solder points)
  • IR receiver, microphone and TRRS jack for Audio/CVBS video also missing (available through solder points)
  • GPIO header rotated by 180°
  • A different method to regulate the SoC's core voltage (VDD-CPUX) responsible for a few issues currently

The One costs $10 whereas the PC is been sold at $15. Since you don't get large volume discounts on shipping you should better compare prices with shipping included and end up now with $13.63 vs. $18.69 if you order directly in Xunlong's aliexpress store.

 

So you get less for less money but should keep in mind that the size reduction has one serious drawback: Due to the height of USB and Ethernet jacks Xunlong chose to rotate the 40 pin GPIO header and now Add-On boards (RPi HATs) project over the board. And while you can combine for example an Orange Pi PC with a 3.2" Touchscreen LCD to a compact package this isn't possible with the One any longer.

 

The Orange Pi PC fits exactly:

 

OPiOne_Review_PC_with_LCD.jpg

 

And that's how it looks with the One:

 

OPiOne_Review_One_with_LCD.jpg

 

You should also take care of the header's orientation when trying out GPIO/1-Wire/I2C stuff and especially when you try to power the board through GPIO pins 2/4/6. They are not where you would expect them like on any other board using the RPi connector (except of Lamobo R1) but on the other side of the header (180° rotation).

 

Different voltage regulator and the consequences:

 

Now to the most important change: the different method to switch the SoC's core voltage. What is this switching for? This thing is called dynamic voltage frequency scaling (dvfs) and the idea behind is to keep the voltage of the SoC's core components as low as possible unless needed. If you want to clock the CPU/GPU cores higher you need more voltage to let them work reliably. On the other hand higher voltage negatively affects temperature, consumption and maybe also longevity.

 

Here the combination of cpufreq scaling and dvfs jumps in. When the CPUs are clocked lower also less voltage is used to feed them. And when they're clocked higher the voltage rises automatically to ensure reliable operation. With dvfs a few operating points are defined that specify at which cpufreq traversal which voltage should be used. This looks then like this example for Orange Pi PC.

 

On the Orange Pi PC a voltage regulator called SY8106A adjustable through I2C is used and it's easy to define up to 16 dvfs operating points. On the Orange Pi One this is different and a more simple voltage regulator has been used (according to schematic the SY8113B should be used but users spotted that on their boards in reality the rather similar AX3833 is used). This voltage regulator supports only two states and according to the Orange Pi forums this should be used to switch the voltage between 1.1V at the lowest CPU clockspeed and 1.3V with the higher clockspeeds (confirmed in the meantime to work on at least one board).

 

Fex/script.bin fixes necessary when using OS images for PC:

 

When you're using OS images for Orange Pi PC on the One then due to the different voltage regulator the log gets filled with countless messages like this:

[ARISC ERROR] :message process error
[ARISC ERROR] :message addr   : f004b840
[ARISC ERROR] :message state  : 5
[ARISC ERROR] :message attr   : 2
[ARISC ERROR] :message type   : 30
[ARISC ERROR] :message result : ff
[ARISC WARING] :callback not install
[cpu_freq] ERR:set cpu frequency to 1008MHz failed!

Therefore it's necessary to fix this by tweaking the so called fex file when using OS images that still rely on kernel 3.4.x (applies to all currently). It's necessary to exchange the pmuic_type (2 is I2C, 1 is GPIO) and to define at which clockspeed the regulator should switch between its two states. So the most easy solution seems to define 2 operating points as outlined in the sunxi wiki: http://linux-sunxi.o...l_dvfs_settings

 

At least on one board the real voltages used aren't 1.1V and 1.3V but significantly higher instead. My assumption is based on thermal behaviour: the main heat source is the core voltage (VDD-CPUX). Unfortunately my Multimeter died so we're waiting for others to investigate further by checking the 1V2C and VDD_CPUFB test points on the PCB. There is an active discussion in our developer section regarding this at the moment.

 

So there is at least one board where voltages are significantly higher then they should be (leading to overvolted/overheating behaviour without adjusted fex settings) and there is at least another where everything works as expected (and which runs into stability issues when preventing to switch to the higher voltage). Now it's time to collect feedback from users how many are affected by wrong voltage values.

 

How does voltage switching works on the One?

 

So let's have a closer look how the switch between the two voltages works (regardless of the real voltages used -- they have to be confirmed by measuring the 1V2C and TP1 test points on the PCB). In the fex file after changing the pmuic_type to 1 you can define two voltage values and the switch state:

pmu_level0 = 11300
pmu_level1 =  1100
LV1_freq = 1200000000
LV1_volt = 1300
LV2_freq = 648000000
LV2_volt = 1100

This reads like 648MHz @ 1100mV and 1200MHz @ 1300mV. But you could also write the following into and it would work exactly the same:

pmu_level0 = 15000
pmu_level1 =  1500
LV1_freq = 1200000000
LV1_volt = 5000
LV2_freq = 648000000
LV2_volt = 1500

Now it reads 648MHz @ 1500mV and 1200MHz @ 5000mV (clearly exceeding the max. 1400mV allowed for the H3) but it doesn't matter since this just triggers at which cpufreq change the voltage should be switched between the lower and the higher value. So to stay always on the lower voltage you could use

pmu_level0 =  5000
pmu_level1 =  5000
LV1_freq = 1200000000
LV1_volt = 5000
LV2_freq = 648000000
LV2_volt = 5000

And to always use the higher voltage (necessary in case some users are really affected by undervoltage when using the lower available) it could read:

pmu_level0 = 11000
pmu_level1 = 11000
LV1_freq = 1200000000
LV1_volt = 1000
LV2_freq = 648000000
LV2_volt = 1000

This will prevent using the higher voltage in the former case even if there 5000mV are written to the fex and will force the higher in the 2nd example regardless of the voltage value (1000mV). Only the first bit set or not defined in pmu_level0/pmu_level1 is important.

 

Unless this issue is resolved I would stay away from the device. And if you're already an owner of the Orange Pi One you should check whether you're affected by undervoltage/overvoltage issues.

 

Final chapter: Software support for the Orange Pi One:

 

First of all you could use any of the available OS images for Orange Pi PC but would've to adjust the voltage regulator stuff in script.bin/fex. I already updated my fix-thermal-problems.sh script known from the Orange Pi forums to fix overvolted settings for the older Orange Pis to be useable with Orange Pi One/Lite too.

 

In the meantime Armbian started to support all available H3 Orange Pi boards just recently: http://www.armbian.com/download/ (please don't expect yet too much, we're moving fast but it's still a bit early and a lot of work in progress!)

 

Jernej's OpenELEC port also progresses nicely and fully supports Orange Pi One in the meantime (in fact he helped us a lot to improve Armbian support for the One)

 

It can be expected that a lot of improvements for sun7i (A20 SoC used on Cubieboards, the original Bananas and a few more) will be ported over to sun8i/H3 in the next time.

 

And then mainlining effort for the H3 is still improving more and more. I'm using one Orange Pi PC since weeks as NAS with mainline kernel (4.5) and an USB-to-Ethernet dongle since native Ethernet is still not supported. Same applies to display stuff. You can inform yourself about the status always here: http://linux-sunxi.o...ork_In_Progress

 

Using Orange Pi One with the most recent kernel is already possible combining a few patches and I would suspect that it's just a few weeks until Ethernet and display is working.

 

EDIT: In the meantime enclosures are available (a bit problematic since OPi One suffers from heat issues more than its bigger siblings): laser cut DIY made of 3 mm crystal-clear acrylic and one on Aliexpress.


  • Tido, Lope, rreignier and 2 others like this

Please don't send personal messages! Use the forum so others can participate and benefit!

 

Before you report any problem please be aware that crappy SD cards and insufficient power supply are reason N° 1 why things are failing. Try to rule this out first please, check 'getting started' recommendations and check/provide 'sudo armbianmonitor -u' output first!

 

Did you check out custom google powered forum search already (before opening new threads or asking questions)?


#2 Tido

Tido

    Advanced Member

  • Senior Members
  • PipPipPip
  • 206 posts

Posted 21 February 2016 - 09:36 PM

Thank you for your review and update on the current software development from the community.

 

My conclusion of this is, that the Orange Pi PC is the far better choice for only $5.- more, but without Ethernet-Driver kind of useless.

The OPi One may be smaller in size but same height as OPi PC, so the advantage of the RPi-Zero is not given here.

I wonder if Orange will sell again the A20 Model.

 

Did you attach the heat-sink or did they come with?


Banana Pi - R1 | LeGuitar | M2+ prototype | Arduino Mega clone | armbian

Google Docs


#3 tkaiser

tkaiser

    Advanced Member

  • Moderators
  • 2660 posts

Posted 21 February 2016 - 10:05 PM

Ethernet works with kernel 3.4.x. Mainline driver for Ethernet in H3 (same as in A64 and A83T -- Allwinner chose a new IP block compared to the older SoCs) will be ready in a few weeks. And USB-to-Ethernet adapters do exist if you want to use mainline kernel right now with the One or PC or any other H3 device.

 

The heatsinks are mine, if you get an Orange Pi One where voltage switching works as expected no heatsink is necessary -- compare with our latest findings: http://forum.armbian...-pi-one/?p=5420

 

But thx for mentioning heatsinks: I normally use one for A20 (20x20 mm). These fit on the PC but won't fit on the Orange Pi One due to placement of other components. You need heatsinks that do not exceed 16x16 mm in size. But as already said: They're not necessary if you've a board that is not defective (mine is obviously).

 

Regarding RPi Zero: comparing real products with virtual products is not that fair http://whereismypizero.com

 

And it's simply a matter of the use case. For the project we're currently developing the One can always be used instead of the PC when only one USB port is needed (printing/scanning workflow with RFID authentication). You should keep in mind that the Orange Pi One is many times faster than the 'Zero' (important since we're using the device as software RIP converting PDF to primitive PDLs), there Ethernet and USB do not have to share bandwidth and it's also cheaper (when you add shipping costs to the virtual product that no one can buy). Most importantly: Would you use an SBC that is not capable of running Armbian?! ;)


  • aegrotatio likes this

Please don't send personal messages! Use the forum so others can participate and benefit!

 

Before you report any problem please be aware that crappy SD cards and insufficient power supply are reason N° 1 why things are failing. Try to rule this out first please, check 'getting started' recommendations and check/provide 'sudo armbianmonitor -u' output first!

 

Did you check out custom google powered forum search already (before opening new threads or asking questions)?


#4 Tido

Tido

    Advanced Member

  • Senior Members
  • PipPipPip
  • 206 posts

Posted 22 February 2016 - 12:51 PM

Ethernet works with kernel 3.4.x. Mainline driver for Ethernet in H3

 

But thx for mentioning heatsinks: I normally use one for A20 (20x20 mm). These fit on the PC but won't fit on the Orange Pi One due to placement of other components.

 

And it's simply a matter of the use case. For the project we're currently developing the One can always be used instead of the PC when only one USB port is needed

 

Most importantly: Would you use an SBC that is not capable of running Armbian?! ;)

This is good to know as not everybody needs the latest kernel.

 

Heat Sink, can you tell how well your heat sink works on a A20, I mean how many degrees it does reduce the temperature?

 

This is what "I" meant; in order to take a OPi ONE over the OPi PC you have to have a really big quantity or no space, otherwise these $5.- do not really count

if you talk about 5-10 piece.

 

The major show Stopper, no armbian on RPi zero, but I have to admit that there are a couple nice mini distro's out there for the Pi.

I wonder how much longer it takes until really everything works as OSS for the RPi (beside the license key for HW decoding MPEG2 & VC1).


Banana Pi - R1 | LeGuitar | M2+ prototype | Arduino Mega clone | armbian

Google Docs


#5 tkaiser

tkaiser

    Advanced Member

  • Moderators
  • 2660 posts

Posted 22 February 2016 - 10:10 PM

Heat Sink, can you tell how well your heat sink works on a A20, I mean how many degrees it does reduce the temperature?

 

The specific SoC doesn't matter that much. With the ones I use normally (cheap, $0.5, just do a search for 'heatsink 20x20 cubie') you get 50°C instead of 60°C (A20 will not get that hot -- and you should keep in mind that newer SoCs with their budget cooling strategies are somewhat different since throttling is part of the design -- compare with 'Turbo boost' in x86 land): http://linux-sunxi.o...unlong_settings

 

And you should keep in mind that your set of criteria to choose between different devices might not match those of anyone else. I would also suspect if you try to buy 100 or more you can make a good deal with Xunlong and then choosing Ones instead of PCs is simply a reduction of costs by a third since customs/VAT should scale almost linearly (at least we want to use these devices on a larger scale in projects -- and unlike the 'RPi Zero' toy the One is a solid product for the use cases we have in mind)


  • aegrotatio likes this

Please don't send personal messages! Use the forum so others can participate and benefit!

 

Before you report any problem please be aware that crappy SD cards and insufficient power supply are reason N° 1 why things are failing. Try to rule this out first please, check 'getting started' recommendations and check/provide 'sudo armbianmonitor -u' output first!

 

Did you check out custom google powered forum search already (before opening new threads or asking questions)?


#6 Tido

Tido

    Advanced Member

  • Senior Members
  • PipPipPip
  • 206 posts

Posted 23 February 2016 - 08:47 AM

around 10° sounds interesting, while booting my A20 gets pretty hot, above 80 and so I guess if a thread gets stuck it can heat up quite good.

Thank you for the tipp to find these.

 

 

I would also suspect if you try to buy 100 or more you can make a good deal

 

A good deal ?

In my daily live I am a senior purchaser and I would never buy more than 10-20 without knowing the manufacturer and their principles (i.e. child labour), plus without

guaranteed BOM, plus at least a couple pieces for free because of warranty return does not make sense.

And this list is not exhaustive.

 

All these parts are Toys. Maybe an Odroid or Olimex is different, but all the others I would not trust.

Probably with SinoVoip, with a contract, you can work something out, but the way we met them, no way (I speak for myself).


Banana Pi - R1 | LeGuitar | M2+ prototype | Arduino Mega clone | armbian

Google Docs


#7 tkaiser

tkaiser

    Advanced Member

  • Moderators
  • 2660 posts

Posted 23 February 2016 - 09:39 AM

around 10° sounds interesting, while booting my A20 gets pretty hot, above 80 and so I guess if a thread gets stuck it can heat up quite good.

 

Ok, so you're not talking about chip temperatures but readouts from a thermal sensor somewhere inside a chip that are interpreted by a driver and that might be somewhat off directly after booting? Good luck trying to solve software/calibration issues with a heatsink ;)

 

To stop this useless discussion: Use cpuburn-a7 for several minutes, check the temperature readout (and keep in mind that it's still uncalibrated since no one did the work to do calibration for A20) and check the real temperature on the chip's surface. As I already tried to point out: the A20 is from a different SoC generation, the contained thermal sensor is part of a touch screen controller and more included by accident than by design. That's different on more recent SoCs like the H3: They contain a thermal sensor by design to prevent overheating and to be used for cooling strategies (throttling, disabling CPU cores). And even with these sensors that are way more reliable than the one in A20 we have calibration problems. Don't trust in numbers generated by software!

 

Regarding toys you started with the RPi Zero. Always out of stock, if not you have to order an expensive bundle containing a bunch of crap and you're limited to one piece per order: https://shop.pimoron...ete-starter-kit

 

And if you're not a tinkerer/maker you can't do anything with a 'Zero' except of using it as a very slow desktop without connections to the outside.

 

I'm talking about IoT/controller stuff where I need connectivity (Ethernet, USB), a few sensors (SPI, I2C, maybe 1-Wire) and sometimes also performance. And I need to get this up and running quickly and reliably. The board in question doesn't matter that much if it has the necessary features and is supported by my distro of choice: Armbian. Now we can also use cheap Orange Pis too (hardware quality is good, software/support from the vendor sucks -- but the latter doesn't matter at all fortunately)

 

And BTW: You should really open your eyes and realise that there exist more than 3-5 SBC manufacturers in this world


  • aegrotatio likes this

Please don't send personal messages! Use the forum so others can participate and benefit!

 

Before you report any problem please be aware that crappy SD cards and insufficient power supply are reason N° 1 why things are failing. Try to rule this out first please, check 'getting started' recommendations and check/provide 'sudo armbianmonitor -u' output first!

 

Did you check out custom google powered forum search already (before opening new threads or asking questions)?


#8 Tido

Tido

    Advanced Member

  • Senior Members
  • PipPipPip
  • 206 posts

Posted 23 February 2016 - 11:43 AM

Aha, I thought the A20's information about it is already reliable - good to know.

 

The OPi One is the answer to RPi Zero, so I just compared them on size and prize. I stay with my answers given in the threads above.

 

If you do IoT seriously, with quantity and maybe with SCADA and such - you better have standardized, reliable tools (SBCs).

If you just do some home automation, your approach is fine.

ToC (total cost of ownership) is not just based on purchasing.

 

I own an R1, LeMaker Guitar and a RPi 2 - I am not a collector.

What R1 is for, is clear.

Guitar and RPi I am uncertain, some Retro-Game console would be fun and or for music, maybe with display in conjunction of the R1.

 My time given there is more than enough to do. So why would I care about every product out there, why?

 

Same for Linux Distro's, there are big ones, Fedora, SuSE, Ubuntu and 1000 more.
I run an Ubuntu derivate, because I know APT and such - and I am happy with this.

 

How about you set up a list on your Website how many devices you already had or have had (SBCs) in the last 24 months.

And which of those were really good :-)  (the very very short part of this list :-) )


Banana Pi - R1 | LeGuitar | M2+ prototype | Arduino Mega clone | armbian

Google Docs


#9 tkaiser

tkaiser

    Advanced Member

  • Moderators
  • 2660 posts

Posted 25 February 2016 - 12:57 PM

Just a small update. After we added H3 support to the Armbian build system the last weeks I just tried it out with mainline kernel and let a Jessie image build. The usual Armbian experience:

 

Bildschirmfoto%202016-02-25%20um%2012.45

 

The whole dmesg output:

 

Spoiler

 

Doing this on the Orange Pi One is a bit weird since you would've to waste the only available USB port for an Ethernet dongle now (Ethernet for H3 still not ready in mainline kernel -- we will add this soon to our Armbian H3 Mini FAQ).

 

But at least it serves as a proof of concept, Ethernet is way faster ;) and it worked almost out of the box (I did it mainly to find out what we've to do to tweak auto detection of the OPi in question. Our goal is still to ship with just one OS image for the various H3 boards and adjust everything that's necessary at the first boot).


Please don't send personal messages! Use the forum so others can participate and benefit!

 

Before you report any problem please be aware that crappy SD cards and insufficient power supply are reason N° 1 why things are failing. Try to rule this out first please, check 'getting started' recommendations and check/provide 'sudo armbianmonitor -u' output first!

 

Did you check out custom google powered forum search already (before opening new threads or asking questions)?


#10 tkaiser

tkaiser

    Advanced Member

  • Moderators
  • 2660 posts

Posted 27 February 2016 - 01:10 PM

Small update or let's better say a quick look at the direct competition:

 

Banana Pi M2+:

 

Banana_Pi_M2plus.jpg

 

65x65mm in size, GBit Ethernet, 1 GB RAM, AP6212 WiFi/BT (unlike the Orange's WiFi chip this is already supported with mainline kernel), 8 GB eMMC (they already said they might remove this for a cost down variant). Unfortunately not all 3 USB host ports exposed and still relying on the crappy Micro USB connector to power the board.

 

EDIT: build system prepared for M2+ 3 days ago and M2+ maybe fully supported starting with Armbian 5.05 

 

H3-OLinuXino-NANO:

 

H3-OLinuXino-NANO.jpg

 

Only 50x50mm in size, Fast Ethernet, 512 MB RAM (maybe 1 GB as option/later), also not all 3 USB host ports exposed and using Micro USB for DC-IN :(

 

Prices/availability yet unknown.

 

Olimex chose to use a fixed voltage on the H3-OLinuXino-NANO so max. cpufreq depends on that (they're still testing). So most probably Orange Pi One will be faster (at least memory bandwidth is 32-bit vs. 16-bit).

 

Regarding Banana Pi M2+ I would be careful unless it's confirmed if/how the CPU's voltage is regulated there and whether they managed to implement a few more design flaws as they did with their last boards.

 

The good news: Since we're already supporting H3 with Armbian only minor modifications should be necessary to support these 2 new boards when they're available.


  • rreignier and aegrotatio like this

Please don't send personal messages! Use the forum so others can participate and benefit!

 

Before you report any problem please be aware that crappy SD cards and insufficient power supply are reason N° 1 why things are failing. Try to rule this out first please, check 'getting started' recommendations and check/provide 'sudo armbianmonitor -u' output first!

 

Did you check out custom google powered forum search already (before opening new threads or asking questions)?


#11 tkaiser

tkaiser

    Advanced Member

  • Moderators
  • 2660 posts

Posted 02 March 2016 - 03:22 PM

Small update on the One:

And now that most of the stuff is working on H3 with Armbian release 5.04 our users start to produce tutorials:

 

To be continued -- the next tutorials that are announced will cover I2C, SPI and dealing with RFID readers:

 

OPi_RFID_4.jpg


  • aegrotatio likes this

Please don't send personal messages! Use the forum so others can participate and benefit!

 

Before you report any problem please be aware that crappy SD cards and insufficient power supply are reason N° 1 why things are failing. Try to rule this out first please, check 'getting started' recommendations and check/provide 'sudo armbianmonitor -u' output first!

 

Did you check out custom google powered forum search already (before opening new threads or asking questions)?


#12 Tido

Tido

    Advanced Member

  • Senior Members
  • PipPipPip
  • 206 posts

Posted 06 March 2016 - 10:25 AM

Small update or let's better say a quick look at the direct competition:

 

Banana Pi M2+:

 

65x65mm in size, GBit Ethernet, 1 GB RAM, AP6212 WiFi/BT

The good news: Since we're already supporting H3 with Armbian only minor modifications should be necessary to support these 2 new boards when they're available.

 

If you want to see this M2+ powered with a coaxial power connector, watch the video.

I guess before they sell it, they will replace it with a high-quality MicroUSB connector *ironie*


Banana Pi - R1 | LeGuitar | M2+ prototype | Arduino Mega clone | armbian

Google Docs


#13 tkaiser

tkaiser

    Advanced Member

  • Moderators
  • 2660 posts

Posted 16 March 2016 - 05:54 PM

Regarding Banana Pi M2+ I would be careful unless it's confirmed if/how the CPU's voltage is regulated there

 

Since 'Team BPi' released another scary BSP we now know that there's no adjustable voltage regulator so the H3 will be fed all the time with 1.3V and is supposed to run with a maximum clockspeed of 1200 MHz. So the device will consume more and gets hotter than Orange Pi One/Lite and is slower than any other Orange Pi. 'Team BPi' thinks also it's a good idea to kill CPU cores instead of throttling so the board will become way slower when overheating compared to Orange Pi's (at least when the Orange Pis run Armbian).

 

According to the fex they use exactly the same DRAM type as Xunlong on all Orange Pi and also exactly identical GMAC settings but only one USB port? We'll see whether these are just the common copy&paste errors SinoVoip is famous for or this is really an appropriate hardware definition (would be the first board then they ship with)

 

The kernel they use is 3.4.39 cloned from loboris (of course throwing away the whole git history... and hey, why keeping the kernel up to date like Armbian does it -- we ship with 3.4.110 for H3 devices -- if our customers don't care anyway). Kind of fascinating/unbelievable


Please don't send personal messages! Use the forum so others can participate and benefit!

 

Before you report any problem please be aware that crappy SD cards and insufficient power supply are reason N° 1 why things are failing. Try to rule this out first please, check 'getting started' recommendations and check/provide 'sudo armbianmonitor -u' output first!

 

Did you check out custom google powered forum search already (before opening new threads or asking questions)?


#14 zador.blood.stained

zador.blood.stained

    Advanced Member

  • Moderators
  • 1609 posts

Posted 03 May 2016 - 10:34 AM

On @tkaiser's board I'm now reading CPU voltage as 1.13V with PL06 LOW, 1.33V with PL06 HIGH (set in u-boot).

 

But with OS loaded it stays at 1.33 even if I force CPU frequency to 648MHz. So looks like GPIO regulator code in the kernel is broken?

 

dmesg is flooded with these (with different frequencies):

[   12.579768] [cpu_freq] ERR:set cpu frequency to 480MHz failed!

Spoiler

#15 tkaiser

tkaiser

    Advanced Member

  • Moderators
  • 2660 posts

Posted 03 May 2016 - 11:24 AM

[   12.579768] [cpu_freq] ERR:set cpu frequency to 480MHz failed!

Is /boot/script.bin linking to orangepione.bin or any of the other variants that use SY8106A? Since 480 MHz is also an indidication that firstrun detected the wrong board (648 should be minimum currently).


Please don't send personal messages! Use the forum so others can participate and benefit!

 

Before you report any problem please be aware that crappy SD cards and insufficient power supply are reason N° 1 why things are failing. Try to rule this out first please, check 'getting started' recommendations and check/provide 'sudo armbianmonitor -u' output first!

 

Did you check out custom google powered forum search already (before opening new threads or asking questions)?


#16 zador.blood.stained

zador.blood.stained

    Advanced Member

  • Moderators
  • 1609 posts

Posted 03 May 2016 - 11:32 AM

Yes, script.bin symlink was the first thing I checked, it is linked to orangepione.bin

 

480 is one of the first messages in gmesg, after complete boot-up it complains only about 648 and 720MHz. 

 

Output of "cpufreq-info"

  driver: cpufreq-sunxi
  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: 2.00 ms.
  hardware limits: 480 MHz - 1.20 GHz
  available cpufreq governors: conservative, ondemand, userspace, powersave, interactive, performance
  current policy: frequency should be within 648 MHz and 1.20 GHz.
                  The governor "interactive" may decide which speed to use
                  within this range.
  current CPU frequency is 648 MHz (asserted by call to hardware).
  cpufreq stats: 60.0 MHz:0.00%, 120 MHz:0.00%, 240 MHz:0.00%, 312 MHz:0.00%, 408 MHz:0.05%, 480 MHz:0.00%, 504 MHz:0.00%, 600 MHz:0.00%, 648 MHz:28.16%, 720 MHz:0.00%, 816 MHz:0.00%, 912 MHz:5.69%, 1.01 GHz:35.14%, 1.10 GHz:7.00%, 1.20 GHz:23.95%, 1.30 GHz:0.00%, 1.34 GHz:0.00%, 1.44 GHz:0.00%, 1.54 GHz:0.00%  (37)

There are also these message with different device addresses Edit: and different i2c buses), Edit 2: but only at the start of boot process:

[    1.325021] sunxi_i2c_do_xfer()985 - [i2c1] incomplete xfer (status: 0x20, dev addr: 0x4e)

Spoiler

#17 tkaiser

tkaiser

    Advanced Member

  • Moderators
  • 2660 posts

Posted 03 May 2016 - 11:43 AM

Yes, script.bin symlink was the first thing I checked, it is linked to orangepione.bin

 

Ok, then maybe this commit was wrong since the driver might only be able to deal correctly with 2 dvfs operating points (this might then also explain this issue). You could try to revert it or to change 648MHz to 816MHz so 1.1V will be entered earlier. But I made the experience that if cpufreq_min is allowed to be lower than the lowest dvfs operating point that the driver gets confused and switches again to the higher voltage.

 

So maybe it's the best to simply revert the commit, see what's happening and then further improve? Entering 1.1V at 816MHz should help with throttling but having 816MHz then also as minimum allowed clockspeed would be a drawback :(

 

I defined the 648MHz for a reason when playing with OPi One. But maybe I was wrong. Up2u now ;)

 

Regarding the sunxi_i2c_do_xfer issues no clue unfortunately. I think that's spitten out by BSP kernel anyway.


Please don't send personal messages! Use the forum so others can participate and benefit!

 

Before you report any problem please be aware that crappy SD cards and insufficient power supply are reason N° 1 why things are failing. Try to rule this out first please, check 'getting started' recommendations and check/provide 'sudo armbianmonitor -u' output first!

 

Did you check out custom google powered forum search already (before opening new threads or asking questions)?


#18 zador.blood.stained

zador.blood.stained

    Advanced Member

  • Moderators
  • 1609 posts

Posted 03 May 2016 - 12:20 PM

OK, this is more interesting, and the problem is second voltage being "01100" in orangepione.fex

root@orangepione:~# grep pmu_level1 orangepione.fex
pmu_level1 = 01100
root@orangepione:~# fex2bin orangepione.fex orangepione.bin
root@orangepione:~# bin2fex orangepione.bin test.fex
fexc-bin: orangepione.bin: version: 0.1.2
fexc-bin: orangepione.bin: size: 35480 (80 sections)
root@orangepione:~# grep pmu_level1 test.fex
pmu_level1 = 576
root@orangepione:~#

fex/bin/fex conversion parsed "01100" as a number in octal (base 8) system, which is normal in IT sphere for numbers with leading zero.  :)

 

Removing leading zero from this number fixes the issue and all works with 4 original operating points.


Spoiler

#19 tkaiser

tkaiser

    Advanced Member

  • Moderators
  • 2660 posts

Posted 03 May 2016 - 12:29 PM

fex/bin/fex conversion parsed "01100" as a number in octal (base 8) system, which is normal in IT sphere for numbers with leading zero.  :)

 

Removing leading zero from this number fixes the issue and all works with 4 original operating points.

 

Great! Thx for finding the culprit and explanantion. And my mistake, I just did copy&paste without thinking. Now it would be cool if you could also test out lower clockspeeds (480MHz being a reasonable lower limit) and see how VDD_CPUX behaves. If we can allow lower minimum clockspeed than lowest dvfs operating point we can revert to 2 dvfs entries (since we only deal with 2 voltages anyway) and use 1.1V for 816MHz already.

 

I currently believe such an error like this has been responsible for the weird results I got back then when I started testing OPi One a few months ago.


Please don't send personal messages! Use the forum so others can participate and benefit!

 

Before you report any problem please be aware that crappy SD cards and insufficient power supply are reason N° 1 why things are failing. Try to rule this out first please, check 'getting started' recommendations and check/provide 'sudo armbianmonitor -u' output first!

 

Did you check out custom google powered forum search already (before opening new threads or asking questions)?


#20 zador.blood.stained

zador.blood.stained

    Advanced Member

  • Moderators
  • 1609 posts

Posted 03 May 2016 - 12:37 PM

[dvfs_table]
pmuic_type = 1
pmu_gpio0 = port:PL06<1><1><2><1>
pmu_level0 = 11300
pmu_level1 = 1100
max_freq = 1200000000
min_freq = 480000000
LV_count = 5
LV1_freq = 1200000000
LV1_volt = 1300
LV2_freq = 1008000000
LV2_volt = 1300
LV3_freq = 816000000
LV3_volt = 1100
LV4_freq = 648000000
LV4_volt = 1100
LV5_freq = 480000000
LV5_volt = 1100

This seems to work without any issues after changing minimal frequency in /etc/default/cpufrequtils


  • rodolfo likes this

Spoiler

#21 tkaiser

tkaiser

    Advanced Member

  • Moderators
  • 2660 posts

Posted 03 May 2016 - 12:49 PM

This seems to work without any issues after changing minimal frequency in /etc/default/cpufrequtils

 

Great, then we should use these values for OPi One/Lite and NanoPi M1 and also adjust minimal frequency to 480MHz (my attempt to set it to 648MHz back then was most probably the result of testing wrong and running in exactly the issue you explained now! :) )

 

I don't think there's an urgent need to push this fix out. Unfortunately current users of Orange Pi One or NanoPi M1 with Armbian 5.10 get Banana Pi M2+ behaviour (always at 1.3V) but even in this situation you would need really heavy workloads to run in troubles (tested it on BPi M2+ and throttling down to 648MHz helps when running the new cpuburn-a7).

 

When 5.11 is released users of Orange Pi One and NanoPi M1 without heatsink get a faster board than with 5.05 due to switching to 1.1V at 816Mhz already since throttling will be more efficient. And the board also stays overall cooler. And in the meantime the fix is documented above :)


Please don't send personal messages! Use the forum so others can participate and benefit!

 

Before you report any problem please be aware that crappy SD cards and insufficient power supply are reason N° 1 why things are failing. Try to rule this out first please, check 'getting started' recommendations and check/provide 'sudo armbianmonitor -u' output first!

 

Did you check out custom google powered forum search already (before opening new threads or asking questions)?


#22 zador.blood.stained

zador.blood.stained

    Advanced Member

  • Moderators
  • 1609 posts

Posted 03 May 2016 - 12:53 PM

I don't think there's an urgent need to push this fix out. Unfortunately current users of Orange Pi One or NanoPi M1 with Armbian 5.10 get Banana Pi M2+ behaviour (always at 1.3V) but even in this situation you would need really heavy workloads to run in troubles (tested it on BPi M2+ and throttling down to 648MHz helps when running the new cpuburn-a7).

If Igor is not busy he can create and push 5.11 board support packages for H3 boards (after all fex files are patched and CPUMIN is updated) and change next version to 5.12 after that.


Spoiler

#23 rodolfo

rodolfo

    Advanced Member

  • Senior Members
  • PipPipPip
  • 177 posts

Posted 03 May 2016 - 03:48 PM

Fix posted under http://forum.armbian...-have-returned/


  • aegrotatio likes this

#24 aegrotatio

aegrotatio

    Member

  • Senior Members
  • PipPip
  • 12 posts

Posted 08 May 2016 - 05:17 AM

OK, this is more interesting, and the problem is second voltage being "01100" in orangepione.fex

root@orangepione:~# grep pmu_level1 orangepione.fex
pmu_level1 = 01100
root@orangepione:~# fex2bin orangepione.fex orangepione.bin
root@orangepione:~# bin2fex orangepione.bin test.fex
fexc-bin: orangepione.bin: version: 0.1.2
fexc-bin: orangepione.bin: size: 35480 (80 sections)
root@orangepione:~# grep pmu_level1 test.fex
pmu_level1 = 576
root@orangepione:~#

fex/bin/fex conversion parsed "01100" as a number in octal (base 8) system, which is normal in IT sphere for numbers with leading zero.  :)

 

Removing leading zero from this number fixes the issue and all works with 4 original operating points.

 

Thank you!  This was vexing me for a long time. I knew they had to be changed but had no idea why because the values "look" fine.

 

Great catch!



#25 Lope

Lope

    Newbie

  • Senior Members
  • Pip
  • 6 posts

Posted 10 August 2016 - 06:49 AM

My Orange Pi one arrived yesterday. I'd like to mention that I was planning to solder wires to the additional USB D+/D- pins, but they're a lot smaller in real life than I thought they were by looking at the picture. It looks like a very sharp soldering iron tip would be best. They're also a bit hard to access because they're right next to the H3 and near some other taller components. It's a pity Xunlong made the pads so small and close together. It's probably doable, but it will be tricky.



#26 tkaiser

tkaiser

    Advanced Member

  • Moderators
  • 2660 posts

Posted 10 August 2016 - 08:26 AM

It's a pity Xunlong made the pads so small and close together. It's probably doable, but it will be tricky.

 

If you love soldering USB ports for whatever reasons maybe NanoPi NEO is the better board for you (two USB ports available for soldering experiments)? Or using pogo-pins (see post #23 here)? Since I'm pretty bad at soldering I would spend the additional $5 to get an Orange Pi PC or NanoPi M1 if I need all 3 of H3's USB host ports readily exposed.


Please don't send personal messages! Use the forum so others can participate and benefit!

 

Before you report any problem please be aware that crappy SD cards and insufficient power supply are reason N° 1 why things are failing. Try to rule this out first please, check 'getting started' recommendations and check/provide 'sudo armbianmonitor -u' output first!

 

Did you check out custom google powered forum search already (before opening new threads or asking questions)?


#27 beic

beic

    Member

  • Senior Members
  • PipPip
  • 12 posts

Posted 13 September 2016 - 11:46 AM

Hi there,

 

Maybe it's not a good place to ask or post it but,...

 

I received my Orange Pi One today,...

 

Used Rufus to burn the Armbian (Jessie - Desktop) version to Transcend 8Gb MicroSD HC card.

 

It's boots up (restarted), but it stuck after that restart at:

orangepi login:

and the SMD Green Led on the board start to blink all the time!

 

Do I need to login manually or it need to boot directly to the GUI (Desktop)?

 

Thank you for your answer!

 

Kind regards



#28 Igor

Igor

    Administrator

  • Administrators
  • 2888 posts

Posted 13 September 2016 - 11:49 AM

Do I need to login manually or it need to boot directly to the GUI (Desktop)?

 

Yes. First time you need to login via console to change password and add regular user.


Want to send me a private message? Stop and think again. If there’s no reason for it to be private, it should be public. Thank you!


#29 beic

beic

    Member

  • Senior Members
  • PipPip
  • 12 posts

Posted 13 September 2016 - 05:26 PM

Yes. First time you need to login via console to change password and add regular user.

 

Thanks, but how can I do that?!  :unsure:



#30 Igor

Igor

    Administrator

  • Administrators
  • 2888 posts

Posted 13 September 2016 - 05:28 PM

There are 3 options:

 

Attach a keyboard + monitor, login via SSH or via serial console.

 

http://docs.armbian....d/#how-to-login


Want to send me a private message? Stop and think again. If there’s no reason for it to be private, it should be public. Thank you!