Jump to content
  • 0

NanoPi M4v2 - Outdated Wifi Firmware Blob & Wrong Country Code in NVRAM

Halley Tsai




I was struggling in the Wifi connectivity with following syndromes:

1. Having trouble connecting to 5GHz network by default unless specifying BSSID

2. Will disconnect after a day or so

3. Cannot parse RX packet header properly (and will spamming errors in dmesg)


After putting in some efforts, I've found a newer firmware version on GitHub:

New Firmware: BCM4356/2 wl0: Apr 18 2017 13:54:43 version (A2 Station/P2P) FWID 01-efd4ca0d

Original Firmware: BCM4356/2 wl0: May 14 2014 19:51:52 version 7.35.17 (r477908) FWID 01-2ed3ee81


The NVRAM text file is identical to `brcmfmac4356-sdio-nanopi-m4v2.txt` shipped with buster 20.05.2 image release, but I noticed the default country code is set to 0x5855, or 'UX' translated over ASCII code. This should be 'US' or 0x5355 instead. New firmware fixes problem 2 and 3, and changing ccode fixes problem 1.



Update the latest firmware hosted on this GitHub repo: https://github.com/rockchip-linux/rkwifibt/tree/master/firmware/broadcom/AP6356

And change the ccode in brcmfmac4356-sdio-nanopi-m4v2.txt to match your own country code in ASCII, little-endian format: e.g. 0x5355 for United States.


I'd like to request the fix in the upcoming package/image update. At this moment, brcmfmac4356-sdio.bin will be overridden by updating armbian-firmware package. Therefore I will have to manually restore this file after each update or I would lose my Wifi.



Edited by Halley Tsai
Link to comment
Share on other sites

2 answers to this question

Recommended Posts

Donate your old hardware to community. Start a giveaway Raffle!

  • 0
41 minutes ago, Werner said:

This is a known problem, partially solved but needs to be finished and properly tested. Problem is fairly complicated which means it can't be fixed by the way.


2 hours ago, Halley Tsai said:

I'd like to request the fix in the upcoming package/image update.



There are very tiny chances to fix this in upcoming release. Why? Because we already have a long list of problems to fix, very limited resources and exactly zero public money budget for dealing with things users wants to have or wish to be fixed. If you want that this is fixed "now" / faster, you need to join our ongoing efforts for solving this problem. Sadly we need to add new feature to start addressing this bug and there are less then two weeks before freezing features integration for upcoming release. Its tight.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Answer this question...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines