Support for the Linksys MR9000

I got it to work, using your board files, but had to use the -ct drivers. I was using non-ct before.

I also use -ct drivers, but don't see a reason for it not to work with non-ct.

Suggestion: you could copy all the board files over to the device, and then copy them in/out of lib/firmware/ath10k/ one by one, and reload the ath10k_pci via
rmmod ath10k_pci
modprobe ath10k_pci
and test each board-2.bin file that way rather quickly (better than building a whole new firmware).

Don't know if that will work. board-2.bin is a kind of container file, usually with several different calibration files in it. Your suggestion would depend on the driver to also accept raw calibration files.

But of course I could build several containers and then try your approach. Still faster than building new firmware each time.

Update: Not much difference when using the boardData_QCA... files. For the QCA4019 radios there are only 2 files to choose from so let's try something else. The files from the MR8300 should also work for those, shouldn't they? The design is more or less identical apart from the 3rd radio.

Oh, the choice is easier than expected: A simple cmp showed all the files for one reg domain to be bit-perfect copies of each other. No wonder there wasn't much difference to be seen.

@drandyhaas How does wifi perform with your unit?

I get about 320 Mbps when 50 feet away or so. Can get up to 480 when closer. This is about the same as with the ea8300. It's like this on both the 5 GHz radios. Both are set to 80 MHz bandwidth. The 2 GHz radio gives about 50 Mbps on 40 MHz bandwidth.

Just in case anybody wants to try it out , I have uploaded a 20.02.0-rc3 firmware with support for the MR9000.

I have found nothing which could explain the slightly inferior wifi performance compared to my EA8300 in an otherwise identical setup. Maybe it's down to the slightly different antenna design.

1 Like

I will give this a shot later on today. Hey thanks for looking further into the code, you did the part that I just haven't had time to sit down and look at.

Alright, time to get involved. The efforts made here are based on my custom build, something that I appreciate a lot. I will finish adding the missing parts to fully support all my changes on this device and publish it to my download website, making this build a usable one (with the ability to download and install packages).

After testing this further enough, I will make the efforts to port it back to the vanilla OpenWrt codebase, so the device can run an official OpenWrt build as well. However, since the OpenWrt reviewers are a little bit picky, I would like to hold back the "backporting" for a while.

Let me know your thoughts.


P.D.: I sent a request to Linksys to get the source code of the OEM firmware. Hopefully they'll release it soon. Do anybody have the full OEM bootlog? That will be useful for checking in the mean time.


P.P.D.: This custom build supports ramoops, which is marvelous to debug kernel panics and crashes. Just need to polish the code that handles that and enable it for this device.

1 Like

By all means I say go for it. I am on an off with looking at things given my crazy schedule. As for the build recently posted here I am 13+ days up with no issues. If you could get this into mainstream though that would be awesome. I have already bricked one of these two years ago (wiped it's eprom entirely) trying to figure out what's going on with these.

1 Like

Where is the repo for or files for this?

Here: download and install RC3. It is a fully usable (with installable software) build: Optimized build for IPQ40xx devices

Keep in touch with the thread as I will put the future released in there as well.

1 Like

Am I missing something but can’t find where in the web UI to upload the firmware

Am I looking it the wrong place?

Thanks,That got me to a login pop up. But could not long in. Tired linksys email and password and a few others but could not get in. Suggestion?

You have to first log in to the router via the normal webpage of the router. Default pw is admin. You can reset the router pw by holding the reset button while the unit is on.

1 Like

Thanks a bunch @NoTengoBattery and all others for your hard work on this. I got your RC4 and installed it on a MR9000, and it went smoother than the initial setup of the device using stock. So far, I've only tested but not used/deployed this device, but it worked really well.

I've not seen MR9000 port for official OpenWRT RC4, does that mean it's not going to be part of the official release? Maybe it's going to live as a snapshot until next version?

I'm fairly new in terms of my knowledge of OpenWRT ecosystem, so I'm just wondering how such custom / community builds live for devices that are officially unsupported by OpenWRT releases.

When there's an official point release for OpenWRT, do the custom/community builds fall behind until full release?

Hi.
I tried this, and looks like default works good. But when I tried to update software list from web page, I receive this(from ssh the same):

Executing package manager

Downloading https://downloads.notengobattery.com/projects/openwrt-v3.0.0-rc4/targets/ipq40xx/generic/packages/Packages.gz
*** Failed to download the package list from https://downloads.notengobattery.com/projects/openwrt-v3.0.0-rc4/targets/ipq40xx/generic/packages/Packages.gz

Downloading https://downloads.openwrt.org/releases/21.02.0-rc4/packages/arm_cortex-a7_neon-vfpv4/base/Packages.gz
Updated list of available packages in /var/opkg-lists/notengobattery_base
Downloading https://downloads.openwrt.org/releases/21.02.0-rc4/packages/arm_cortex-a7_neon-vfpv4/base/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/21.02.0-rc4/packages/arm_cortex-a7_neon-vfpv4/luci/Packages.gz
Updated list of available packages in /var/opkg-lists/notengobattery_luci
Downloading https://downloads.openwrt.org/releases/21.02.0-rc4/packages/arm_cortex-a7_neon-vfpv4/luci/Packages.sig
Signature check passed.
Downloading https://downloads.notengobattery.com/projects/openwrt-v3.0.0-rc4/packages/arm_cortex-a7_neon-vfpv4/notengobattery_feed/Packages.gz
*** Failed to download the package list from https://downloads.notengobattery.com/projects/openwrt-v3.0.0-rc4/packages/arm_cortex-a7_neon-vfpv4/notengobattery_feed/Packages.gz

Downloading https://downloads.openwrt.org/releases/21.02.0-rc4/packages/arm_cortex-a7_neon-vfpv4/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/notengobattery_packages
Downloading https://downloads.openwrt.org/releases/21.02.0-rc4/packages/arm_cortex-a7_neon-vfpv4/packages/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/21.02.0-rc4/packages/arm_cortex-a7_neon-vfpv4/routing/Packages.gz
Updated list of available packages in /var/opkg-lists/notengobattery_routing
Downloading https://downloads.openwrt.org/releases/21.02.0-rc4/packages/arm_cortex-a7_neon-vfpv4/routing/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/21.02.0-rc4/packages/arm_cortex-a7_neon-vfpv4/telephony/Packages.gz
Updated list of available packages in /var/opkg-lists/notengobattery_telephony
Downloading https://downloads.openwrt.org/releases/21.02.0-rc4/packages/arm_cortex-a7_neon-vfpv4/telephony/Packages.sig
Signature check passed.

Errors

Collected errors:
 * opkg_download: Failed to download https://downloads.notengobattery.com/projects/openwrt-v3.0.0-rc4/targets/ipq40xx/generic/packages/Packages.gz, wget returned 5.
 * opkg_download: Failed to download https://downloads.notengobattery.com/projects/openwrt-v3.0.0-rc4/packages/arm_cortex-a7_neon-vfpv4/notengobattery_feed/Packages.gz, wget returned 5.

The opkg update command failed with code 2.

Also can't install samba:

root@LinksysMR9000:~# wget https://downloads.notengobattery.com/projects/openwrt-v3.0.0-rc4/packages/arm_cortex-a7_neon-vfpv4/notengobattery_feed/Packages.gz
Downloading 'https://downloads.notengobattery.com/projects/openwrt-v3.0.0-rc4/packages/arm_cortex-a7_neon-vfpv4/notengobattery_feed/Packages.gz'
Connecting to 3.20.183.177:443
Connection error: Invalid SSL certificate
root@LinksysMR9000:~# 

Upd:
Oh, I found the answer