[Solved] Freedombox Installation Image Fails to Boot on Raspberry Pi 3 B *Updated*

Problem Description
The Stable and Testing Freedombox images are not booting on my Raspberry Pi 3 B plus. It appears that it is not finding a dtb file, and gives an error message. It appears to attempt a default TFTP boot after that, which fails as well. I am including a picture of the screen during boot, as I do not have a serial adapter to log the boot process in the serial console.

Steps to Reproduce

  1. Download Stable or Testing Image file.
  2. Restore image with gnome-disks onto empty (known good) SD card(s). The 2 cards I used were Sandisk Ultra 64 GB capacity, and the other a Samsung Evo Select 256 GB capacity. Both are high speed (10) rated.
  3. Power on the Raspberry Pi 3 B plus.
  4. Repeat.

Expected Results
I expect it to boot into a fresh install, and for it to begin resizing the system partition to fit into the remaining free space on the SD card.

Actual results
Error message on attempted boot and then defaults to TFTP boot which fails as well, then goes to a U-Boot prompt.

Here is the image:


  • FreedomBox version: Stable and Testing Images, FB Versions 19.1, and 21.1 respectively.
  • Hardware: Raspberry PI 3 B plus
  • How did you install FreedomBox?: Downloading both Stable & testing images from https://freedombox.org’.

I would suggest to focus on the “File not found”. Does that dtb file exist somewhere, perhaps a different location in the boot partition?

@jvalleroy, It does. It is in the second partition, of which there are 3.

The first one is a fat partition, it contains the following files:
bootcode.bin COPYING.linux fixup.dat kernel7.img kernel.img LICENCE.broadcom start.elf uboot.env.

The second partition is an Ext2 partition containing the following files:
boot.scr dtb(dir) firmware(dir) System.map-4.19.0-10-armmp
boot.scr.bak dtb-4.19.0-10-armmp initrd.img-4.19.0-10-armmp System.map-4.19.0-14-armmp config-4.19.0-10-armmp dtb-4.19.0-14-armmp initrd.img-4.19.0-14-armmp vmlinuz-4.19.0-10-armmp config-4.19.0-14-armmp dtbs(dir) lost+found(dir) vmlinuz-4.19.0-14-armmp.

The third partition is the BTRFS main root file system.

What do you suggest I do at this point?

Does the second partition have this folder structure?

Yes, it does, but it (the hardware) is a B plus model, so it’s this folder (and hardware specific file) structure:

I think this may point to the problem. FreedomBox has separate images for the RPI3B and RPI3B+:

Do you know which one you downloaded?

The one for the B+. I made the mistake of using the one for the model B first, and that does not even finish booting, it just “locks up”. At least the one for the B+ gets me to a U-Boot prompt.

James, my bad, I just noticed that the particular RPi that I am installing to is, in fact, not a 3B+, but the model B, ver. 1.2. I tried the stable image for the 3B after verification by checksumming, and it does not work at all, it tries to load the system, then just goes to a black screen, then stops.

I am currently writing the testing image to the SD card right now, and will give you the results of attempted boot here shortly. Sorry for the confusion, I have a few too many of these little RPi’s around in my office, honest mistake. I updated the title of this post to reflect the change.

James, the testing image appears to be working at this point, it is currently resizing the BTRFS partition, I’ll try to set it up after that, and if all goes well, I will mark this post as [Solved]. We may want to look at why the stable image is not working, I will download it and verify it again.

I will then attempt to install it (the stable image) to this RPi again, and if it succeeds, then no problem. If it does not, should we continue discussion regarding the issue using this post, or start a new one? Please let me know. Also, thanks for the help, I really appreciate it! :slight_smile:

After installing and running the testing image for one full day, it seems to be working. I have downloaded the stable image again, and will attempt to verify that it works as well. I have had some issues with the images not verifying with the .sig file provided, here is the error I get:

gpg --verify freedombox-stable-nonfree_buster_raspberry3-armhf.img.xz.sig
gpg: assuming signed data in ‘freedombox-stable-nonfree_buster_raspberry3-armhf.img.xz’
gpg: Signature made Sat 29 Aug 2020 07:55:44 PM PDT
gpg: using RSA key 013D86D8BA32EAB4A6691BF85D4153D6FE188FC8
gpg: Can’t check signature: No public key

I’m not sure why this is so, as I typically use sha256sum to verify images, are these available somewhere?

