IPQ4019: Adding support for TP-Link Deco M5

Hello everyone.

I have spend a few hours tonight to try and wrap my head around how to get this working but i am not getting very far. Over the span of almost 3 years this thread has gotten really long and a lot of different github repos are posted. Is there anyone that has or can create a quick sumary of what github repo's should be used for which devices?

I am currently trying to install openwrt on a eu/3.2 but i have no idea what is meant with "The XMC patch from sb0037" in the post i am replying to.

Thanks.

I've compiled this one for my M5 v3 EU version (+ added the XMC patch according to post #299). Everything works great thus far - finally proper DSA networking, with fully functional VLANs (both wireless & LAN). THANK YOU

Now - how do we make it to land in the master branch (and be officially included in OpenWRT)? :slight_smile:

2 Likes

Also compiled m5v3 with the xmc patch and most things work wonderfully. Best yet - a previous build failed to communicate with my modem. No issues this time.

However, i'm struggling to setup a mesh. I've installed dpad-mesh-openssl and have the following on both decos:

config wifi-iface 'mesh'
option network 'lan'
option device 'radio0'
option disabled '0'
option mode 'mesh'
option mesh_id 'my-mesh'
option encryption 'none'
option key 'qwerty1234'
option mesh_fwding '1'
option mesh_rssi_threshold '0'

Deco 2 is set as DHCP Client.
Maximum transmit power shows: Current power: 0 dBm and no sign of any connection between them.

the fact that it is on 0.000 Ghz is probably the issue but i'm not sure how to fix this
Mode: Mesh Point | SSID: ?
BSSID: 60:A4:B7:14:3C:C2
Encryption: None
Channel: 1 (0.000 GHz)
Tx-Power: 0 dBm
Signal: 0 dBm | Noise: -101 dBm
Bitrate: 0.0 Mbit/s

Is this my config, or an issue with the branch?

Thanks,
Michael

Please submit all patch to master openwrt branch so we can get automatic build and more community support.

1 Like

Your config looks good as far as I can tell, so it's either missing packages (looking at the system log might help?) or the branch you're using.

