Affiliate Disclosure: By buying the products we recommend, you help keep the lights on at MakeUseOf. Read more.
But something is wrong. Perhaps the Pi has stalled booting at the “rainbow screen”. Perhaps it’s caught in a boot loop. Or maybe your issue is different. If you’re trying to solve problems with your Raspberry Pi’s ability to connect to Wi-Fi, detecting a USB device, installing software, or accessing a microSD card, we’ve got a collection of solutions right here.
1. Your Raspberry Pi Hangs at the Rainbow Screen
When you boot your Raspberry Pi, the first thing you’ll see (unless you’re prepping an installation with NOOBS) is the GPU test screen. This is commonly known as the “rainbow screen” and is intended to appear for just a couple of seconds. After this, the operating system should load.
However, sometimes this doesn’t happen. Instead, the device will hang at the GPU test. If this occurs, you have a problem.
In most cases, this is due to a problem with the Raspbian kernel image on your microSD card. To test, install Raspbian onto another microSD card, and boot from this instead. If it works, then you know the problem is with the original microSD card.
However, it’s not ideal. Additionally, you may have data you need from the original microSD card. In order to retrieve this data, insert the microSD card into your computer’s card reader. Browse to the /home/ folder, then copy it to your PC’s hard disk drive.
Can You Repair the Kernel?
In certain circumstances it is possible to repair the kernel, but this requires the Pi to be connected via Ethernet to your network. You’ll need to connect via SSH, so ensure beforehand that this has been enabled. If not, while you have the microSD card plugged into your computer, add a file to the /boot/ directory called ssh. Do not add a file extension.
Using your preferred SSH client, connect to the Pi via the IP address and using the usual username and password. Then attempt to reinstall the kernel:
sudo apt update sudo apt install raspberrypi-kernel
Wait while this completes, then open the config.txt file in the text editor:
sudo nano /boot/config.txt
Here, add a new line:
This boot delay forces the Pi to give the SD card some time to get ready, before booting from it.
Hit Ctrl + X to exit, then Y and Enter to save the change and exit the text editor. Use the reboot command to restart the Pi. If it hangs at the GPU test again, it’s time to use a different microSD card.
SD Card Maintenance
If you’re concerned about your Pi’s microSD card, it’s worth looking into ways to extend its life. You can do this either by ensuring more data is written to RAM (rather than the microSD card) or bypass it completely with a USB device.
It’s also possible to clone your microSD card for data continuity across multiple cards or devices.
2. Can’t Detect a USB Device? Try This
USB devices are all important to using a Raspberry Pi. Whether you want to connect an input device (mouse, keyboard, game controller) or extend the computer’s functions, many options are via USB. Using an older Pi without integrated wireless networking or Bluetooth? You’ll need a USB dongle.
Often, plugging a device in will let you use it almost straightaway. But what if your USB device isn’t recognised?
The first thing to do is to head to the Verified Peripherals list at eLinux.org. Search the page for your USB device; if it’s here, it should work.
Next, check if the device works on a different computer. Plug it into your PC; does it function correctly? Once you’ve done that, it’s time to interrogate your Raspberry Pi and the USB device. On your Raspberry Pi, enter:
sudo dmesg -C
Next, insert the USB device and input:
If detected, your USB device will be listed here, along with any related error message. Should the device not be listed, two common reasons are:
- A fault with the USB device or the Pi’s USB bus.
- Your Raspberry Pi isn’t receiving enough power.
Overcome the latter problem by purchasing a suitable power supply for your Raspberry Pi, or a powered USB hub. USB device detected, but nothing happening? Try updating the repositories and checking for an upgrade (a fix for so many Raspberry Pi issues):
sudo apt update sudo apt upgrade
At this stage, you should have a working device. If not, contact the manufacturer and find out if there is a Linux driver.
3. Getting Online Easily With Wi-Fi
If you’re using a Raspberry Pi 3 or a Pi Zero W or later, then your computer has built-in Wi-Fi. You can also give wireless connectivity to an older Pi using a Wi-Fi dongle. But once you’ve activated wireless networking, how do you get online?
USB sticks can be a problem, as noted above. But if you’ve run those tips above, and confirmed the device is working, perhaps the problem getting online lies with configuration. We’ll assume at this stage you’ve attempted to connect to the wireless network via the desktop.
So, what might stop you from connecting your Raspberry Pi to a wireless network? First, there’s the possibility that new connections are blocked, or a limit has been reached. Once you can rule these out, try connecting to a different network. You might set up a wireless hotspot on your phone, for example, and see if connection to that is possible.
There’s also the possibility that your credentials are wrong. It happens. To double check, open the wpa_supplicant.conf file in nano:
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Here, you’ll find the key settings for connecting to your network. Use the SSID and PSK fields to input the correct SSID (network name) and password.
Alternatively, check the security on your network. The Raspberry Pi 3 will not connect to wireless networks that are secured using the outdated Wireless Encryption Protocol (WEP). If your router uses this, switch to WPA, WPA2, or if this isn’t possible, upgrade to a new router.
4. Problem With Your Pi’s Display
Several problems can affect your Raspberry Pi’s display.
While the default resolution is 800×400 pixels, most modern monitors and TVs are capable of far bigger resolutions. What should happen is that the size of the display is detected as the Pi boots, and the desktop resolution adjusts as appropriate.
Sometimes this doesn’t happen, resulting in some portions of the display not being visible. Most of these problems can be fixed in the config.txt file. As this is an important file, it’s vital that you don’t make any changes that may cause problems. To protect yourself against this, make a copy of the file, with a slightly different filename:
sudo mv /boot/config.txt /boot/config-orig.txt
If you run into problems at any point, simply delete the config.txt file and rename the copy.
When you’re ready, edit config.txt in nano:
sudo nano /boot/config.txt
Many display issues are down to overscan settings being incorrectly applied. Typically, a black band borders the screen, much like an 8-bit home computer display. You can change this by looking through the config.txt file and finding:
Remove the hash symbol; this will “uncomment” the setting, meaning it will be applied. Press Ctrl + X then Y to save and exit, and reboot your Pi.
Conversely, parts of the display may extend beyond the physical dimensions of the display. In this case, look for:
#overscan_left #overscan_right #overscan_top #overscan_bottom
Remove the hash symbol, then alter the settings to adjust the border dimensions. You can do this by adding an equals sign and a number at the end of the line, like this:
Negative numbers can be used if necessary.
As a final option, you can change the framebuffer settings. Scroll down until you find two lines (framebuffer_width and framebuffer_height) and set your preferred resolution. You might change a 1920×1080 resolution to 1280×720, for instance.
Easily Fix Your Raspberry Pi Issues!
From time to time, you’ll hit a problem with your Raspberry Pi. Improving your Pi’s performance can help here, as can ensuring all of your cables, power supply, and microSD card are top quality.
But if you’re ready to try something different, take a look at the Raspberry Pi alternative, NanoPi NEO4.
Explore more about: Raspberry Pi.