M3 only able to boot from eMMC while sd card is plugged in

Some months ago i bought a M3 to play with. I’ve taken the 2015-12-10-debian-8-jessie-mate-bpi-m3-sd-emmc.img and put in into the eMMC.

Now i want to play with another distribution and put it on the SD card. The problem: nothing happens on boot up (permanent red LED). I’ve tried several images, none of them seemed to work. After spending shitload of hours and no progress, I put the 2015-12-10-debian-8-jessie-mate-bpi-m3-sd-emmc.img on the sd card, plugged it in and voila: it boots.

Question 1: What would I have to change, that the M3 would boot from eMMC w/o the sd card plugged in?

Question 2: How could i properly clean up so that I could play with other images? Is dd if=/dev/zero of=/dev/mmcblk1 sufficient? Or do I have to do anything else? Does it require me to press the uboot/FEL in order to switch the boot device order?

Question 3: I want to use the M3 as an owncloud instance - any image where this is recommended, so I don’t have to waste my rare spare time. (headless is fine)

when M3 with a blank sdcard , it will boot from eMMC. If not a blank sdcard , it will boot failure.(permanent red LED) Empty your sdcard whith dd if=/dev/zero of=/dev/$sdcard bs=4M .

you can use a TTL line to watch what happened when M3 is booting.

So there is no way doing this without wasting a sd card into the slot? What is the logic behind putting an empty thing in a slot, so that it boots. But if there is something on the sd-card it fails? I would have get the point if there is something on the sd card which is needed to boot, but somehow it is hard for me to follow.

This is really irritating . But we can solve this problem.

#I haven’t tested these methods To boot from sd card , should do those

sudo dd if=boot0_sdcard.fex     of=${card} bs=1k seek=8
sudo dd if=u-boot.fex           of=${card} bs=1k seek=19096
sudo dd if=sunxi_mbr.fex    of=${card} bs=1k seek=20480
sudo dd if=boot-resource.fex    of=${card} bs=1k seek=36864
sudo dd if=env.fex          of=${card} bs=1k seek=69632
sudo dd if=boot.fex         of=${card} bs=1k seek=86016

So bananapi should read those data to boot . if those data is zero , bananapi should think the sd card is blank.

banana pi team said put the file(s) to 100MB of the SD Card with DD command. so you can reformat your sd card , and empty the first 100M. Like this :

Then use sudo dd if=100M_zero.img of=${card} bs=1k seek=8 use dd if=/dev/zero of=100M_zero.img bs=100M count=1 to get 100M_zero.img

Mabe Android images can be used normal sd card? Bananapi is difficult to use :sob:

Back to the fact (Question 2), that the only image i can boot is the one from my initial posting. I assume now, that the boot files are located in the eMMC and because of that the relation with this particular image need to exist.

Otherwise i cannot explain, why this is the only bootable image. If i look into the /etc/fstab / and /boot/firmware are pointing to the sdcard though.

I did dd if=/dev/zero of=/dev/mmcblk1 in order to wipe the nand flash. I put an ubuntu on the same sd card. After powering up, i only see the banana-pi image, and after that nothing. Do I’ve to wipe the /dev/mmcblk1boot0 and /dev/mmcblk1boot1 as well?