Fedora IOT 33 aarch64 on Raspberry Pi

Hi all,

I recently purchased a Raspberry Pi 4 (only the 2GB RAM) with the intentions of using it as a pi-hole. I decided to try and use the aarch64 image since the model 4 is supposed to be capable of 64-bit. I ran the command below to install it on the SD card:

sudo arm-image-installer --image=Fedora-IoT-33-20201102.0.aarch64.raw.xz --target=rpi4 --media=/dev/mmcblk0 --resizefs

It wrote to the SD card successfully but when I try to boot the Pi - nothing. Am I doing something wrong here or any thoughts on troubleshoot? I did connect it to my Sharp TV but I’ve connected other computers to it just fine. Should I just use the ARMv7 image? Thanks!

I believe it should work, but it’s possible there’s a problem with the video output. I’d try the 32-bit version as a first diagnostic step.

I have had problems in the past with having the micro HDMI cable plugged into the wrong port since the RPi4 has dual video out. You could try moving the cable to the other port and see if you get any output.

1 Like

Things you can try for debug.

  1. make sure firmware on pi is up to date.
  2. you should see the four raspberry display and uboot countdown timeout when you power up the pi.
  3. Try a different SD card
    I have F33-IoT 64bit running on my RPI4 no problems.

I just plugged it into a normal monitor and it came up great! Is there a default user because it put me at a login prompt but I had not set up a user or password. Couldn’t log in. I’m reflashing the SD card again just to see if I missed something.

ETA: Ah, I see that reading is fundamental. I hadn’t seen read the section “Setting up the device with Zezere” because I didn’t think it applied to me. Looks like it was part of the process. Hope rewriting the image isn’t too bad on the SD card lol.

I’m excited to get this up and going! I hope the pi-hole container plays nice with podman!

1 Like

Can someone help elaborate on how I’m supposed to log into this? I made some SSH keys and followed the guide but I don’t understand when it says open a terminal and SSH in through the root. I haven’t set up an IP address yet? I try logging into the device locally with root and the password I set up. What am I missing?

Okay I got. I feel like an imposter, I’m a network engineer by day so I should have figured it out sooner.

Once you copy over the public key you have to go to the router and compare the MAC address of the Pi to those in the DHCP lease table. Once you have the IP address you just point your SSH to that with the private key you set up.

ssh root@192.168.0.31 -i /var/home/matthew/Downloads/ssh

Alright, I’m so close but I’m running into one error when I try to pull and then run the container. It needs port 53 open but when I try to specify the port in the podman run command it says it is already in use. How can I troubleshoot this?

I am specifically trying to use the podman run command equivalent to the docker run command found here:

https://github.com/pi-hole/docker-pi-hole/blob/master/docker_run.sh

Solution was to stop the systemd-resolved service. I just tried using the DNS address locally and it is now working whereas it wasn’t if I left off the port 53 from the podman run command.

I’m about to set up my router to point to it as the DNS address automatically, fingers crossed.

ETA: My old Spectrum router doesn’t have the option. No matter, it works great just setting the DNS locally on each device. I am also about to move soon and will buy my own router for the new place.

Fedora 33 IOT aarch64 + Pi-hole via podman works great! I am very happy with this solution.

1 Like

Hi mpphill2. Your experience was almost exactly the same as mine the first time I set up Fedora-IoT. BTW, if you don’t want to use the Zerere service to provision ssh keys, check out some the command line options when running the arm-image-installer. As for the Pi-Hole setup, if you uncomment the line for DNSStubListener=no in /etc/systemd/resolved.conf, then you don’t need to stop/disable the systemd-resolved service. This will just disable the stub listener that is using port 53.

1 Like

Would you care explaining how you managed to do this? I follow the instructions and I get nowhere.

I did:

sudo arm-image-installer --image=Fedora-IoT-33-20210315.0.aarch64.raw.xz --target=rpi4 --media=/dev/mmcblk0 --addkey --addconsole --resizefs

Then popped the SD card in a rPI4-B 8GB and attached a serial console cable and powered it up. I got:

U-Boot 2020.10 (Oct 28 2020 - 08:21:56 +0000)

DRAM:  7.9 GiB
RPI 4 Model B (0xd03114)
MMC:   mmcnr@7e300000: 1, emmc2@7e340000: 0
Loading Environment from FAT... *** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   eth0: ethernet@7d580000
PCIe BRCM: link up, 5.0 Gbps x1 (SSC)
starting USB...
Bus xhci_pci: probe failed, error -110
No working controllers found
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
"Synchronous Abort" handler, esr 0x96000004
elr: 00000000000a2df0 lr : 00000000000a2e2c (reloc)
elr: 000000003df7bdf0 lr : 000000003df7be2c
x0 : ffffffffffffffe0 x1 : 0000000000000000
x2 : 000000003db54e50 x3 : 0000000000000015
x4 : b900001f58000540 x5 : 0000000000000015
x6 : 000000003dfd31a0 x7 : 000000003dfd31a0
x8 : 000000003dbea190 x9 : 0000000000000008
x10: 0000000000000001 x11: 0000000000000006
x12: 0000000000000a20 x13: 0000000000000001
x14: 000000003db48fb0 x15: 0000000000000021
x16: 000000003df851b0 x17: 122014037044b504
x18: 000000003db54d90 x19: 0000000000000000
x20: 0000000000000010 x21: 0000000000000006
x22: 0000000000000000 x23: 000000003db47368
x24: 000000003dfbb680 x25: 000000000000005c
x26: 000000003dbe6428 x27: 000000003dfbb000
x28: 0000000000000018 x29: 000000003db472e0

Code: eb02003f 54000061 d2800000 d65f03c0 (f9400401)
Resetting CPU ...

resetting ...

And this just continues ad infinitum…

You should not get that warning about bad CRC. Something is likely corrupted on the SD card I think. Not sure why that is but it could be an issue with the image file, or bad SD card. Maybe try to use a different SD card. Verify the image file is good. Do you get any errors when you run the arm-image-installer script?

1 Like

I actually went through different cycles of write to SD then boot. With different SD cards and different rPI4s (I have 3). The result was always the same.
But I suspect that the CRC error might be a red herring. He continues with the default and then crashes…

I noticed btw that arm-image-install does exactly the same thing for rpi3 and rpi4. Is that actually correct?

I now tried again with F34, and this works.

2 Likes