Standard installer on RPi 3B tries to use bootp and obviously fails

Hello all,

I am unsuccessful so far ar booting my RPi 3B using the standard installer. It boots, loads u-boot.bin and from there identifies the ethernet adapter and tries to load its OS from my local DHCP server instead of booting of the installed OS. What obviously fails.

What is special in my setup is that I did not burn the installation media on a SD card but on an external msata SSD. I had confirmed just before that this was working: this RPi has been configured to boot from USB for a long time. I used the Raspberry Pi Imager to download, burn and boot from the current iteration of Raspbian Lite sooner today. Without a SD card in the RPi. Following the exact same method with Home Assistant led to the Pi trying to use BOOTP, as demonstrated by this capture made using a USB to serial adapter and adding a “console=serial0,115200” entry to the cmdline.txt file:


=~=~=~=~=~=~=~=~=~=~=~= PuTTY log 2020.04.30 21:37:00 =~=~=~=~=~=~=~=~=~=~=~=


U-Boot 2020.01 (Apr 16 2020 - 02:07:37 +0000)

DRAM:  948 MiB
RPI 3 Model B (0xa02082)
MMC:   mmc@7e202000: 0, mmcnr@7e300000: 1
In:    serial
Out:   serial
Err:   serial
Net:   No ethernet found.
starting USB...
Bus usb@7e980000: scanning bus usb@7e980000 for devices... 3 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
WARNING at drivers/mmc/bcm2835_sdhost.c:410/bcm2835_send_command()!
WARNING at drivers/mmc/bcm2835_sdhost.c:410/bcm2835_send_command()!
Card did not respond to voltage select!
Card did not respond to voltage select!

Device 0: unknown device
Waiting for Ethernet connection... done.
BOOTP broadcast 1
DHCP client bound to address 10.40.0.10 (3 ms)
*** Warning: no boot file name; using '0A28000A.img'
Using smsc95xx_eth device
TFTP from server 10.40.0.1; our IP address is 10.40.0.10
Filename '0A28000A.img'.
Load address: 0x200000
Loading: *T T T T T T T T T T 
Retry count exceeded; starting again
missing environment variable: pxeuuid
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/01-b8-27-eb-c0-eb-3c
Waiting for Ethernet connection... done.
Using smsc95xx_eth device
TFTP from server 10.40.0.1; our IP address is 10.40.0.10
Filename 'pxelinux.cfg/01-b8-27-eb-c0-eb-3c'.
Load address: 0x2500000
Loading: *T T T T T T T T T T 
Retry count exceeded; starting again
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0A28000A
Waiting for Ethernet connection... done.
Using smsc95xx_eth device
TFTP from server 10.40.0.1; our IP address is 10.40.0.10
Filename 'pxelinux.cfg/0A28000A'.
Load address: 0x2500000
Loading: *T T T T T T T T T T 
Retry count exceeded; starting again
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0A28000
Waiting for Ethernet connection... done.
Using smsc95xx_eth device
TFTP from server 10.40.0.1; our IP address is 10.40.0.10
Filename 'pxelinux.cfg/0A28000'.
Load address: 0x2500000
Loading: *T T T T T T T T T T 
Retry count exceeded; starting again
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0A2800
Waiting for Ethernet connection... done.
Using smsc95xx_eth device
TFTP from server 10.40.0.1; our IP address is 10.40.0.10
Filename 'pxelinux.cfg/0A2800'.
Load address: 0x2500000
Loading: *T T T T T T T T T T 
Retry count exceeded; starting again
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0A280
Waiting for Ethernet connection... done.
Using smsc95xx_eth device
TFTP from server 10.40.0.1; our IP address is 10.40.0.10
Filename 'pxelinux.cfg/0A280'.
Load address: 0x2500000
Loading: *T T T T T T T T T T 
Retry count exceeded; starting again
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0A28
Waiting for Ethernet connection... done.
Using smsc95xx_eth device
TFTP from server 10.40.0.1; our IP address is 10.40.0.10
Filename 'pxelinux.cfg/0A28'.
Load address: 0x2500000
Loading: *T T T T T T T T T T 
Retry count exceeded; starting again
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0A2
Waiting for Ethernet connection... done.
Using smsc95xx_eth device
TFTP from server 10.40.0.1; our IP address is 10.40.0.10
Filename 'pxelinux.cfg/0A2'.
Load address: 0x2500000
Loading: *T T T T T T T T T T 
Retry count exceeded; starting again
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0A
Waiting for Ethernet connection... done.
Using smsc95xx_eth device
TFTP from server 10.40.0.1; our IP address is 10.40.0.10
Filename 'pxelinux.cfg/0A'.
Load address: 0x2500000
Loading: *T T T T T T T T T T 
Retry count exceeded; starting again
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0
Waiting for Ethernet connection... done.
Using smsc95xx_eth device
TFTP from server 10.40.0.1; our IP address is 10.40.0.10
Filename 'pxelinux.cfg/0'.
Load address: 0x2500000
Loading: *T T T T T T T T T T 
Retry count exceeded; starting again
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm-bcm283x-rpi
Waiting for Ethernet connection... done.
Using smsc95xx_eth device
TFTP from server 10.40.0.1; our IP address is 10.40.0.10
Filename 'pxelinux.cfg/default-arm-bcm283x-rpi'.
Load address: 0x2500000
Loading: *T T T T T T T T T T 
Retry count exceeded; starting again
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm-bcm283x
Waiting for Ethernet connection... done.
Using smsc95xx_eth device
TFTP from server 10.40.0.1; our IP address is 10.40.0.10
Filename 'pxelinux.cfg/default-arm-bcm283x'.
Load address: 0x2500000
Loading: *T T T T T T T T T T 
Retry count exceeded; starting again
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm
Waiting for Ethernet connection... done.
Using smsc95xx_eth device
TFTP from server 10.40.0.1; our IP address is 10.40.0.10
Filename 'pxelinux.cfg/default-arm'.
Load address: 0x2500000
Loading: *T T T T T T T T T T 
Retry count exceeded; starting again
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default
Waiting for Ethernet connection... done.
Using smsc95xx_eth device
TFTP from server 10.40.0.1; our IP address is 10.40.0.10
Filename 'pxelinux.cfg/default'.
Load address: 0x2500000
Loading: *T T T T T T T T T T 
Retry count exceeded; starting again
Config file not found
Waiting for Ethernet connection... done.
BOOTP broadcast 1
DHCP client bound to address 10.40.0.10 (5 ms)
Using smsc95xx_eth device
TFTP from server 10.40.0.1; our IP address is 10.40.0.10
Filename 'boot.scr.uimg'.
Load address: 0x2400000
Loading: *T T T T T T T T T T 
Retry count exceeded; starting again
HassOS>