On the branch I made (https://github.com/DropDemBits/openwrt/), I'm using wpad-basic-mbedtls and it seems to work well, though I've ran into an issue where decos on the frankveltmans firmware version couldn't connect to the decos on the newer firmware version.

Note that the board names are slightly different (i.e. the common Deco M5 board name has been split into a separate v1 and v3 version) since I made this branch with the hope of eventually upstreaming it and tried to address most of the PR comments on oklona's PR.

1 Like

Thank you, I've compiled and run your branch without any changes and works perfectly with unencrypted mesh. However, when changing to WPA3-SAE it no longer works, i believe this is because the basic doesn't support WPA3-SAE.

I tried using wpad-mesh-mbedtls but it updates a number of other packages which unfortunately stops the mesh working completely

Have you manged an encrypted connection?

Oh! I was wondering why it was saying "Encryption: None" on my mesh wireless network, thanks for noticing!

I haven't managed to get an encrypted connection yet, but at least according to https://openwrt.org/docs/guide-user/network/wifi/mesh/80211s#config the other wpad-* versions should be removed too. I prefer doing this via make menuconfig since I'd need to update all 3 nodes anyway, though a temporary connection over the lan port should suffice too.

Thanks again for your help, I compiled using the wpad-mesh-mbedtls by selecting it in makemenu (and removing the basic). Previously I was loading via Luci System/Software - that didn't work.

So far everything is working perfectly. Flawless. Over the moon. Thank you!

1 Like

Hi,

This is my first post.
Im a potential new user to openwrt.
I've read this thread with great interest.
I own the m5 v3 eu version and would love to try openwrt on it.

Im confused on the openwrt state of this product.
I see people write about adding it to the main upstream version of openwrt. I even see a accepted commit for it. But people are still compiling different versions.

Will there be a generic firmware in the near future?
Or should i pull up my sleeves and try to learn how to compile and go down the rabbit hole?

Thanks.

2 Likes

hi, for now you'd need to compile. Scroll back for instructions and examples on how to do it, have a happy journey!

I managed to compile a working firmware using DropDemBits repo (https://github.com/DropDemBits/openwrt/) using the default branch (Deco-M5-main) and the build instructions from [OpenWrt Wiki] Build system usage.

When running make menuconfig make the following changes:

  • Set Target Profile to "TP-Link Deco-M5 v1/2/3" (check your version)
  • Go to Network -> WirelessAPD and unselect "wpad-basic" and select "wpad-mesh-mbedtls"

When building has completed your can flash the *-factory.bin file in bin/targets/ipq40xx/generic to your device.

1 Like

@DropDemBits : i just compiled your build and it is working perfectly so far.

I m using multiple VLAN and SSID

Thank you very much.

1 Like

Nice fix that reduce ping that should be integrated to master : https://git.openwrt.org/?p=openwrt/openwrt.git;a=commitdiff;h=b8e52852bd62236a2a84663b4592d221ebc64cb4

1 Like

Any progress for the merge in the master branch of openwrt?

2 Likes

Hi, can you share your compiled .bin file.
I made my own but it stucks on "Waiting for root device /dev/mtdblock16" and i'm trying to figure out is it bad firmware or damaged router.

Been a bit since I haven't had the time or energy recently, but what's next to do before submitting is:

  • Confirming the MAC address assignment aligns with the OEM firmware
    • If I recall correctly, the 2 GHz and 5 GHz radio get assigned a MAC address with an increment of -1 and -2 of the label MAC address respectively, though would like someone on OEM firmware to confirm this for me.
  • Rebase to the current master
  • Cleaning up commits
    • Right now there's a "fixup!" commit that needs to be squashed with another commit.
  • Use nvmem-layout instead of nvmem-cells since apparently the latter is deprecated.
  • Adding the correct Signed-off-by lines to all commits.
    • @undisputed-seraphim would you be okay with checking I got the signed-off by lines for your commits correct? I'd also be okay with you adding the signed-off by lines yourself so that I can cherry-pick them onto my branch myself.

The two big issues that have been sapping my energy is that very rarely the TX queue can stall for no apparent reason, and there's been rare instances of the routers restarting also for no apparent reason. Hopefully those two are fixed with the performance governor fix on the Deco-M5-next branch.

2 Likes

Hello, can you share the full boot log? This might be another case of a spi chip that needs support added for it like in this post.

Hi, this is exactly the same case. Somehow I didn't notice it. I also have DECO V.3.20 Modification of the XMC.c file allowed the device to boot.

unfortunately now I have problem with 2,4 Wifi, I saw similar problem with ZTE routers

[   14.854478] ath10k_ahb a000000.wifi: qca4019 hw1.0 target 0x01000000 chip_id 0x003b00ff sub 0000:0000
[   14.854547] ath10k_ahb a000000.wifi: kconfig debug 0 debugfs 1 tracing 0 dfs 1 testmode 0
[   14.866408] ath10k_ahb a000000.wifi: firmware ver 10.4b-ct-4019-fW-13-5ae337bb1 api 5 features mfp,peer-flow-ctrl,txstatus-noack,wmi-10.x-CT,ratemask-CT,regdump-CT,txrate-CT,flush-all-CT,pingpong-CT,ch-regs-CT,nop-CT,set-special-CT,tx-rc-CT,cust-stats-CT,txrate2-CT,beacon-cb-CT,wmi-block-ack-CT,wmi-bcn-rc-CT crc32 6b2b5c5b
[   15.045623] ath10k_ahb a000000.wifi: board_file api 2 bmi_id 0:20 crc32 d140cd7d
[   16.338715] ath10k_ahb a000000.wifi: 10.4 wmi init: vdevs: 16  peers: 48  tid: 96
[   16.338792] ath10k_ahb a000000.wifi: msdu-desc: 2500  skid: 32
[   21.357939] ath10k_ahb a000000.wifi: wmi unified ready event not received
[   21.412937] ath10k_ahb a000000.wifi: could not init core (-110)
[   21.413318] ath10k_ahb a000000.wifi: could not probe fw (-110)
[   21.417882] ath10k_ahb a000000.wifi: firmware crashed! (guid b137efe5-9adf-45b9-a3d3-90a6a26dfcfe)
[   21.423625] ath10k_ahb a000000.wifi: qca4019 hw1.0 target 0x01000000 chip_id 0x003b00ff sub 0000:0000
[   21.432568] ath10k_ahb a000000.wifi: kconfig debug 0 debugfs 1 tracing 0 dfs 1 testmode 0
[   21.441868] ath10k_ahb a000000.wifi: firmware ver 10.4b-ct-4019-fW-13-5ae337bb1 api 5 features mfp,peer-flow-ctrl,txstatus-noack,wmi-10.x-CT,ratemask-CT,regdump-CT,txrate-CT,flush-all-CT,pingpong-CT,ch-regs-CT,nop-CT,set-special-CT,tx-rc-CT,cust-stats-CT,txrate2-CT,beacon-cb-CT,wmi-block-ack-CT,wmi-bcn-rc-CT crc32 00000000
[   21.468294] ath10k_ahb a000000.wifi: board_file api 2 bmi_id 0:20 crc32 d140cd7d
[   21.478694] ath10k_ahb a000000.wifi: htt-ver 0.0 wmi-op 6 htt-op 4 cal pre-cal-nvmem max-sta 32 raw 0 hwcrypto 1
[   21.486114] ath10k_ahb a000000.wifi: firmware register dump:

@DropDemBits Thank for all your effort and time in this project. I will recompile your latest branch and test.

2 Likes