New R3 installation not working for me

My new R3 arrived last night. I have not been able to boot it from a prepared SDcard. I have been following instructions posted at Getting Started with BPI-R3 - Banana Pi Wiki and How to Setup Banana Pi R3 with OpenWRT | by Flow | Medium

I use a raspbian OS to prepare the sd card. Initially I used dd if=openwrt-mediatek-filogic-bananapi_bpi-r3-sdcard.img of=/dev/sda1 BS=10M after having prepared the sdcard as /dev/sda with one partition. As this didn’t work I downloaded bpi-tools and use bpi-copy (but noticed it is essentially doing the same thing with dd)

The output from bpi-copy is:

# bpi-copy openwrt-mediatek-filogic-bananapi_bpi-r3-sdcard.img /dev/sda1
SRC=openwrt-mediatek-filogic-bananapi_bpi-r3-sdcard.img
DST=/dev/sda1
COPYMODE=imagetodisk
imagetodisk
bpi-copy(v1.3.4(github)), bananapi image & disk tools

[ snipped ]

Warning: Try to write openwrt-mediatek-filogic-bananapi_bpi-r3-sdcard.img to BOOTDISK /dev/sda1
==============================================================
Thu 24 Oct 20:33:30 AEDT 2024
*** start COPY (blue led on ) .....
umount device: /dev/sda1
==============================================================
IMGFILE=openwrt-mediatek-filogic-bananapi_bpi-r3-sdcard.img
==============================================================
img
7+1 records in
7+1 records out
78643204 bytes (79 MB, 75 MiB) copied, 0.481122 s, 163 MB/s
75.0MiB 0:00:00 [ 156MiB/s] [  <=>                                                                                                                                                 ]
0+1201 records in
0+1201 records out
***  end  COPY (blue led off) .....
Thu 24 Oct 20:33:38 AEDT 2024
==============================================================
RUNTIME 0:8
OK!! You can remove the BOOTDISK /dev/sda1 now!!

When I put the SDcard into the R3 and with the switches all in the up position and power on, all I get is a row of question marks and nothing else.

Sometimes I get this output and nothing else:

F0: 102B 0000 FA: 1040 0000 FA: 1040 0000 [0200] F9: 103F 0000 F3: 1001 0000 [0200] F3: 1001 0000 F6: 300C 0028 F5: 480A 0031 00: 1005 0000 FA: 1040 0000 FA: 1040 0000 [0200] F9: 103F 0000 F3: 1001 0000 [0200] F3: 1001 0000 F6: 300C 0028 01: 102A 0001 02: 1005 0000 BP: 2000 00C0 [0001] EC: 0000 0000 [3000] T0: 0000 010F [010F] System halt!

I connect to the R3 console using a TTL to USB converter and attach to that using screen with the command screen -L /dev/ttyUSB0 115200

I have tried two SDCards (different capacities) and the behaviour is the same on both. I have tried the copy of the image to the cards several times.

As I can’t get any further in the install process I am seeking advice on how to get the process to work.

Many thanks LR.

Apologies for the output of the command text being in bold bigger text as well as other formatting changes I didn’t intend or request. I don’t (yet) know to stop that happening.

You can format the outputs as code by selecting it and using Code-Button (<>). You should be able to edit your messages.

To the original problem…you can try more recent images. Either debian/ubuntu from me or mainline openwrt.

Make sure you flash uncompressed image (img) and card is inserted correctly. The lines you see is bootrom which does not find bootloader (bl2) from selected bootdevice (dip switches).

Thanks very much for your help so far Frank. I have struggled with the dip switches settings so have made a bit but not a lot of progress. Looking at the top of the card where one can see the RJ45 ports and the SFP and the GPIO pins I think that when the dip switches are in the raised position that means zero, or high. while in the lowered position they are 1 or low. For example the eMMC boot setting is high (0), low (1), high(0), high(0).

Anyhow, I cannot get any SD card install to boot. I bought a new card, partitioned, and used dd to copy the openwrt-mediatek-filogic-bananapi_bpi-r3-sdcard.img image to it. When I have the dip switches set to low, low, low, low it produces this output:

SF: Detected w25q256 with page size 256 Bytes, erase size 4 KiB, total 32 MiB
Reading from 0x180000 to 0x46000000, size 0x100 ... OK
Reading from 0x180000 to 0x46000000, size 0x1b98080 ... OK
## Loading kernel from FIT Image at 46000000 ...
   Using 'config-1' configuration
   Trying 'kernel-1' kernel subimage
     Description:  ARM64 OpenWrt Linux-5.4.171
     Type:         Kernel Image
     Compression:  lzma compressed
     Data Start:   0x460000e8
     Data Size:    28910373 Bytes = 27.6 MiB
     Architecture: AArch64
     OS:           Linux
     Load Address: 0x48080000
     Entry Point:  0x48080000
     Hash algo:    crc32
     Hash value:   04231e6a
     Hash algo:    sha1
     Hash value:   c1b633d7ba137a6b22cbe0dee22b68bb086bf3e5
   Verifying Hash Integrity ... crc32 error!
Bad hash value for 'hash-1' hash node in 'kernel-1' image node
Bad Data Hash
ERROR: can't get kernel image!
MT7986>

why won't the SDcard image boot?

When I have the switches set to eMMC - high, low, high, high  the machine boots a version of openWRT that I did not knowingly install. My best guess is it was already there. Otherwise I am at a complete loss as to how it was ever copied there. The openWRT initial screen says openWRT 21.02 - SNAPSHOT  This is very confusing.

within U-Boot can I erase eMMC?  How?

While it was working why does the disk page command show a few MB of storage, when the eMMC is advertised as 8GB?


# df -hP
Filesystem                Size      Used Available Capacity Mounted on
/dev/root                28.0M     28.0M         0 100% /rom
tmpfs                   997.1M    100.0K    997.0M   0% /tmp
/dev/ubi0_2              23.7M    472.0K     22.0M   2% /overlay
overlayfs:/overlay       23.7M    472.0K     22.0M   2% /
tmpfs                   512.0K         0    512.0K   0% /dev

How can I make use of the whole 8GB?

But for now I need to solve the issue of booting from the SDcard image so I can proceed to copy to NAND and then to eMMC as per the original instructions.

Many thanks.
LR.

PS the strange formatting of bold and coloured words, seemingly random is not something I did and am yet to understand why it happened. So apologies again for that.

All up (1/high) should be sdcard on R3 (R4 is down=high,so both down).

So i guess you are booting the vendor image from emmc,not the one from your sdcard.

For sdcard,there is a spring mechanism,not only put card in till resistance,the card has to be locked against the spring.

Using full 8gb of emmc with openwrt is tricky as for sysupgrade the main partition was smaller to avoid data loss. Afaik you can add additional partition. Resizing the existing can lead to non functional sysupgrade

Thank you for all the help, it’s been great (and apologies for the delay in updating). I’ve clarified the dip switch positions and now clear on the settings.

I solved the SDcard boot problem. It was due to a silly mistake I made and am embarrassed about it. When I used dd to write the image to the card I partitioned the card first. So I wasn’t writing to the raw block device but at some offset dictated by the partitioning. That is, dd if= of=/dev/sda1 When I realised, I deleted the partition and used dd if= of=/dev/sda and it worked perfectly. I tried this on additional cards and all booted the R3 without problem.

Subsequent install steps of then copying the image to NAND, booting from there, installing to eMMC and booting from there all worked fine.

Due to another thread, in which you also helped, I found the missing wireless interfaces were due to some contention between the TTL and the wireless circuits, so as per that thread booting with the serial disconnected solved that and it’s been fine since.

many thanks.