The big Raspberry Pi Zero 2 W Troubleshooting guide

Raspberry Pi Zero 2 showing blank or rainbow screen and no LED 

If you’ve ensured that your Raspberry Pi has power but are not seeing anything on the screen and/or you don’t see the green LED, it means that there’s something wrong with your SD card.

It could be that it isn’t inserted, it could be that the operating system’s image is corrupted or not compatible. It could also be that the microSD card is broken.

If you’re using an older Raspberry Pi OS image, that could cause problems too, even if it worked on another Raspberry Pi.

Finally, sometimes you need to switch on your monitor first before your Pi Zero 2. 

Why am I getting 640×480 resolution?

If the operating system cannot determine what resolution your display is capable of, it will go into failsafe mode. Either change it in the OS, or turn on your screen before starting your Raspberry Pi Zero 2 W.

Chromium hangs frequently

There’s one fix that you can do to significantly improve your load times and reduce hangs when running Chromium on your Raspberry Pi Zero 2 W.

It involves increasing the size of the swap file from the default 100MB to 2GB.

I tested it on picockpit.com and I saw load times go from 45 seconds to 16 seconds by increasing the swap size.

It’s easy.

  • Open Terminal
  • Type in sudo dphys-swapfile swapoff
  • Type in sudo nano /etc/dphys-swapfile
  • Go to the line that says CONF_SWAPSIZE=100 and change “100” it to 2048
  • Save the file by pressing CTRL + O, enter, and then exit by pressing CTRL + X
  • Type in sudo dphys-swapfile setup. This will take a while
  • Type in sudo dphys-swapfile swapon
  • Open Chromium and test

There are some downsides to this and which we cover in our Pi Zero 2 W mega article.

Furthermore, I managed to get it just a bit faster by disabling JavaScript and images.

Here’s how:

  • In Chromium, go to your Settings menu by entering chrome://settings/ into the address bar.
  • Then, go to Privacy and security on the left sidebar.
  • Click on Site Settings
  • Then, scroll to the Content section. You will see JavaScript and Images. Click on those and disable them.

Camera problems on the Pi Zero 2

The Raspberry Pi Zero 2 W has a few things that you have to take note if you are using a camera.

Workaround needed to enable camera on Raspberry Pi OS Bullseye

pi zero 2 enable glamor for camera

When I first installed the camera, I was eager to try out the camera, but unfortunately, libcamera just showed a black screen as if the camera wasn’t connected. 

Libcamera also threw an error: “failed to import fd”. As of Nov. 2021, this issue is known to Raspberry Pi engineers, who issued a workaround,

“A workaround is to open a terminal, run “sudo raspi-config”, navigate to “Advanced Options” and enable “Glamor” graphic acceleration. Then reboot your Pi.”

Smaller camera connector

pi zero 2 pi 4 csi connector

The larger Pi Zero 2 W uses a slightly smaller cable than the larger Pis.

So, if you are buying a camera module, make sure your kit includes the ribbon for the Raspberry Pi Zero.

If your camera is missing the smaller cable for the Raspberry Pi Zero, then buy one here.

pi zero 2 csi connector comparison

No raspistill or raspivideo, use libcamera instead

Some older guides will point you to use raspistill or raspivideo to interact with the camera.

In Bullseye, both have been deprecated and are no longer included by default.

The replacement is libcamera. You can test libcamera by running libcamera-hello.

You can see more commands in the official Raspberry Pi Documentation.

Command tvservice throws error

If you try to run tvservice on the Raspberry Pi Zero 2 W, it will throw an error, like below:

/usr/bin/tvservice -o
/usr/bin/tvservice is not supported when using the vc4-kms-v3d driver.
Similar features are available with standard linux tools
such as modetest from libdrm-tests.

The way to resolve this is to use the Legacy graphics driver.

Open a terminal, run sudo raspi-config and then go to Advanced Options -> GL Driver -> Legacy.

tvservice will work now.

Are you looking to turn off your HDMI? We have a more complete guide here.

How to get motionEyeOS working on Raspberry Pi Zero 2 W

The latest official version of the motionEyeOS does not work on the Pi Zero 2 W but you can use a fork by jawsper which works on the Pi Zero 2 W.

Here’s the process, until such a time where we get an official motionEyeOS release that supports the Pi Zero 2. I used the 20220119-dev release and it worked fine following these steps.

What you will need:

Hardware

pi zero adapter cable csi camera

