DieterReuter / image-builder-rpi64

Build SD card image for Raspberry Pi 3 64bit
MIT License
157 stars 37 forks source link

Not booting on Raspberry Pi 4 Model B (4GB RAM) #99

Closed d11wtq closed 5 years ago

d11wtq commented 5 years ago

I'm not exactly sure what the issue is as the Pi doesn't boot at all, but when I flash the latest release to the microSD card and power on the Pi, the LED blinks a couple of times to indicate it's reading the disk and then goes off and only the power LED remains. The Pi does not connect to ethernet or appear to be processing at all.

Obviously this is a very new Pi. Just documenting that it doesn't work :)

d11wtq commented 5 years ago

OK. Hypriot (official) isn't booting neither, so it doesn't appear to be 64-bit specific. I'm sure I'd seen somebody else post a video in which they installed hypriot onto the Raspberry Pi 4 the day it was released. I guess not, or there's something changed with the boot process that needs updating for it to work.

Raspbian official is working fine, so no issue with the device or power etc.

DieterReuter commented 5 years ago

Currently I don’t have a Raspberry Pi 4, will take some time to get one as they are sold out everywhere.

Typically we have to install the latest boot files first, which should support the RPi4 for the initial boot process. Then it will identify the RPi4 board/cpu and tries to load the correct kernel file and the RPi4 related device tree file - now you know, these files are specific for the RPi4 and should be also provided on the SD card. Best way to find this out is installing the boot files first, connect the RPi4 over the UART and watch the boot logs seen there.

DieterReuter commented 5 years ago

Raspberry Pi 4 doesn't provide currently a good 64bit kernel. Therefore no support for the Pi4 until the kernel is available. Closing this issue for now.

d11wtq commented 5 years ago

Yeah, noticed that. It works, but only if memory is capped at 1GB, AFAIK. Currently my setup is a cluster of Pi3B's running Kubernetes. They were running HypriotOS (32-bit), but the master node as of about 1 year ago fails to initialize or upgrade without some hacks as it's under resourced. I switched to Hypriot 64-bit largely because there were documented performance optimizations in Go targeting Arm64 and this would be applicable to k8s. However it didn't actually help with the master initialization in reality, though I've stuck with it. I was hoping Pi4 w/ 4GB RAM would be my savior, and it seems like it is (On official Raspbian buster k8s initializes in what looks like < 60s), though it makes sense for me to either switch the whole cluster back to Raspbian and do it that way, or wait for better 64 bit support, rather than run a 32-bit master and 64-bit nodes. That said mixed-architecture k8s clusters do work just fine.

Still a little early to switch back to Raspbian even if I went down that path in any case. I had to recompile the kernel to get Docker to work. Looks like that's close to resolved now (in the official Docker repos) but not 100%.

onedr0p commented 5 years ago

@d11wtq have you looked into using k3s? It works fine with Raspbian Buster for me. You also might want to be on the lookout for k3os when it becomes more stable.

d11wtq commented 5 years ago

Interesting. Will have a :eyes:. I currently use kubeadm.