I have recently replaced my router with new dual channel router (5G/2.4G). This router has Channel configuration set to Auto and changing the channel is disabled. Due this the BerryLan App does not list my wifi and I am not able to connect my Rpi to wifi using it. Earlier with my old router I use to set Channel = 11 to make it work. So my question is how to make Rpi work for Channel = Auto using berrylan app?
BerryLan shouldn’t care about those router settings at all. I’ve just checked the default settings of the images and it seems the wifi region is set to global, allowing it to connect to channels from 1 to 14 (for 2.4GHz)
So I’m currently not sure what your issue might be. Can you please provide the following information:
- ssh into the rpi and get the output of
iw reg getand post it here
sudo nmcli dev wifi rescan
- get the output of
nmcli dev wifi listand post it here
Thanks for your response. Please find the requested information in below screenshot
iw reg get : gives some results
sudo nmcli dev wifi rescan : This Doesn’t give any result
nmcli dev wifi list: This list all the near by wifi but not mine. The first one in the list is my Phone’s hotspot with which it is currently connected
Just for you reference, I am using a Pi Zero W with berrylan flavoured Image. Also I am not sure if there is anything related to wifi supported channels with in a specific country/region. BTW I live in India.
According to the output of “iw reg get”, your rpi has all the possible channels enabled. So that’s probably not it.
Can you try and install some Wifi Scanner tool on your phone which shows channels, encryption modes etc to try and find out what might be different with your particular router compared to the other wifis it finds?
Sure, I’ll try that and post back the results
Here is the data from wifi scanner app in below screenshot.
The first one in the list is my Wifi which is using channel 13 and rest all other near by wifi are running on different channels( mostly 1 to 11) but none is using channel 13.
Do you think Channel 13 can be a reason that Berrylan is not able to list mine in the available wifi because I see there is open enhancement request for channel 12 and 13 in Github
It does look like the channel is indeed your problem. I’ve googled a bit and saw that people report having to update the firmware on their RPi.
Can you try something like described here https://tosbourn.com/get-channels-12-and-13-on-the-raspberry-pi-3/
Once you can find the channel with iwlist or nmcli we can see if there are changes required to nymea-neteorkmanager.
Thanks @mzanetti. I’ll try this solution and let you know how it goes.
I tested for available channels on my Pi using “sudo iwlist wlan0 channel”. The result show that channel 1 to 14 are available but still I am not able to see My Wifi in BerryLan.
Not sure what can be the issue here now…
Did you try updating the raspberry pi firmware?
Then please check with
nmcli dev wifi rescan nmcli dev wifi list
Hey, so I did some more testing on this and this is the outcome:
Berrylan supports channels 12 and 13 just fine. However, some (especially older) Raspberry Pi models don’t support those channels in their firmware. The firmware can be upgraded with the following commands which would enable channels 12 and 13 in our tests. The firmware has to be upgraded just once and will remain on the Raspberry Pi even when reflashing the SD card.
pi:~$ sudo apt-get update pi:~$ sudo apt-get full-upgrade pi:~$ sudo rpi-update
Also, make sure you haven’t set the WiFi country code to US as it’s not allowed to use channel 12 and 13 there. Use
iw reg get to get the current region and
sudo iw reg set <COUNTRY> to select the appropriate country code from this list: Officially assigned code elements
I’ve written that down in the Berrylan FAQ too:
Thanks for this, I’ll try this out over weekend and reply you with results.
I tried the steps you mentioned and it worked. Now I am able to connect to wifi over channel 12 and 13.
The Firmware upgrade alone did not worked, the country code was set to 00 which I changed to “IN” then it started working.
Thanks for all the help, really appreciate.