BPI-R2 new image :ubuntu-16.04-mate-desktop-docker-preview2-bpi-r2-sd-emmc.img-2017-08-01

(bpi team) #1


  1. based on ubuntu 16.04.2 LTS Mate Desktop
  2. support BPI-R2 kernel 4.4.70
  3. username & password: pi/bananapi , root/bananapi
  4. support HDMI
  5. support GMAC * 5 (2 real GE ports, 1 is WAN port, another is connected to 4 LAN ports)
  6. support SATA * 2
  7. support eMMC (support boot from eMMC)
  8. support IR
  9. support OTG
  10. support PWM (PWM1/PWM2/PWM3, PWM4 and PWM5 are not supported)
  11. support USB 3.0 * 2
  12. support mPCIe
  13. support uEnv.txt to fatload uImage
  14. support bpi-bootsel
  15. support bpi-copy to write SD/eMMC with img.zip file
  16. support docker
  17. ref. https://github.com/BPI-SINOVOIP/BPI-R2-bsp
  18. ref. https://github.com/BPI-SINOVOIP/BPI-files

How to boot from eMMC:

  1. boot from SD
  2. sudo su
  3. echo 0 > /sys/block/mmcblk1boot0/force_ro #enable /dev/mmcblk1boot0 write mode
  4. bpi-bootsel BPI-R2-EMMC-boot0-0k.img.gz /dev/mmcblk1boot0 #write once
  5. bpi-copy /path_to_your_image/xxx.img.zip
  6. poweroff
  7. remove SD & power on

Known limitations:

  1. WIFI/BT isn’t supported
  2. MIPI interface doesn’t work

Google Drive:


baidu cloud:


MD5: 021e2e5a627f9e60742c6bbb6b4e8dc8

FILESIZE: 1774241037 (~1692MB)

UNPACK: 7456MB (eMMC size)

Basic firmware for debian
Banana pi BPI-R2 LEDE OpenWRT development in progress
(bpi team) #4

i have let Gary to test it ,

(gary) #5

I think the PCIe device is not found yet on R2 board, can you please confirm if the model supports PCIe?


I’m using the 3160HMW (first one in the list).


Does this device need extra power supply? As I know, some PCIe devices need that (e.g., Intel® 82575/82576 4 port ethernet card). Or, could you test other devices?


It’s a half size mini PCIe card so no extra power supply is needed. According to the product brief ( https://www.intel.com/content/dam/www/public/us/en/documents/product-briefs/dual-band-wireless-ac-3160-bluetooth-brief.pdf ) it supports PCIe and USB. On the BPI-R2 schematic that is available currently, the USB lines on the mPCIe socket are not connected (so USB-only mPCIe cards are not supported like most of the 3G mPCIe as far as I know) but the 3160HMW should (?) be visible in the lspci output.


More console log could be helpful. We need to know what happened when PCIe linkup.

(gary) #10

Can you please share us the linux kernel booting log while this card is installed?


Has anyone actually tested this? I followed the instructions, and the board doesn’t boot from emmc.


I need to build a new card in order to do so (I’ve overwritten the previous one), I hope I’ll find some time to do it soon.

(gary) #13

Can you please try the following steps: How to boot from eMMC:

  1. boot from SD

  2. sudo su

  3. echo 0 > /sys/block/mmcblk1boot0/force_ro #enable /dev/mmcblk1boot0 write mode

  4. To write preloader to EMMC by running command:

       bpi-bootsel BPI-R2-EMMC-boot0-DDR1600-0k-0905.img.gz /dev/mmcblk1boot0
  5. To copy ubuntu image to EMMC:

       unzip -p <XXX.img.zip> | pv | dd of=<device> bs=10M status=noxfer
       bpi-copy  <XXX.img.zip> <device>       
       where the XXX.img.zip is ubuntu image we can get it from http://www.banana-pi.org/r2-download.html, and where <device> should be /dev/mmcblk1.
  6. poweroff

  7. remove SD & power on

(gary) #14


I’ve got a Intel 3160 HMW mode, also see this problem, will debug it,

(Rene Hegewald) #15

Hello @ all,

i read the thread and follow the instruction:

boot from SD
sudo su
echo 0 > /sys/block/mmcblk1boot0/force_ro #enable /dev/mmcblk1boot0 write mode
bpi-bootsel BPI-R2-EMMC-boot0-0k.img.gz /dev/mmcblk1boot0 #write once
bpi-copy 2017-09-04-ubuntu-16.04-mate-desktop-bpi-r2-sd-emmc-v1.2.0.img.zip
remove SD & power on

but does not work. After Power on, ther is Nothing to see in the Debug Console … what´s going wrong ?

Best regards, René

(Frank W.) #16

Does any error come up while calling bpi-copy? Any ubuntu-image was bigger than emmc and fails there…then image must be resized first

(Rene Hegewald) #17

nope, but uboot does not known the command “emmc” …

“emmc ecsd” or “emmc pconf 0x48”

BPI-IoT> emmc ecsd
Unknown command 'emmc' - try 'help'
BPI-IoT> emmc pconf 0x48
Unknown command 'emmc' - try 'help'
BPI-IoT> version

U-Boot  (Aug 01 2017 - 09:59:52)
arm-linux-gnueabihf-gcc (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609
GNU ld (GNU Binutils for Ubuntu) 2.26.1

Is there a Firmware update ?

(Frank W.) #18

then you have to update uboot first to actual version…

you can use my compiled version: https://drive.google.com/open?id=11XQ4n6WYSj7gGPtMwug4SITtYn0GZxOb

and install like this http://www.fw-web.de/dokuwiki/doku.php?id=en:bpi-r2:uboot#update_uboot or using bpi-update

but last ubuntu should be have actual uboot, too… :thinking:

The emmc-command is integrated in uboot since September 29th 2017 (version: “U-Boot 2014.04-rc1 (Oct 16 2017 - 19:33:23)”)

(Rene Hegewald) #19

i’ll check you wiki.

But /dev/sdx ? do you mean /dev/mmcblk ?

(Frank W.) #20

you must flash the image on host-pc to sd-card (where you boot first you bpi) not from the bpi itself…

(Rene Hegewald) #21

:slight_smile: i used the bpi-r2 … and it works :slight_smile:

(Frank W.) #22

you’ve wrote image direct to emmc (which partition)? or to your sd-card?

ubuntu boots from emmc without sd-card?

@garywang: is it possible to load uboot from emmc, boot from SD if inserted and if not using emmc-boot?