Banana Pi BPI-R4, Problem with EMMC

Hi everyone,

I’m a beginner just starting out and I’m stuck on this and I hope you can help me.

I just got a Banana Pi Bpi R4 and I’m having problems with the emmc. I copied the “. img” files to the emmc (booting from NAND) as it says on the Banana pi page/tutorial and it worked but I made a bad ppoe configuration and I couldn’t access the router through luci or ssh anymore. I tried pressing the reset button to erase the configuration but it didn’t work and I even tried to copy the “. img” files again but it still didn’t work. I used fdisk to delete mmcblk0 and copied again and it didn’t work.

Is there any way to completely erase mmcblk0 and mmcblk0boot0 to start over?

I understand that the emmc and SD use the same path and when I start with the SD card it does start and works but with emmc it doesn’t give me a signal by ssh or luci although it does detect the ethernet cable because it turns on the port light.

I used this code to copy to emmc and use the Openwrt MTK MP4.0 files from Banana Pi

echo 0 > /sys/block/mmcblk0boot0/force_ro dd if=bl2_emmc-r4.img of=/dev/mmcblk0boot0 dd if=mtk-bpi-r4-EMMC-20231030.img of=/dev/mmcblk0 mmc bootpart enable 1 1 /dev/mmcblk0

Is there a difference in performance when using SD, NAND and EMMC?

I already ordered the USB UART from aliexpress but it would arrive in about 3 weeks so right now using UART is not an option. Is there a way to use Openwrt FIP ​​and BIN files without using the UART port?

I downloaded this MP4 EMMC Image, but the name is mtk-bpi-r4-EMMC-20240620.img. Do you have the wrong file?

using these boards without uart is very tricky as it depends system is completely up…as you have seen a small config change may break your system and you are completely blind. basicly you could try booting up from nand and look into emmc-system and its config, but as openwrt uses some special filesystems like squashfs it is a bit more work to mount/change them compared to a debian/ubuntu which uses a more simple rootfs. maybe you can reset the squashfs (which should be an empty filesystem after flashing the image) and have the cleaned system back on emmc. but in case the system on emmc was hang on boot before ssh/lucs or even network itself is up you have no chance without uart.

nand is imho more like rescue-system which boots an initrd/initramfs and have storage itself in ro-mode which does not store anything user-related (basicly it is possible but much more work on spi-based storage)…emmc can store user-settings more easier as it is a mmc-controller with default rw-access.

for speed imho spi is slower, but after the initrd is loaded it is faster as this operates only in RAM, not writing anything (or only small portions) back to persistent storage. a system on mmc/nvme/sata/… normally writes many data (e.g. logfiles) back to storage which slows down entire system.

Yes, I got the same. In the code I replaced the name

Thanks for replying, yesterday I found a place to buy a USB to UART and I’ll go by today. Any tutorial you recommend?

I have another question,

I am currently using openwrt via MicroSD but I have not been able to configure it properly. When I connect the WAN port it gets the IP from the ISP router but without Internet access, then I manually configure the DNS and the router pings Openwrt.org and updates and installs packages via ssh but not via luci because it throws opkg error 9 or 7. The LAN ports do not assign IP addresses even though DHCP is enabled so I have to manually configure the PC but it only gives access to luci and ssh but I do not have Internet access.

What am I configuring wrong?

Please be patient haha, 8 years ago I had a tplink with Openwrt but it was plug&play because I did not have to configure anything to access the Internet but I thought it would be just as simple but I am seeing that this is very advanced for me, but I want to learn.