Raspberry Pi Won't Connect to Wi-Fi: Causes and How to Fix It

Raspberry Pi — is a mini-computer that has become an indispensable tool for IoT enthusiasts, developers, and even home users. But what if your RPi Is your device refusing to connect to Wi-Fi? The problem could be as simple as a typo in the settings or as serious as a hardware failure. In this article, we'll look into it. all possible reasons, Why Raspberry Pi does not see the network or cannot connect to it, and we will also give step-by-step solutions for each of them.

From errors in the file wpa_supplicant.conf to the point of incompatibility with new standards Wi-Fi 6/6E — We even cover rare cases that aren't covered in the official documentation. If you've already tried all the obvious methods, you'll find it here. alternative diagnostic methods, including checking via the terminal and analysis of system logs.

The article is relevant for all models: Raspberry Pi 3B/3B+, 4B, 5, Zero W/WH/2W and even for Pi 400Particular attention is paid to problems with dual-band networks (2.4/5 GHz) and the specifics of working with hidden SSIDs.

📊 Which Raspberry Pi model are you using?
Raspberry Pi 4
Raspberry Pi 5
Raspberry Pi Zero W
Raspberry Pi 3B+
Another model

1. Errors in the configuration file wpa_supplicant.conf

The most common cause of Wi-Fi problems on Raspberry Pi - This Incorrect settings in the file /etc/wpa_supplicant/wpa_supplicant.confEven one extra comma or incorrect character can prevent your device from connecting to the network.

Open the file for editing:

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Make sure the file structure matches the example below (replace your_ssid And your_password to your data):

country=RU

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev

update_config=1

network={

ssid="your_ssid"

psk="your_password"

key_mgmt=WPA-PSK

}

  • 🔹 Spaces and tabs: Make sure that before each line inside the block network={...} costs tabulation, not spaces. Raspberry Pi sensitive to this!
  • 🔹 Special characters: If the password contains #, ! or ", escape them with a backslash: psk="my\!password".
  • 🔹 Register: Parameters ssid And psk must be in lowercase, even if your network uses capital letters.
  • 🔹 Country: Parameter country= must match your region (for example, US, RU, DE). This affects the available Wi-Fi channels.
⚠️ Attention: If you edit a file through SSH via cable, but Wi-Fi doesn't work after saving changes (Ctrl+O, then Ctrl+X) reboot RPi team sudo rebootSometimes changes are only applied after a reboot.

The correct country code is specified (for example, RU)|SSID and password are enclosed in quotation marks|Parameters inside network={} are preceded by a tab|File saved with sudo rights (if edited via nano)-->

2. Problems with Wi-Fi drivers or the system kernel

If Raspberry Pi doesn't see not a single network (even neighboring ones), the problem may be in absence or incorrect operation of driversThis is especially true for new models such as Raspberry Pi 5, where updated chips are used BCM43455.

Check if the Wi-Fi adapter is detected by the system:

lsusb

Look for lines mentioning Broadcom or Wi-FiIf the adapter is not displayed, this may indicate hardware failure.

Update kernel and firmware to the latest version:

sudo apt update && sudo apt full-upgrade -y

