User talk:Tkaiser

Sunxi devices lying around:

 * A20-OLinuXino-Lime2
 * Banana Pi
 * Banana Pro
 * "Banana Pi" M3
 * Cubietruck
 * Lamobo R1
 * Orange Pi PC
 * pcDuino3 Nano

Manufacturer's OS images

 * Flashing Android to eMMC
 * First full boot
 * Trying to boot SinoVoip's Ubuntu 15.04 image
 * Trying to boot SinoVoip's Raspbian image
 * Trying to boot SinoVoip's Debian 8 image

All 3 Linux images are corrupted according to "unzip -l" and since they don't provide at least MD5/SHA1 checksums it's not worth the efforts to try further

"Great", one non-functional Android image and 3 corrupted Linux images, instructions wrong as usual and according to the commit log they started just a few days ago to fix wrong hardware initialisation.

Build your own image
I'm in (using different rootfs from an Ubuntu 15.04 installation for Orange Pi PC): http://pastebin.com/xEduFFDR

One can use the corrupted Raspbian image, then mount the 2nd partition and overwrite everything from a known working rootfs (since I was already at the OPi PC, I just did a rsync -r -t -p -o -g -x --delete -l -H -D --numeric-ids -s --stats / /mnt/sda2/). Then extract lib/modules from the BSP build and then follow these instructions without step 3 and with corrected step 4 (there's no bootloader.fex -- SinoVoip did wrongly copy&paste as usual):

sudo dd if=boot0_sdcard.fex of=${card} bs=1k seek=8 sudo dd if=u-boot.fex of=${card} bs=1k seek=19096 sudo dd if=boot-resource.fex of=${card} bs=1k seek=36864 sudo dd if=env.fex of=${card} bs=1k seek=69632 sudo dd if=boot.fex of=${card} bs=1k seek=86016

Thermal issues
The A83T gets hot. I adjusted scaling_max_freq to the lower limit (2016000 1800000 1608000 1200000 1128000 1008000 912000 864000 720000 600000 480000), started cpuburn-a7 just to realize that only 4 cores are used and /sys/class/thermal/thermal_zone1/temp shows 58°C, at 1 GHz it's already 67°C, at 1.2GHz 77°C and more than 1.2GHz without heatsink isn't possible: CPU Budget:update CPU 0 cpufreq max to 1412000 min to 480000. A heatsink is needed, maximum performance without either a fan or tweaking thermal configuration (risk of overheating) impossible. At 1.8GHz without throttling when running on all cores, the A83T reaches an 7-zip score close to 6000 and finished sysbench --test=cpu --cpu-max-prime=20000 run --num-threads=8 in less than 53 seconds.

Preliminary RPi-Monitor template for A83T
Template here and results below



Banana Pi development history
Xunlong's Steven Zhao claiming he did ODM for Banana Pi:


 * All Banana Pi revisions in one picture: http://web.archive.org/web/20151129123704/http://www.orangepi.org/orangepibbsen/data/attachment/forum/201511/29/111705ylwg31q43hw43qos.jpg
 * V1.0: http://web.archive.org/web/20151129124657/http://www.orangepi.org/orangepibbsen/data/attachment/forum/201511/29/110851wg50j206xemg59w5.jpg
 * V1.01: http://web.archive.org/web/20151129125842/http://www.orangepi.org/orangepibbsen/data/attachment/forum/201511/29/111233e4gebmee5if48zjs.jpg
 * V1.3: http://web.archive.org/web/20151129130246/http://www.orangepi.org/orangepibbsen/data/attachment/forum/201511/29/111402vzhzr77harbub737.jpg
 * V1.4: http://web.archive.org/web/20151129130359/http://www.orangepi.org/orangepibbsen/data/attachment/forum/201511/29/111541aq6nnh4tt8p79ctn.jpg

GPS data and timestamps in EXIF metadata seems to be correct and point to Xunlong's office :)

Orange Pi H3 stability/heat issues
The problem with all available OS images for current H3 devices (Orange Pi) is insane overvolting/overclocking, just 2 dvfs trable entries and most users being uneducated enough to rely on performance governor in this situation (even when idle more than 10°C more than necessary). An attempt to clarify overvolting/overclocking history can be found here

Dvfs settings that worked for me (undervolted and not recommended for general useage). Tested with cpuburn-a7, sysbench and cpufreq-ljt-stress-test running in parallel (temperatures just slightly exceeding 60°C under full load):

Headless without connected USB peripherals and 4.5V DC-IN
boot_clock = 1008

[dvfs_table] pmuic_type = 2 extremity_freq = 1296000000 max_freq = 1200000000 min_freq = 480000000 LV_count = 7 LV1_freq = 1296000000 LV1_volt = 1320 LV2_freq = 1200000000 LV2_volt = 1180 LV3_freq = 1104000000 LV3_volt = 1120 LV4_freq = 1008000000 LV4_volt = 1080 LV5_freq = 960000000 LV5_volt = 1020 LV6_freq = 816000000 LV6_volt = 960 LV7_freq = 480000000 LV7_volt = 940

With connected HDMI display and USB peripherals
boot_clock = 1008

[dvfs_table] pmuic_type = 2 extremity_freq = 1296000000 max_freq = 1200000000 min_freq = 480000000 LV_count = 7 LV1_freq = 1296000000 LV1_volt = 1320 LV2_freq = 1200000000 LV2_volt = 1240 LV3_freq = 1104000000 LV3_volt = 1180 LV4_freq = 1008000000 LV4_volt = 1140 LV5_freq = 960000000 LV5_volt = 1080 LV6_freq = 816000000 LV6_volt = 1020 LV7_freq = 480000000 LV7_volt = 980

Script to fix broken settings (Debian/Ubuntu)

 * 1) !/bin/bash

