Volumio not working on Raspberry Pi 4 rev 1.5 board - start4.elf not compatible

Tried it again today to upgrade from v3.211 to v3.226. v3.211 was a fresh install from yesterday. After the notification of successfull installation it gets stuck during reboot. Green LED blinks 4long/4short…gonna revert to my backup image now.

maybe someone should take a look into this.

Update: same with todays v3.227

these are all unreleased developer versions, you can expect anything from them, except support.
The developers know what they are working on and the fact a new version has not been released and you did not get any feedback yet should be clear enough.
Just relax, a new version will be released, give them time.

Point taken :slight_smile:, but that was clear to me.

Still I thought it might be interesting for the developers to report errors…whats the point in releasing beta versions without collecting feedback?

Thanks for your feedback.
So, can you confirm that version 3.227 does not work on your PI 4 1.5?
https://updates.volumio.org/pi/volumio/3.227/Volumio-3.227-2022-02-15-pi.zip

We tried to patch the older kernels (with current dtbs and elfs) to make it work with newer versions, but it seems it does not work.
Bummer, because with newer kernels we will loose wi-fi support for many external dongles

1 Like

Yes, update did not work for me here for both 2.226 and 2.227…

I just tried with a fresh install of v3.227 from your zip above. Same problem…

Too bad when it´s a choice between wifi and RPI4…

Can you test this one, please?

https://updates.volumio.org/pi/volumio/3.228/Volumio-3.228-2022-02-17-pi.zip

For all users with PI 1.5, please report if 3.227 or 3.228 works. So we can take a decision and finally update for the PI as well.

Thanks a lot!

image
:ok_hand:

Works!

I’ve also tried 228 and same good results as @Bartleby. Pi booted fine into first time setup. After setup, Volumio is working fine - playing from local library and Spotify plugin, I installed with lan cable but tested also unplugging it and using it with wifi. All good.

I assume @volumio that me testing 227 is not needed now? If it is, just let me know although I would expect same results as @Bartleby

If you guys can please test 227

sure, downloading now

@volumio - I tried 227 and am getting the start4.elf is not compatible, this board requires newer software error.

Thanks.

So yes, there’s no other choice for us. We need to update the kernel.

Sorry, this slipped off my radar. But the issue is the mistake I pointed out over at

Also spoke about the fix there, but here is the patch:

diff --git a/recipes/devices/pi.sh b/recipes/devices/pi.sh
index 52284d7..26614a8 100644
--- a/recipes/devices/pi.sh
+++ b/recipes/devices/pi.sh
@@ -193,33 +193,24 @@ device_chroot_tweaks_pre() {
 		rm /boot/kernel8.img
 		rm -rf "/lib/modules/${KERNEL_VERSION}-v8+"
 	fi
-
-        if [ "$ KERNEL_VERSION" = "5.4.83" ]; then
-          ### Temporary fix for Rasbperry PI 1.5
-          ### We use this as kernel 5.10.89 does not work with some USB DACs preventing latest kernel to be used
-          log "Downloading Firmware to support PI4 v 1.5"
-					### DTBs not included in 5.4.83
-					wget -O /boot/bcm2710-rpi-zero-2-w.dtb https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/bcm2710-rpi-zero-2-w.dtb
-					wget -O /boot/bcm2710-rpi-zero-2.dtb https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/bcm2710-rpi-zero-2.dtb
-					wget -O /boot/bcm2711-rpi-cm4s.dtb https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/bcm2711-rpi-cm4s.dtb
-					### ELFs to support new PI versions
-					wget -O /boot/fixup.dat https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/fixup.dat
-					wget -O /boot/fixup4.dat https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/fixup4.dat
-					wget -O /boot/fixup4cd.dat https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/fixup4cd.dat
-					wget -O /boot/fixup4db.dat https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/fixup4db.dat
-					wget -O /boot/fixup4x.dat https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/fixup4x.dat
-					wget -O /boot/fixup_cd.dat https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/fixup_cd.dat
-					wget -O /boot/fixup_db.dat https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/fixup_db.dat
-					wget -O /boot/fixup_x.dat https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/fixup_x.dat
-					wget -O /boot/start.elf https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/start.elf
-					wget -O /boot/start4.elf https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/start4.elf
-					wget -O /boot/start4cd.elf https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/start4cd.elf
-					wget -O /boot/start4db.elf https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/start4db.elf
-					wget -O /boot/start4x.elf https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/start4x.elf
-					wget -O /boot/start_cd.elf https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/start_cd.elf
-					wget -O /boot/start_db.elf https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/start_db.elf
-					wget -O /boot/start_x.elf https://github.com/raspberrypi/firmware/raw/9c04ed2c1ad06a615d8e6479806ab252dbbeb95a/boot/start_x.elf
-        fi
+	if [[ ${KERNEL_SEMVER[0]} == 5 ]] && [[ ${KERNEL_SEMVER[1]} -le 4 ]] && [[ ${KERNEL_SEMVER[2]} -le 83 ]]; then
+		# Temporary fix for Pi 4 Rev 1.5
+		# We use this as kernel < 5.10.89 does not work with some USB DACs preventing latest kernel to be used
+		log "Downloading Firmware to support PI 4 Rev v1.5"
+		### DTBs not included in 5.4.83
+		gitHash=9c04ed2c1ad06a615d8e6479806ab252dbbeb95a
+		firmwareFiles=(
+			# Dtb's
+			"bcm2710-rpi-zero-2-w.dtb" "bcm2710-rpi-zero-2.dtb" "bcm2711-rpi-cm4s.dtb"
+			# fixup's
+			"fixup.dat" "fixup4.dat" "fixup4cd.dat" "fixup4db.dat" "fixup4x.dat" "fixup_cd.dat" "fixup_db.dat" "fixup_x.dat"
+			# Elf's
+			"start.elf" "start4.elf" "start4cd.elf" "start4db.elf" "start4x.elf" "start_cd.elf" "start_db.elf" "start_x.elf"
+		)
+		for fwFile in "${firmwareFiles[@]}"; do
+			wget -O "/boot/${fwFile}" "https://github.com/raspberrypi/firmware/raw/${gitHash}/boot/${fwFile}"
+		done
+	fi
 
 	log "Finished Kernel installation" "okay"
 

However I think this is the better route - patching firmware like this is asking for head scratching trouble down the line.

Is this correct? You seem to be referring to KERNEL_SEMVER[2] twice. Should it be KERNEL_SEMVER[0], KERNEL_SEMVER[1] and KERNEL_SEMVER[2]?

:mag: Indeed. That should be 1. Here and in pi.sh#L332 as well.

Patch corrected :slight_smile:

Guys, one more test from you… I hope we are finally there:

Please test:
https://updates.volumio.org/pi/volumio/3.229/Volumio-3.229-2022-02-22-pi.zip

Especially, if it boots, use it with your I2S DAC and let us know if everything works as expected

Thanks!

Thanks! Will give it a try in the evening and report back then!