Giter VIP home page Giter VIP logo

Comments (9)

takasehideki avatar takasehideki commented on August 26, 2024 6

Hi @fhunleth
I am a @pojiro's friend who reproduced this issue :)
As just FYI, I've confirmed new firmware also worked well and fixed this issue in my environment. I'm really thankful to you!

from nerves_system_rpi4.

fhunleth avatar fhunleth commented on August 26, 2024 4

Great! Thanks for verifying that it works. Once I verify that the RPi Zero still works, I'll merge and start the process of getting new Nerves systems out. Shouldn't be much longer!

from nerves_system_rpi4.

fhunleth avatar fhunleth commented on August 26, 2024 2

I think that the firmware is out of date. Due to a missing firmware file and looking out-of-date, I switched wifi firmware repositories in this release to the linux-firmwareone. I assumed that the linux-firmware files would be more current since they had the missing file, but they are not. It looks like the latest firmware files from the Raspberry Pi Foundation are maintained at https://github.com/RPi-Distro/firmware-nonfree/tree/master/brcm. They have recent timestamps so I'm hopeful. It's getting late here, but my next try would be to try these by putting them in /lib/firmware/brcm and seeing if that works.

from nerves_system_rpi4.

fhunleth avatar fhunleth commented on August 26, 2024 1

Thanks for reporting this! I am preparing an update to the Raspberry Pi 4 that fixes GPIO pullups and adds GPU support via DRM, so this is timely. Perhaps it is as easy as getting the latest firmware from the Raspberry Pi OS or perhaps the linux-firmware project has a fix.

from nerves_system_rpi4.

fhunleth avatar fhunleth commented on August 26, 2024 1

@pojiro Could you try this firmware? It has the new WiFi firmware and I hope that it works for you!

from nerves_system_rpi4.

pojiro avatar pojiro commented on August 26, 2024 1

@fhunleth I tried the fw and I confirm it works with 5GHz WiFi AP which is I mentioned earlier.
I see RingLogger, it seems no errors, no disconnects so far, seems nice :) .

from nerves_system_rpi4.

fhunleth avatar fhunleth commented on August 26, 2024

I'm trying to reproduce, but 5 GHz seems to work for me. Here's my connection to my test AP:

iex(18)> VintageNet.get_by_prefix(["interface", "wlan0", "wifi", "current_ap"])
[
  {["interface", "wlan0", "wifi", "current_ap"],
   %VintageNetWiFi.AccessPoint{
     band: :wifi_5_ghz,
     bssid: "8a:8a:20:88:7a:50",
     channel: 116,
     flags: [:ess],
     frequency: 5580,
     signal_dbm: -73,
     signal_percent: 64,
     ssid: "FlakyWiFi"
   }}
]

This access point is currently set to WPA2 PSK. Do you see anything that might be different between my setup and yours?

from nerves_system_rpi4.

pojiro avatar pojiro commented on August 26, 2024

Below is my config, . I'm in Japan, the regulatory_domain is different from yours.
With this rpi4 can't grab the AP. So, VintageNet.get_by_prefix(["interface", "wlan0", "wifi", "current_ap"]) return [].

config :vintage_net,
  regulatory_domain: "JP",
  config: [
    {"usb0", %{type: VintageNetDirect}},
    {"eth0",
     %{
       type: VintageNetEthernet,
       ipv4: %{method: :dhcp}
     }},
    {"wlan0",
     %{
       type: VintageNetWiFi,
       vintage_net_wifi: %{
         networks: [
           %{
             key_mgmt: :wpa_psk,
             ssid: "ctc-a-a6f52c",
             psk: "secret"
           }
         ]
       },
       ipv4: %{method: :dhcp}
     }}
  ]

I change regulatory_domain to US, then rpi4 grab the AP and return below.

iex(1)> VintageNet.get_by_prefix(["interface", "wlan0", "wifi", "current_ap"])
{["interface", "wlan0", "wifi", "current_ap"],
   %VintageNetWiFi.AccessPoint{
     band: :wifi_5_ghz,
     bssid: "c0:25:a2:b1:4c:8f",
     channel: 116,
     flags: [:wpa2_psk_ccmp, :wps, :ess],
     frequency: 5580,
     signal_dbm: -61,
     signal_percent: 85,
     ssid: "ctc-a-a6f52c"
   }}

