BPI-M3 new image:bpi-m3 Ubuntu 16.04 Beta Mate

Image works, but it’s got the same old kernel as every other image. Other issues previously reported seem to be unresolved (for instance the “load always 1 or more” issue - https://github.com/BPI-SINOVOIP/BPI-M3-bsp/issues/3).

Login: bananapi/bananapi Sudo to root with the same password.

Apart from that: Providing a small image with a minimum of services is a good idea. For instance, the previous Ubuntu Mate image (BPI-M3 new image:Ubuntu Mate 15.10 for BPI-M3 GPU PowerVR SGX544MP (20160317)) came with a lot of unnecessary services, including a MySQL server listening on all interfaces. That is bad security practice, it makes the images large, and people should install what they need when they need it.

1 Like

Sorry, but that applies to every OS image where human beings fiddled around manually. I would NEVER use any OS image where a human ‘image builder’ already messed things up.

Unless you can’t get an OS image built from scratch (OpenWRT, Bananian, Armbian) you should not use the board for anything serious. It’s just insane to trust all these crap OS images that contain more security holes than you can imagine!

Is there any way to use the kernel you provide in this image with this image here? I’m not that experienced in changing parts before an install, but if you could write a simple guide, then I’d be most grateful :slight_smile:

IIRC, there is an archive with this stuff (download it now since I will delete it soon). But the whole approach is wrong.

Why do you accept SinoVoip’s behaviour to ignore you users? Why don’t you kick their asses until they provide

Look at this: This is a single individual from the linux-sunxi community who provides the toolset necessary to do exactly that even on a brand new architecture: http://forum.pine64.org/showthread.php?tid=293

You get a toolchain to create a minimalistic OS image that you can then combine with a rootfs of choice and you get also upgrade mechanisms for both kernel and u-boot for free. He did all of this unpaid in his spare time since he cares about the users that later use his software. So that they can easily upgrade when important fixes to kernel or u-boot are available and use the distro of their choice.

What does SinoVoip instead: They still rely on Allwinner’s BSP, they don’t provide upgrade mechanisms so you’re always forced to start over from scratch when you just want to benefit from a simple bugfix (see above, their answer is unbelievable) and their OS images are a real mess since they do not even think about that security might be a concern.

All the aforementioned software is free, all the many recommendations to do it better are/were free, it would be so easy for SinoVoip to adopt a sane development style but they don’t do. For a single/simple reason: They DO NOT care about their users. Unfortunately. And nothing will change as long as users happily accept that.

Your only hope with the M3 is that a few linux-sunxi individuals still think A83T boards are nice and continually development mainline u-boot/kernel support for A83T/H8. So maybe 2017 these boards might be useable for something else than toy useage.

i just ask you to do you want to do , and stop to attack us . do not let me despise you.

if you want help us ,please stay here , or , you can standy by.

Hey Lion, you do not only NOT answer your customer’s questions even if they ask multiple times. You do also delete other posts that mention that: How to use BPI-M3 wifi extebd antenna slot

My last post has been deleted. Your way to deal with criticism is way too funny. Why don’t you start to answer your customer’s questions? Come on. You ship a product with non-working WiFi, then tell your customers somewhere hidden in the forums to desolder something called ‘R2’ to get working WiFi, a customer asks what is this ‘R thing’ days ago and you choose to stay silent. Is this all we can expect from you? Ignoring your customers? Again and again?

1 Like

Nobody can help you. That’s the unfortunate truth. If you would read what’s written above or force your software devs to read this then most of your OS image problems would be already resolved and you would have a lot more happy customers.

But you don’t even think about. And that’s the real problem. You don’t even think about improving the software situation.

I outlined above how one individual managed to provide a development toolchain that leads automagically to better OS images. If one human being is able to do this in his spare time, if this whole software is already written, if I already pointed you to a toolchain that exactly matches YOUR REQUIREMENTS (still relying on Allwinner’s BSP instead of doing it right) then why don’t you try it out?

The software is already written and open source. You’re allowed to use it for free. It would take your devs maybe 1 or 2 days to adopt the system to provide clean OS images that are also able to be upgraded online. And this is what your customers want. If you would start listen to them and not ignore them as usual.

And what do you do? Ignore all of this and implement mechanisms that are of no use to your customers but might help your devs saving some time following their wrong ‘development style’. And since this is only just another attack in your opinion…

we have sale many board , and try to full support .even is bad , the right way is you or other open source user to help us . just do you can do

i know your real think . you want tell all world , armbian is the best good. and advertise it , no problem. just do your best work. so it is also support banana pi. we can coworker with each.

for you ,we just a hardware provider, you do the best software , it is OK.

for me , we do a haredware , even we software is bad, but just let user to test , user will auto choose your best software , not need attack and obloquy us at each subject.

this is our forum , please keep your base respect.

Ok, Lion, thanks for showing that you do not want to understand. I do NOT pointed you to Armbian but to https://github.com/longsleep/build-pine64-image (just read what’s written above). This is NOT Armbian, this is one linux-sunxi dev who did a great work you could directly benefit from. I explained to you that you could take his work to improve your OS images. You don’t want to. You don’t want to even think about.

I explained to you that the settings you use for M2+ will lead to low benchmark scores and a lot of negative reviews (again: It’s not about Armbian, it’s the work of many linux-sunxi devs you ignore). You don’t want to even think about.

And that’s since you think about your customers only as people who BUY your hardware and not people who want to USE your hardware. And as long as this view doesn’t change, nothing on the software/settings side will change.

The way you develop your software (relying on old outdated code from Allwinner and blindly taking their unfavourable settings) implies that you have to deal with aging u-boot, an initrd, a FAT partition and a 2nd partition with the rootfs on it. I pointed you not to Armbian (since we do it completely different) but to a development toolchain that works the same way as you need it. By adopting this you could speed up creation and enhance quality of your OS images especially for the M3.

But you don’t even think about improving this. Thx for confirmation. Maybe you just don’t understand the importance of software/settings that make the difference between a paperweight and a development board? But since you don’t care it doesn’t matter that much.

1 Like

i just hope you keep tolerant to us .

i have ask mikey , he say ,we need finish all driver function test at first , when we finish this work , we will learn from your point. many code is above hardware. .

You weren’t kidding. Not even nano is installed, /etc/fstab is empty, and the Ubuntu port sources are downloading from .tw. These are just the first 3 things I stumpled upon, before pulling out my sdcard again for another format.

I know this says “beta” but this won’t do. And I’m pretty annoyed that I have to reinstall an image every time there’s a slight update to things.

I think I’ll stick to @tkaiser’s modified 15.04, even though 15.04 is EOL when it comes to support from Ubuntu. Perhaps a 15.10 image could be arranged if we all ask nicely, or maybe even a 16.04 LTS image could be arranged when it comes out on April 21st?

If not, then I guess I’ll end up buying an RPI3, and go back to having a USB hub running for the hard drive. This is not worth the hassle and the Welsh are just better at it.

You could try to build a community Xenial distro for M3. @bruberg seems experienced enough to help.

Using Armbian’s build system you could create a rootfs that can be combined with a freshly created image relying on Allwinner’s A83T BSP. If you follow Armbian’s instructions and by doing a

./compile.sh KERNEL_ONLY=no BOARD=orangepih3 PROGRESS_DISPLAY=plain RELEASE=xenial BUILD_DESKTOP=no EXTENDED_DEBOOTSTRAP=yes ROOTFS_TYPE=ext4 BRANCH=default COMPRESS_OUTPUTIMAGE=no

you get a whole image no one has tampered already. Then you would mount this image, edit and remove some stuff this way:

LOOP=$(losetup -f)
losetup $LOOP /path/to/Armbian.raw
partprobe $LOOP
mount ${LOOP}p1 /mnt/

(adjust the contents as outlined below) and then

umount /mnt/
losetup -d $LOOP

You would alter /mnt/etc/default/cpufrequtils to use 480/1800 MHz, create /mnt/root/.machine.id that it reads “Banana Pi M3”, remove /mnt/etc/apt/sources.list.d/armbian.list (since Armbian’s kernel updates are useless and u-boot updates would destroy the bootloader) and also /mnt/boot and /mnt/lib/modules.

Then do a ‘cd /mnt && tar armbian_rootfs.tar *’, mount the 2nd partition of the M3 image, delete there everything except of boot/, lib/modules/ and lib/firmware/ and untar the created archive. Then you have an image that has never been booted, that will ask for a new root password on first boot, that will regenerate SSH keys on first boot (if you use any of SinoVoip’s OS images this doesn’t happen – think about if you connect your board to the internet :wink: ), that will resize the partition automagically on first boot, that redistributed IRQs accross CPU cores, that has armbianmonitor ready and so on.

It might even be possible to build an OS image with full HW acceleration. You will need probably some binary stuff for the PowerVR GPU you find in latest SinoVoip images and you might be able to benefit from hw accelerated video decoding through Cedrus/Vdpau since maybe the minimal support patch for A64 already ‘unlocks’ A83T (H3, A64 and A83T share the same IP here but maybe a different cedrus_get_ve_version version). In case you want to try it out better choose ‘BUILD_DESKTOP=yes’ above since then all of our accelerated armhf desktop packages become part of the image.

And in case you really look into it you could also teach SinoVoip how to produce an OS image that can be flashed through FEL mode. Simply combine the adjusted Armbian rootfs with these instructions: Build Livesuit Image for BPI-M3 to burn via phoneixsuit

It’s really that easy, I just tried it out with a virgin jessie rootfs on the base of the last image for M3 I published:

 ____                                  ____  _   __  __ _____ 
| __ )  __ _ _ __   __ _ _ __   __ _  |  _ \(_) |  \/  |___ / 
|  _ \ / _` | '_ \ / _` | '_ \ / _` | | |_) | | | |\/| | |_ \ 
| |_) | (_| | | | | (_| | | | | (_| | |  __/| | | |  | |___) |
|____/ \__,_|_| |_|\__,_|_| |_|\__,_| |_|   |_| |_|  |_|____/ 
                                                              

Welcome to ARMBIAN Debian GNU/Linux 8 (jessie) 3.4.42-BPI-M3-Kernel 

System load:   4.72            	Up time:       7 min		Local users:   2            	
Memory usage:  14 % of 2011Mb 	IP:            192.168.83.98
CPU temp:      73°C           	
Usage of /:    5% of 59G    	

Last login: Thu Apr 14 17:22:19 2016 from macbookpro-tk.fritz.box
tk@bananapim3:~$ sudo -s
[sudo] password for tk: 
root@bananapim3:/home/tk# armbianmonitor -m
Stop monitoring using [ctrl]-[c]
Time        CPU    load %cpu %sys %usr %nice %io %irq   CPU
17:33:45: 1608MHz  4.92  17%   7%   8%   0%   1%   0%   73°C
17:33:50:  480MHz  4.93  18%   7%   8%   0%   1%   0%   73°C
17:33:55:  480MHz  4.61  17%   7%   8%   0%   1%   0%   66°C
17:34:00:  480MHz  4.32  17%   7%   8%   0%   1%   0%   65°C
17:34:05:  480MHz  4.06  17%   7%   8%   0%   1%   0%   64°C
17:34:11:  480MHz  3.81  17%   7%   8%   0%   1%   0%   64°C
17:34:16:  480MHz  3.59  17%   7%   8%   0%   1%   0%   64°C
17:34:22: 1608MHz  3.86  17%   7%   8%   0%   1%   0%   71°C
17:34:27: 1608MHz  3.95  18%   7%   8%   0%   1%   0%   71°C
17:34:33: 1608MHz  4.60  18%   7%   8%   0%   1%   0%   70°C^C
root@bananapim3:/home/tk# grep processor /proc/cpuinfo 
processor	: 0
processor	: 1
processor	: 2
processor	: 3
processor	: 4
processor	: 5
processor	: 6
processor	: 7

Whole boot log (you can see automatic rootfs expansion and so on): http://sprunge.us/SXBE

While transferring this new semi Armbian image over SSH to burn it on eMMC I was reminded that SinoVoip chose to NOT fix this bug I reported ages ago so time to limit maximum clockspeed to 480 MHz (network transmissions break otherwise, it’s not the eMMC)

In case you try this with a Xenial rootfs please think about adjusting the paths to script.bin/uEnv.txt in u-boot scripts to point to /boot/ instead. Then you’re able to choose resolution (and also switch between HDMI/DVI) easily using h3disp afterwards.

Oh please do upload it somewhere. I’m having compile issues at the ./compile.sh -step, and I’m pretty sure the VirtualBox will explode at some point.

http://kaiser-edv.de/tmp/2m8dxM/Semi_Armbian_5.07_M3.7z

No support, no guarantees, this is an ‘official’ image from SinoVoip not containing their latest AXP fixes with replaced Armbian 5.07 rootfs and the aforementioned tweaks. I would expect that no video/3D HW acceleration works but as headless server it should perform good.

Login with root/1234

You will then be asked to change the root pwd and to create a new user account. Many of the stuff outlined in our documentation applies to this rootfs: http://www.armbian.com/documentation/

But please keep in mind that this is not even 50% Armbian since kernel/u-boot are from M3 BSP and you get only normal Debian packages via online updates but not the most important parts. But as already said: The contained rootfs can be used to create a nice image (even from a security point of view if you forget how horrible Allwinner’s 3.4.39 kernel is and how many fixes are missing :wink: )

4 Likes

Kernel update and so on is possible by downloading manually a few Debian packages from https://github.com/BPI-SINOVOIP/BPI-files

You need the following three and install all of them using ‘dpkg -i’

BPI-files/debs/bananapi-bpi-tools_1.0.2_armhf.deb
BPI-files/debs/linux-bananapi-bpi-m3-kernel3_1.2.8_armhf.deb
BPI-files/debs/bpi-m3/xserver-xorg-video-gpu-bananapi-bpi-m3_1.0-15.10_armhf.deb

Then kernel/u-boot aren’t exchanged yet but you have to do this

bpi-bootsel /usr/lib/u-boot/bananapi/bpi-m3/BPI_M3_720P.img.gz

And then you can simply use bin2fex/fex2bin (contained in Armbian) to convert/modify script.bin (eg. fixy the ‘average load above 1’ problem or enable DVI displays, configure better throttling). The stuff can be found below /usr/lib/u-boot/bananapi/bpi-m3/linux/ and needs a reboot after modifications.

2 Likes

And again: Of course it doesn’t work this way: There’s a syntax error that prevents loading the correct script.bin (reported back 6 weeks ago but as usual @sinovoip doesn’t give a shit) and the whole stuff has to be copied onto the first partition since they try to read from there.

Therefore:

mount /dev/mmcblk0p1 /mnt/ cp -rp /usr/lib/u-boot/bananapi/bpi-m3 /mnt/bananapi/

Then fix the 8th line in /mnt/bananapi/bpi-m3/linux/uEnv.txt so that it reads ‘script=script.bin’ and make adjustments to /mnt/bananapi/bpi-m3/linux/script.bin instead. After a reboot it should finally work.

1 Like

Thumbs up, you’re quite a hero :slight_smile:

However, I decided to give it a retry and use a 64bit VirtualBox instead. I got a little further this time, but I’m stuck on these errors: [ o.k. ] Creating board support package [ orangepih3 ] [ o.k. ] Fingerprinting [ Armbian 5.07 Orangepih3 Ubuntu xenial default Linux ] [ o.k. ] Building package [ linux-xenial-root-orangepih3 ] [ o.k. ] Starting build process for [ orangepih3 xenial ] [ o.k. ] Creating new rootfs for [ xenial ] [ o.k. ] Installing base system [ Stage 1/2 ] I: Retrieving Release I: Retrieving Release.gpg I: Checking Release signature I: Valid Release signature (key id 790BC7277767219C42C86F933B4FE6ACC0B21F32) I: Retrieving Packages I: Validating Packages I: Found packages in base already in required: locales I: Resolving dependencies of required packages... I: Resolving dependencies of base packages... I: Checking component main on http://localhost:3142/ports.ubuntu.com... E: Couldn't find these debs: debconf-utils [ error ] ERROR in function create_rootfs_cache [ debootstrap-ng.sh:173 ] [ error ] Debootstrap base system first stage failed [ o.k. ] Process terminated [ error ] ERROR in function unmount_on_exit [ debootstrap-ng.sh:559 ] [ error ] debootstrap-ng was interrupted [ o.k. ] Process terminated

I’ve installed debconf-utils via apt-get, but something tells me that’s not the solution. Is it because localhost:3142/port.ubuntu.com (and thus Xenial) doesn’t have debconf-utils?