sudo rpi-update

  • 🔧 For Raspberry Pi 5: Make sure you have installed OS version not lower Bookworm (Debian 12). Older versions may not support the new Wi-Fi module.
  • 🔧 Driver conflictIf you installed third-party drivers (for example, for USB adapters), they may have broken the original ones. Remove them: sudo apt purge firmware-*.
  • 🔧 Blacklist of modules: Check the file /etc/modprobe.d/raspi-blacklist.confIf there are lines with brcmfmac or brcmutil, comment them out (# at the beginning of the line).
Raspberry Pi model Wi-Fi chip Minimum OS version for stable operation
Raspberry Pi 3B/3B+ BCM43438 Stretch (Debian 9)
Raspberry Pi 4B BCM43455 Buster (Debian 10)
Raspberry Pi 5 BCM43456 Bookworm (Debian 12)
Raspberry Pi Zero W/WH/2W BCM43430 Jessie (Debian 8)
⚠️ Attention: After updating the kernel (rpi-update) some users are experiencing Loss of sound or HDMI issues. If Wi-Fi is working again, but other issues persist, try rolling back: sudo rpi-update [commit-hash], Where [commit-hash] — previous stable version.

3. Incompatibility with router settings

Sometimes the problem isn't in the Raspberry Pi, and in your router settingsModern routers support many standards and security features that may not be compatible with older or low-end devices.

Here are the most common conflicts:

  • 📶 Wi-Fi 6 standard (802.11ax): Raspberry Pi 3/4 does not support Wi-Fi 6 completely. Turn it off. 802.11ax in the router settings or enable compatibility mode (802.11a/b/g/n/ac).
  • 🔒 WPA3: Some models RPi (especially Zero W) work unstably with WPA3Switch to . WPA2-PSK (AES).
  • 📡 Channel 165 (6 GHz): Raspberry Pi does not support range 6 GHzUse only 2.4 GHz or 5 GHz (channels 36–161).
  • 🔄 Roaming Assist: Automatic switching function between ranges (eg. Smart Connect on ASUS) can be confusing RPi. Turn it off for the test.

Also check:

  • 🔌 Router operating mode: If the router is configured as access point (AP) or bridge, some Wi-Fi features may be limited.
  • 📵 MAC address filtering: Make sure your MAC address is RPi It's not blocked. You can view it using the command: ip link show wlan0 | grep ether.

4. Hardware or power supply problems

If Raspberry Pi doesn't see the network at all (even after a reboot), or Wi-Fi is unstable (constantly disconnects), the reason may be:

  • Malnutrition: RPi 4/5 require 5V/3A (15 W). If the power supply is weak, the Wi-Fi module may turn off. Check the voltage: vcgencmd get_throttledIf the answer is 0x5, this indicates malnutrition.
  • 🔌 Damaged antenna connector: On Raspberry Pi 3B+/4/5 The Wi-Fi antenna is connected via u.FL- connector. If it's loose or corroded, the signal will be weak or absent.
  • 🔥 Overheat: At temperatures above 80°C RPi It's starting to throttle (reduce performance), which can affect Wi-Fi. Check the temperature: vcgencmd measure_temp.
  • 🛠️ Chip damage: If RPi If it was dropped or exposed to static electricity, the Wi-Fi module may be damaged. In this case, replacing the board is the only solution.

For diagnostics:

  1. Connect Raspberry Pi via Ethernet and check the Wi-Fi logs: dmesg | grep brcmfmac.
  2. If you see errors like brcmfmac: power management disabled, this may indicate nutritional problems.
  3. Try connecting external USB Wi-Fi adapter (For example, TP-Link TL-WN725N). If it works, the problem is in the internal module.
⚠️ Attention: On Raspberry Pi 5 built-in Wi-Fi module BCM43456 sensitive to food quality. If you use USB hubs without external power supply, this may cause malfunctions. Connect RPi directly to the socket via the original power supply.

5. Conflicts with other network services

On Raspberry Pi Several network services may be running at the same time, which can lead to conflicts. For example:

  • 🔄 NetworkManager vs wpa_supplicant: If installed NetworkManager, it can take over Wi-Fi control from wpa_supplicant.
  • 🌐 DHCP server: If on RPi launched dnsmasq or isc-dhcp-server, it may interfere with obtaining an IP address.
  • 🔗 VPN or proxy: Some VPN clients (eg. OpenVPN) block network interfaces.

Check which services are active:

sudo systemctl list-units --type=service | grep -E 'network|wpa|dhcp|vpn'

If you don't use NetworkManager, delete it:

sudo apt purge network-manager -y

Disable unnecessary services:

sudo systemctl stop dnsmasq

sudo systemctl disable dnsmasq

How to completely reset network settings?

If conflicts cannot be resolved, perform a hard reset:

  1. Remove all network configs: sudo rm /etc/wpa_supplicant/wpa_supplicant.conf
  2. Reinstall wpa_supplicant: sudo apt install --reinstall wpa-supplicant
  3. Reboot your device: sudo reboot
  4. Reset your Wi-Fi using raspi-config (sudo raspi-configSystem Options → Wireless LAN).

6. Hidden networks (Hidden SSID) and enterprise networks (WPA2-Enterprise)

If your network hidden (does not broadcast SSID) or uses corporate authentication (For example, WPA2-Enterprise With 802.1X), standard configuration Raspberry Pi it won't work.

For hidden network add parameter scan_ssid=1 V wpa_supplicant.conf:

network={

ssid="your_hidden_ssid"

psk="your_password"

scan_ssid=1

key_mgmt=WPA-PSK

}

For WPA2-Enterprise A more complex configuration will be required. Example for a network with PEAP/MSCHAPV2:

network={

ssid="your_enterprise_ssid"

key_mgmt=WPA-EAP

eap=PEAP

identity="your_username"

password="your_password"

phase2="auth=MSCHAPV2"

}

  • 🔐 Certificates: If the network requires a certificate (CA_CERT), it needs to be placed in /etc/wpa_supplicant/ and specify the path in the config: ca_cert="/etc/wpa_supplicant/ca.pem".
  • 🔄 Update wpa_supplicant: For WPA3-Enterprise version may be required wpa_supplicant 2.10+. Update it: sudo apt install wpasupplicant -t bookworm-backports.
⚠️ AttentionSome corporate networks use port security (Port Security) on switches, which blocks unknown MAC addresses. If RPi Can't get IP over Wi-Fi but Ethernet works, check with your network administrator to see if your MAC address is allowed.

7. IPv6 or dual-stack (IPv4/IPv6) issues

In some networks Raspberry Pi Maybe connect to Wi-Fi but have no internet accessThis is often associated with:

  • 🌍 Lack of IPv6: If the router is configured to only IPv6, A RPi trying to use IPv4 (or vice versa).
  • 🔀 DNS conflict: For example, if in /etc/resolv.conf Incorrect DNS servers are specified.
  • 🔒 Blocking ICMP: Some providers block ping, which makes it seem like there is no internet, although it is there.

Check what IP was received:

ip -4 addr show wlan0 # for IPv4

ip -6 addr show wlan0 # for IPv6

If IPv4 is absent, but IPv6 Yes, please disable it forcibly. IPv6:

echo "net.ipv6.conf.all.disable_ipv6=1" | sudo tee -a /etc/sysctl.conf

echo "net.ipv6.conf.default.disable_ipv6=1" | sudo tee -a /etc/sysctl.conf

sudo sysctl -p

Check routing:

ip route

If there is no default route (default via), add it manually:

sudo ip route add default via 192.168.1.1 dev wlan0

(replace 192.168.1.1 to your router's IP).

8. Alternative connection and diagnostic methods

If standard methods don't help, try:

  • 📱 Setup via Bluetooth: Use Raspberry Pi Imager on your phone for initial Wi-Fi setup (available for Android/iOS).
  • 🖥️ USB-ethernet gadget: Connect RPi to the PC via USB and set up the network via USB Ethernet/RNDIS.
  • 🔧 Access point mode: Make it temporary RPi access point and connect to it from your phone for diagnostics.
  • 📡 External Wi-Fi adapter: Chip-based USB adapters RTL8188EU or RTL8812AU often work more stably than the built-in module.

For in-depth diagnostics, use:

# View Wi-Fi logs

journalctl -u wpa_supplicant -b

Scanning available networks

sudo iwlist wlan0 scan | grep ESSID

Checking the signal strength

watch -n 1 "iwconfig wlan0 | grep Signal"

If Raspberry Pi It sees networks but doesn't connect. Try this. force channel V wpa_supplicant.conf:

network={

ssid="your_ssid"

psk="your_password"

frequency=2412 # Channel 1 (2.4 GHz)

}

Raspberry Pi Wi-Fi FAQ

Question 1: Raspberry Pi It connects to Wi-Fi, but disconnects after 5 minutes. What's wrong?

Answer: This may be related to power saving mode Wi-Fi module. Disable it:

sudo iw dev wlan0 set power_save off

To make this permanent, add the line wireless-power off V /etc/network/interfaces.

Question 2: Is it possible to connect? Raspberry Pi to Wi-Fi without wpa_supplicant.conf?

Answer: Yes, with the help of nmcli (if installed NetworkManager):

nmcli dev wifi connect "SSID" password "password"

Or through raspi-config (sudo raspi-configSystem Options → Wireless LAN).

Question 3: Why Raspberry Pi 5 doesn't see 5 GHz network?

Answer: In some regions (such as Japan) the range 5 GHz restricted. Check your country settings in wpa_supplicant.conf (country=JP → change to country=US for testing). Also, make sure that the router is not using channels DFS (50–144), which require radar inspection.

Question 4: How to reset all network settings on Raspberry Pi?

Answer: Run the commands:

sudo rm /etc/wpa_supplicant/wpa_supplicant.conf

sudo apt purge wpasupplicant -y

sudo apt install wpasupplicant -y

sudo reboot

Question 5: Can it be used? Raspberry Pi as a Wi-Fi repeater?

Answer: Yes, but this will require additional software, for example hostapd + dnsmasq. However simultaneous operation in client and access point mode It is not possible to use a single Wi-Fi adapter; a second adapter or an Ethernet connection is required.