Still, this connection is unstable, so rpi4 connect and disconnect repeatedly. Below is the log.

01:37:49.116 [info]  RouteManager: set_connection_status wlan0 -> :internet
        
01:37:52.668 [debug] wpa_supplicant: wlan0: CTRL-EVENT-DISCONNECTED bssid=c0:25:a2:b1:4c:8f reason=0 locally_generated=1
        
01:37:52.670 [warn]  AP disconnected: c0:25:a2:b1:4c:8f
        
01:37:52.696 [info]  RouteManager: set_connection_status wlan0 -> :disconnected
        
01:37:52.697 [debug] wpa_supplicant: wlan0: CTRL-EVENT-REGDOM-CHANGE init=CORE type=WORLD
        
01:37:52.698 [info]  WPASupplicant ignoring {:event, "CTRL-EVENT-REGDOM-CHANGE", %{"init" => "CORE", "type" => "WORLD"}}
        
01:37:52.701 [debug] wpa_supplicant: wlan0: CTRL-EVENT-REGDOM-CHANGE init=USER type=COUNTRY alpha2=US
        
01:37:52.702 [info]  WPASupplicant ignoring {:event, "CTRL-EVENT-REGDOM-CHANGE", %{"alpha2" => "US", "init" => "USER", "type" => "COUNTRY"}}
        
01:37:55.128 [debug] wpa_supplicant: wlan0: Trying to associate with SSID 'ctc-a-a6f52c'
        
01:37:55.149 [info]  WPASupplicant ignoring {:event, "WPS-AP-AVAILABLE"}
        
01:37:55.150 [info]  wpa_supplicant(wlan0): Trying to associate with SSID 'ctc-a-a6f52c'
        
01:37:57.587 [info]  RouteManager: set_connection_status wlan0 -> :lan
        
01:37:57.610 [debug] wpa_supplicant: wlan0: Associated with c0:25:a2:b1:4c:8f
        
01:37:57.612 [info]  wpa_supplicant(wlan0): Associated with c0:25:a2:b1:4c:8f
        
01:37:57.612 [debug] wpa_supplicant: wlan0: CTRL-EVENT-SUBNET-STATUS-UPDATE status=0
        
01:37:57.612 [debug] wpa_supplicant: wlan0: CTRL-EVENT-REGDOM-CHANGE init=COUNTRY_IE type=COUNTRY alpha2=JP
        
01:37:57.613 [info]  WPASupplicant ignoring {:event, "CTRL-EVENT-SUBNET-STATUS-UPDATE", %{"status" => "0"}}
        
01:37:57.614 [info]  WPASupplicant ignoring {:event, "CTRL-EVENT-REGDOM-CHANGE", %{"alpha2" => "JP", "init" => "COUNTRY_IE", "type" => "COUNTRY"}}
        
01:37:57.618 [debug] wpa_supplicant: wlan0: WPA: Key negotiation completed with c0:25:a2:b1:4c:8f [PTK=CCMP GTK=CCMP]
        
01:37:57.618 [debug] wpa_supplicant: wlan0: CTRL-EVENT-CONNECTED - Connection to c0:25:a2:b1:4c:8f completed [id=0 id_str=]
        
01:37:57.619 [info]  wpa_supplicant(wlan0): WPA: Key negotiation completed with c0:25:a2:b1:4c:8f [PTK=CCMP GTK=CCMP]
        
01:37:57.620 [info]  Connected to AP: c0:25:a2:b1:4c:8f
        
01:38:01.176 [info]  RouteManager: set_connection_status wlan0 -> :internet
        
01:38:06.698 [info]  RouteManager: set_connection_status wlan0 -> :disconnected

from nerves_system_rpi4.

fhunleth avatar fhunleth commented on August 26, 2024

Just saw this commit that's timestamped yesterday:

* New clm_blob for BCM43456
    - An updated clm_blob to open up the 80MHz channels.
  * Use BCM43456 clm_blob on CYW43455
    - The previous CYW43455 clm_blob provides limited access to the higher
      5GHz channels (100+) - the BCM43456 (surprisingly) seems to work and
      doesn't have this problem.

This would affect the RPi4 WiFi and sounds interesting.

from nerves_system_rpi4.

Related Issues (19)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.