This is the key used by the CI service that builds the latest images.
Please try: $ gpg --recv-keys 013D86D8BA32EAB4A6691BF85D4153D6FE188FC8

(from FreedomBox/Download - Debian Wiki)

Thank you very much, kind Sir.

I Ran
gpg --recv-keys 013D86D8BA32EAB4A6691BF85D4153D6FE188FC8
gpg: key 5D4153D6FE188FC8: new key but contains no user ID - skipped
gpg: Total number processed: 1
gpg: w/o user IDs: 1

It appears to not add the key on line 2 where it skipped.

Then I Ran
gpg --verify freedombox-stable-nonfree_buster_raspberry3-armhf.img.xz.sig
gpg: assuming signed data in ‘freedombox-stable-nonfree_buster_raspberry3-armhf.img.xz’
gpg: Signature made Sat 29 Aug 2020 07:55:44 PM PDT
gpg: using RSA key 013D86D8BA32EAB4A6691BF85D4153D6FE188FC8
gpg: Can’t check signature: No public key

Not sure what to do here, can I “force” it to accept the key?

Looks like you need to specify a different key server:
$ gpg --keyserver keys.gnupg.net --recv-keys 013D86D8BA32EAB4A6691BF85D4153D6FE188FC8
$ gpg --keyserver keyserver.ubuntu.com --recv-keys 013D86D8BA32EAB4A6691BF85D4153D6FE188FC8

James, Thank you, the keys.gnupg.net worked, the image passed the check as well.

So, it appears that the testing image fails to reboot after installation, running a system update, and rebooting. I also tried the newly downloaded version of the stable image, and it just refuses to boot. However, the 2021.02.10 image for the Raspberry Pi 3 B+ I found at Tested images seems to be working on my Raspberry Pi 3 B+(with freedombox installed).

Update: The image I listed above is still stable after 24 hours of burn in time, and freedombox is updated to 21.2. I’m including a list of installation steps I took during this particular install, I hope that it will help someone else, as this has taken me no less than a week to resolve.

I will post one more entry after this one, and mark the issue as [Solved], with one important fact to make note of - It looks as though the Images from Debian are built and tested on the Raspberry Pi 3 B+ model, not the B model. The model B does not boot from the installation media provided, I’m not sure why - I think it has to do with the firmware included in the image. At this point, I have taken a break from trying to get this to work on the Raspberry Pi 3 B, but will continue to try to help resolve this issue.

Raspberry Pi 3 B+ Freedombox Installation Feb. 12, 2021

First Boot to Initial System Backup Procedures:

Downloaded 20210210_raspi_3_buster.img.xz from Tested images

Checked using image using sha256sum.

Restored image file to blank SD card using Gnome-Disks.

Expanded System Partition to SD card extents using Gnome-Disks.

Inserted SD card into Raspberry Pi 3 B+, and turned on power, booted fine.

Logged in as Root, no password (default settings for this image)

Set Root password.

Adjusted Net work Settings in /etc/network/interfaces to contain only the following:

auto lo
iface lo inet loopback

Rebooted to re-initialize network settings.

Logged in as Root, and ran apt-get update from console.

Installed Freedombox using DEBIAN_FRONTEND=noninteractive apt-get install freedombox -y

Ran Setup from Freedombox Web Interface and created Administrator user account.

Changed hostname using Configure in System Menu on Web Interface.

Changed Network settings for Wired and Wireless in System Menu on Web Interface.

Changed Timezone using Date & Time in System Menu on Web Interface.

Updated System as Root from console by issuing the following command(s):

apt-get update && apt-get upgrade -y && apt-get autoremove -y && autoclean -y.

Forwarded ports 80 & 443 on router firewall to my freedombox.

Installed and set up Cockpit in System Menu on Web Interface.

Installed and set up Dynamic DNS Client in System Menu on Web Interface.

Installed and set up Pagekite in System Menu on Web Interface.

Installed and set up Let’s Encrypt in System Menu on Web Interface.

Installed Radicale & Searx from Apps Menu in Web Interface.

Performed 24 hour “Burn In” to ensure server stability.

Ran Update in System Menu on Web Interface.

Performed Initial System Backup in System Menu on Web Interface.

I have moved this issue to Stable Image for Raspberry Pi 3B not Working (#190) · Issues · FreedomBox / freedom-maker · GitLab