Is there a way to get out of this? Is it a bug in u-boot when one boots from USB? Should I try to specify the root partition in the cmdline.txt? Or to have ituse the regular bootcode.bin file instead of u-boot?

Regards,
Xavier

1 Like

OK.

So I re-read the boot sequence on the RPi 3 B and what I see should mean that my USB boot device is not recognized, so the RPi falls back on net boot.

So the question becomes: how comes a SSD drive that works perfectly with Raspbian does not work with hassos? Is there anything I can do instead of trying to install over a Raspbian lite? I think it is possible since I’ve seen people write about it on this fora, but it is not described on the official installation page.

1 Like

I have the same situation. How did you solve it?

1 Like

I tried HA OS installation on a RPi 3B using an SSD, it worked on first boot and able to initialise but as soon as I reboot HA the SSD is not anymore loaded.

1 Like

I had, and still have this same problem. I thought I had a working solution where I basically ended up just mounting the SSD partitions while using the SD card to boot. Well, after a recent power outage my HA is all messed up not reliably mounting the SSD partitions and I’ve lost a bunch of HA functionality. Fortunately I was taking daily full backups and have one right before the power outage but now I still can’t seem to get thing loading/booting right. I would actually prefer also to just boot straight from the SSD but that just doesn’t seem possible. I’m not sure if it’s a problem with the specific brand/model of SATA to USB adapter I have. It’s a StarTech which are usually pretty well supported devices. I’m going to have to figure this out so I can get my HA back up and running.

I have exact the same situation here. HA works perfect until you shut it down. (The reboots are working). Does anybody have a solution for this?

I ended up just changing to use the SSD for data only which is officially supported. This means I’m still just booting off of the SD card but all of my data is being stored on the SSD. Booting off of an SSD on a RPi 3 is just not reliable enough to risk it.

I am having the exact same issue, did anyone manage to find a solution?

I’m having the same issue.