export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

if [ "$(id -u)" != "0" ]; then echo "This script must be executed as root. Exiting" >&2 exit 1 fi

Fex2Bin="$(which fex2bin)" if [ "X${Fex2Bin}" = "X" ]; then apt-get -f -q -y install sunxi-tools fi

Path2ScriptBin="$(df | awk -F" " '/^\/dev\/mmcblk0p1/ {print $6}')" if [ ! -f "${Path2ScriptBin}/script.bin" ]; then echo "Can not find script.bin. Ensure boot partition is mounted" >&2 exit 1 fi

MyTmpFile="$(mktemp /tmp/${0##*/}.XXXXXX)" trap "rm \"${MyTmpFile}\" ; exit 0" 0 1 2 3 15

bin2fex <"${Path2ScriptBin}/script.bin" | grep -v "^LV" | grep -v "^max_freq" | grep -v "^min_freq" | grep -v "^extremity_freq" >"${MyTmpFile}" if [ $? -ne 0 ]; then echo "Could not convert script.bin to fex. Exiting" >&2 exit 1 fi cp -p "${Path2ScriptBin}/script.bin" "${Path2ScriptBin}/script.bin.bak"

sed -i '/\[dvfs_table\]/a \ extremity_freq = 1296000000\ max_freq = 1200000000\ min_freq = 480000000\ LV_count = 7\ LV1_freq = 1296000000\ LV1_volt = 1320\ LV2_freq = 1200000000\ LV2_volt = 1240\ LV3_freq = 1104000000\ LV3_volt = 1180\ LV4_freq = 1008000000\ LV4_volt = 1140\ LV5_freq = 960000000\ LV5_volt = 1080\ LV6_freq = 816000000\ LV6_volt = 1020\ LV7_freq = 480000000\ LV7_volt = 980' "${MyTmpFile}"

fex2bin "${MyTmpFile}" "${Path2ScriptBin}/script.bin" >/dev/null if [ $? -ne 0 ]; then mv "${Path2ScriptBin}/script.bin.bak" "${Path2ScriptBin}/script.bin" echo "Writing script.bin went wrong. Nothing changed" >&2 exit 1 fi

echo "Successfully repaired broken overvolting/overclocking settings. Reboot necessary for changes to take effect"

RPi-Monitor support for H3
The SoC's temperature can be read out with H3's 3.4.39 kernel using either /sys/class/thermal/thermal_zone0/temp or /sys/class/thermal/thermal_zone1/temp (identical). RPi-Monitor template and installation instructions can be found in the H3 overclocker's forum.