RPI3 onboard WIFI unstable, FIN1.0 on same WIFI is working fine

Hi,

We are working with RPI3 onboard wifi and balena FIN 1.0 onboard wifi and the RPI3 stays online for only a couple of hours, our Balena FIN is working fine with this same wifi AP.

I found a topic RPI 3 - Wifi connection unstable mentioning a wifi driver update, can I do that myself with the latest BalenaOS version?

We are working with standard version 2.38.0+r1 on both RPI and FIN.

Any thoughts on solving this issue?

Thanks, Bas

Hi there @bas-thingshub,

Thanks for reporting this issue. I noticed that the issue mentioned in that thread has not yet been closed (https://github.com/balena-os/balena-raspberrypi/issues/252), so I doubt it has been merged yet (though am confirming this internally).

In order to further diagnose this issue, are you able to connect the RPi3 via ethernet such that we can access it once the issue has manifested itself? Additionally, what kind of network are you attempting to connect to (2.4GHz, 5GHz)? Does the device just disconnect from the VPN (and appear offline in the dashboard), or does it disconnect entirely from the AP (and flash the no-internet LED sequence outlined here: https://www.balena.io/docs/faq/troubleshooting/troubleshooting/#error-notifications)?

Hi @xginn8,

Ethernet is possible and the RPI is flashing the no-internet sequence.
When I reboot it with a powercycle it will reconnect and work for some hours. This AP has 2.4Ghz and 5 Ghz and this could be an issue because I have another RPI3 in the same balena project connected to a different AP with only 2.4GHz and this device is working as expected. The Balena FIN is on the same 2,4Ghz+5GHz AP but in a different Balena project and is working fine.

When do I need to connect it to ethernet? At reboot or when it’s disconnected again?

I’ve got confirmation from the team that the other topic you had found (forum thread and github issue) are not resolved yet (balenaOS is still using firmware version 7.45.154 rather than 7.45.173 or later) because the upstream Linux kernel repo (RPi-Distro/firmware-nonfree) has not updated it yet. I am seeking clarification on whether balena could / should get around the upstream repo for this firmware.

can I do that myself with the latest BalenaOS version?

Possibly (but check my warning below). I understand that you can add or modify firmware files in the /lib/firmware folder in an app container if you set the io.balena.features.firmware label in the docker-compose.yml file (or by using a single-container app with a single Dockerfile):

The /lib/firmware folder will be initially mounted “read only” on the app container, but it can remounted “read write” before copying the file(s) with the command:

# in the app container
mount -o remount,rw /lib/firmware

After you replaced the firmware, you’d probably need to reboot the device. Obviously you would do this in a lab controlled device at first, because if something goes wrong, the WiFi will go down and this may leave the device offline. And here’s the warning and reason why this may not advisable in production / field devices: if an app update went wrong and the firmware file was not correctly replaced, the device could become unreachable.

When do I need to connect it to ethernet? At reboot or when it’s disconnected again?

If the device was always connected to ethernet, then the question is whether you would be able to reproduce the issue and be able to tell that the WiFi interface was disconnected. The purpose of the ethernet connection is to allow access to the device for investigation as soon as possible after the failure took place (because as time passes, the logs rotate).

Ok, this device is available in our lab environment where we can reproduce this ‘no-internet’ issue. I will connect the device with ethernet when it is going offline on wifi. We granted support acces on this device and will ping you when the wifi disconnect happend.

Hi. Did the issue manifest again?

Hi, yes it did. I have restarted the RPi and granted support access to this device.

@bas-thingshub could you share your device UUID please?

Thanks

Send DM

Thanks, Bas

5 min ago 12:22UTC it went offline (4 blinks of no internet), I connected the RPI with our wired ethernet for debugging with no reboot.

@bas-thingshub so you connected the ef9e1c… device to the ethernet, and is it stable now?
Is the fin and the pi on the same range to the router?
I am going to check what could be the issue here!

the ef9e1c… has always been stable on our 2,4Ghz WLAN AP (…-Airnet) but 584e444… has been disconnecting from our WLAN AP (…-Gast). Both devices are in the same Balena application and running the same code, only difference is the WLAN accesspoint the devices connect to. 584e444… is the trouble maker :wink: and connected to ethernet. Both are RPI3.

Our FIN is connected to WLAN AP (…-Gast) and is working fine.

@bas-thingshub It looks like it could be an issue with the AP. Is there a way you can test another RPi3 on the same access point and check if it behaves the same way?

It did, initialy both RPI’s were connected to the same WLAN …-Gast and both disconnected after some time. Then I decided to put one on our ‘old’ WLAN router and it is still working till today as expected.

Do you have any thoughts on why our FIN is working fine on the ‘new’ WLAN AP?

Hey @bas-thingshub it could be simply that the Fin wifi chip performs better under your conditions :wink: Would it be possible for you to measure signal strength from both the rpi3 and the Fin and let us know what that shows? Also if there are any configuration differences between the two APs they could help us understand what is happening here

We are also waiting for a new wifi firmware. See https://github.com/RPi-Distro/firmware-nonfree/issues/5
Once that is merged, we’ll do another release to include the newer firmware