Adapter cable for Zero form factor
(if you have some other camera that didn’t come with the Zero adapter cable)

Software

Download the latest release of motionEyeOS from this link.

pi zero 2 w motioneyeos jawsper release

Flash the image file (motioneyeos-raspberrypi3.img.gz) onto an SD card. I used balenaEtcher.

If you booted motionEyeOS now, you will see this error:

Configuring wired network: no device
Panic: rebooting in 100 seconds (caused by network)

Here’s how you can fix it.

Before you load the SD card, you’ll have to create a wpa_supplicant.conf onto the boot volume of your SD card. I found the best way is to create a New Text Document and rename it.

pi zero 2 w motioneyeos

You’ll know you’re on the boot volume if you see files such as cmdline.txt, config.txt, bcm2710-rpi-zero-2.dtb.

Using Notepad++, edit wpa_supplicant.conf.

The first thing you’ll do in Notepad++ is to go to Edit -> EOL Conversion -> Unix LF

pi zero 2 w motioneyeos setup

Then, paste the following text and change the parameters for country, ssid and psk (put in your password here). Make sure all the text you put in the ssid and psk variables are in quotes.

Finally, if you are not from the US, you can find your country code here to put in the “country” variable (e.g. DE = Germany).

      country=US
        update_config=1
        ctrl_interface=/var/run/wpa_supplicant
        
        network={
            scan_ssid=1
            ssid="putWiFiSSIDhere"
            psk="putPasswordHere"
        }

Save the file and put the SD card into your Raspberry Pi Zero 2.

You should be able to boot motionEyeOS now, and you can get the web interface by accessing the IP address of your Raspberry Pi Zero 2 on another web browser.

One of the ways you can find the IP address of your Pi Zero 2 W is on the boot screen where it says:

Interface wlan0 has the IP address XXXXXX

Login with the default username admin and blank for the password field.

pi zero 2 w motioneyeos web interface

If you have connected a camera, it should load automatically.

Got a problem?

If you have a problem with your Raspberry Pi Zero 2, feel free to ask away in the comments, and I’ll try to find a fix.

8 Comments

  1. Verhoest on January 8, 2022 at 5:39 pm

    Bjr, j’ai un raspberry 2zero w. j’ai installer recalbox8 sur une autre carte sd.mon problème et que au bout de 5 voir 10 min le raspberry plante.jai mie aussi un petit ventilo pour pas qu’il ne chauffe.je ne sais pas si c’est ricalbox ou le raspberry qui plante?
    Qui pour m’aider svp.merci

    • raspi berry on January 8, 2022 at 7:53 pm

      Hi Verhoest,

      I don’t think this is due to recalbox8. Possibly the Pi is defective?
      It should usually throttle down instead of crashing ( I hope I understand “plante” correctly as “crashing”

      Cheers
      Max

  2. Skipwire on February 10, 2022 at 10:19 pm

    20220119-dev Jawsper MotioneyeOS will not work with Raspberry Pi zero w 2.

    20211113 Jawsper MotioneyeOS will not work. Can not “link” with a WifI
    access points and defaults to wire and then reboots.

    • Xuyun Zeng on February 11, 2022 at 12:30 am

      Not sure why this is happening. It certainly worked on mine. The screenshot is proof.

      Anyway, your second paragraph refers to an issue that can be fixed by adding a wpa_supplicant.conf on your Pi. The instructions should help you.

  3. john p on February 18, 2022 at 3:49 am

    After fighting with the current version of “motioneyeos”, I discovered your article on using the older verson and it works great. I still have a problem trying to load up a large (128gb/256gb) xdcard and getting it to work. Works fine on my smaller cards. I will be checking that out. Now to try to get to, understand and operate all of the features such as record, record upon motion, rewind, etc.

    • Xuyun Zeng on February 19, 2022 at 11:50 pm

      Glad to give back to the community, John.

  4. Cindy on March 11, 2022 at 6:17 pm

    on the step to create a wpa_supplicant.conf, how are you accessing the SD card? the screen shot looks like windows, but when I try to access it windows wants to format the newly imaged SD card. I can not access it.

    • Xuyun Zeng on March 12, 2022 at 7:37 pm

      Hello Cindy,

      Basically, there is ONE drive that you can access. The rest are not accessible by Windows which is why you’re getting the format prompts. If you look closely in your Explorer, you will see one drive that is mounted when you insert your SD card. That is very likely the drive where you put in the wpa_supplicant.conf.

Leave a Comment