Install OpenWrt (Snapshot) on BPI R3

hello people, I am very new to this topic and unfortunately have no real experience how to build images or flash them properly.

I would like to flash the EMMC and NAND, but I don’t know how to do it via the GPIO interface. i have a usb to ttl here and would like to know what software i need so that i can flash the EMMC

as soon as i flash the newest snapshot version on a sd card, only the red and green leds light up. SSH access works fine, but the WebUI is not displayed.

I would be very grateful for any help

To install to NAND and then subsequently to eMMC the best is to connect to the debug UART. Use your USB to TTL adapter in 3.3V setting and connect RX, TX and GND. See here to find the right pins of the Debug UART:

Other than official release images (which are not yet available for the R3) OpenWrt development snapshots don’t come with the LuCI Web-UI pre-installed. Hence you will have to install it yourself using

opkg update
opkg install luci-ssl

Alternatively you can also generate ready-made images with additional packages pre-installed using the OpenWrt Firmware Selector.

ahh okay, so i have connected the usb to ttl now, which software should i use? or rather linux? if so which linux?

You can use puTTY on Windows or (for example) minicom on any Linux or BSD distribution.

if i connect via putty, how do i flash the emmc, when if it is connected to windows or linux?

or must the usb to ttl be connected directly to the banana pi?

so the usb to ttl is shown to me in linux, how must the switches be on the board so that i can also access the nand and emmc? can i also read out the emmc with lsblk?


You need the USB serial adapter and puTTY just to see the debug console output and interact with the boot menu. Everything needed for installation is contained in the sdcard image.

So, step by step:

  • You need the USB end of the adapter plugged to your computer.
  • connect RX, TX and GND signals of the adapter to the Debug UART of the BananaPi R3
  • download *sdcard.img.gz file
  • decompress (gunzip) *sdcard.img.gz file
  • write *sdcard.img to microSD card
  • insert microSD card in BananaPi R3 board
  • strart puTTY and select the COM port of the USB to serial adapter, 115200 baud, 8N1 or use minicom on Linux and select /dev/ttyUSB0.
  • put switches of the BananaPi into position to boot from SD card and select NAND flash with the SPI-chipselect switch
  • now power on the board, you will see U-Boot menu after a short time
  • select Install ... to NAND option
  • once installation has completed (1-2 seconds) you can disconnect the board from power
  • now put switches into position to boot from NAND flash and select eMMC with the MMC data switch
  • connect the board to power again, this time you will see bootmenu start started from NAND
  • select Install ... to eMMC option
  • once installation has completed (1-2 seconds) you can disconnect the board from power
  • now put switch into position to boot from eMMC
  • when you connect to power again, you will see the board booting from eMMC

I think this is what I need. So to clarify when supplied it has openwrt but not installed to emmc, correct ?

Which is the spi chipselect switch ? This is not one of the 4 switches in a row then ?

My board came with all-empty flash. It can be that newer boards come with SinoVoip’s OpenWrt-fork pre-installed.

The SPI chip select is SW5 of the 4 hardware switches you described. The MMC data switch is SW6. SW1 and SW2 are bootstrap pins to select boot device and method for the SoC’s BootROM.

Even more detailed description of the switch positions:

Thank you Daniel! I think those instructions should be added to

i flashed the sd image to the sd card, made the switches to boot SD, started the pi but no U-Boot menu comes up at minicom

Have I flashed the wrong image on the sd-card?


There is not even the bootrom (always shown independend of bootmedia)…are you sure you are using the right tty device, connected the right way (tx-rx,rx-tx,gnd-gnd) and board powered on (red led on)?

the red and green leds are lit and yes i have selected the correct one


i even have access to the pi with putty (see screenshot)



Simple question: Did you cross RX and TX? You have to. TX of the R3 has to be connected to RX of the USB-serial adapter, RX of the R3 to the TX of the adapter.

If putty works i guess there is another ttyUSBx or settings are wrong.

ls /dev/ttyUSB*

Show your settings in minicom (speed 115200 8n1,no flow control).

If all is right,maybe there is no new output after board was booted and you have to press only enter.

Btw were holes from the heatsink matching? What is the partnumber to find it? In my current tests i get no higher temp than 45°C,but i have not yet a closed case

I think, as puTTY asked for a login, he was using puTTY to connect via SSH, and not via serial.

we have now flashed the brand new image, the problem was a defective cable

the PI works fine so far, but what packages do i need to install to use USB or NVME? and what other packages does the pi need?

I have even written a complete documentation, (currently still in german —> soon also in english) which I would like to publish here soon.

how can i resize the partition?


Thanks I’ve got the one image on my SD card. Can I confirm I can do both flashes with the same image NAND and emmc?

This is different from the instructions on the banana-pi wiki right?

Can I confirm the switches in the 3 states. I can find this confusing as the board names them ABCD not with numbers for me at least.

Board ABCD




This sort of info will really help the novice like me.

You can access either sd or emmc (same for nand/nor).

Daniel and i have currently only v1.0,letters came with 1.1.

But i had Added them to my table