Adding OpenWrt support for TP-Link EAP245

The QCA9982 is only use by one other device, but they didn't see any issues so far. This radio also isn't really listed anywhere as 'supported'. The PCI IDs are the same as for the QCA9990, but the firmware just worked, so I didn't think much of it.

Interesting tests you're doing by the way. I just noticed that on my EAP245v1, with a QCA9880 radio, 80MHz AP to station does happen, so at least it is supported by the software stack.

I just submitted a bug report for the issue... Task ID 3405

It seems right now the best "true" combo is..

Even though Luci, 'iw dev wlan0 station dump' and 'hostapd_cli all_sta' show TX mode for all clients as 6Mb/s 20Mhz. In reality it is actually TX'ing at 80Mhz and higher VHT modes when you look at it with an external spectrum analyzer. The bug with kmod-ath10k looks to be just the TX mode reporting, RX mode is correct.

The bug with kmod-ath10k-ct is it is actually limiting TX mode to 40Mhz. But, it is reporting this correctly.


i tried installing openwrt latest snapshot as per page on openwrt regarding EAP245

i waited for several minutes after flash and nothing happened, so i decided to power cycle the unit. Now it seems to be bricked in some way, the LED flashes GREEN-ORANGE-GREEN, then after around 15 secs starts fast green blinking that lasts around 5secs and slighly slower green blinking that lasts around 15 secs. Then LED is solid green.

If i press reset button during the first fast 5 seconds blinking, it start to blink fast orange led and stays like that until power off.

Before i go further and try TFTP or other methods, can someone please provide guidelines at this point?

It doesn't sound like it's bricked, it sounds like it's functioning as intended. The fast-slow-solid green indicates the device is booting and then running in normal operation. The fast orange blinking indicates that you entered failsafe mode (by pressing the reset button).

The default OpenWrt config will configure address on the interface. That address should be reachable after the initial flash.

The problems is, i can't ssh into it on, connection gets timed out.

It's connected thru PoE switch, but changing to provided PoE adapter didn't change anything.

Nevermind, it's working, sorry for taking up your time.

Do you mind sharing the stock firmware to get back from OpenWRT? Performance is somewhat disappoiting, so i wanted to flash stock.

The -sysupgrade.bin file is for flashing directly from OpenWRT to TP-Link EAP245v3 2.21.0 firmware. In the OpenWRT Firmware flashing, you will will need to "Force" it and Uncheck to preserve settings.

The unit will boot up in Factory Default mode. You will then need to flash the TP-Link EAP245v4 2.21.0 Stock bin again (second reflash is needed to get the partitions correct so it will actually save settings).

OpenWRT to TP-Link EAP245v3 2.21.0 sysupgrade image/bin - TP-Link EAP245v3 2.21.0 Sysupgrade.bin

TP-Link EAP245v3 2.21.0 Stock image.bin (Same as on TP-Link's Site - TP-Link EAP245v3 2.21.0 Stock bin

1 Like

I've been flashing back and forth between OpenWRT builds for debugging and Stock...

Still best combo I've had is when using the kmod-ath10k Kernel Module/Driver (not the -ct version) and forcing the latest beta -ct firmware...

600Mb/s Up from Client @ 80Mhz
450Mb/s Down from AP @ 80Mhz (ignore the displayed 6.0/Mbs and 20Mhz the Station List shows). It IS actually TX'ing at 80Mhz width (if that's what you have set).

Stock TP-Link Firmware I get.. (Limit is other end test machine is wired at Gb link (1000Mb/s))
900+Mb/s Up from Client @ 80Mhz
900Mb/s Down from AP @ 80Mhz

I use the 5Ghz Wifi for Streaming between an Oculus Quest VR headset and Gaming PC. 300-400Mb/s is about bare minimum needed for VR Game streaming wirelessly. OpenWRT did work OK. But, would get slight jitter and pauses sometimes (about the same as older Cisco AP I pulled out using 40Mhz width). Using the Stock TP-Link firmware it's always smooth using 80Mhz width.

The extra 802.11r Roaming control and Full DFS Bands are nice with OpenWRT. I think the -ct Driver/Module just needs to be updated to fully work with the QCA9982 chip properly.

1 Like

I'm glad to read about you guys working with OpenWrt on the TP-Link EAP245. For a few years, I've run OpenWrt on a Linksys WRT1900ACS in my home. Recently, I migrating to running pfSense on a PC Engines APU2E4 using TP-Link EAP245s as APs. I prefer open source firmware, so it is good to see that there are those out there working to develop OpenWrt towards getting performance similar to stock firmware for the EAP245.

Thanks a lot mate! Worked like a charm, back on stock. I had to use wget and flash in ssh, since latest snapshot inroduced a bug with not installing dependencies, so i could not install luci properly.

Regarding speeds it's strange for me. I used my phone to test the Wifi (Huawei P30 pro) and with Archer C6 on latest OpenWRT i got around 200 mBit, and with EAP245 on OpenWRT around 80-90 mBit. Standing next to the devices! Archer and EAP are connected with 1GBit lan.

Going back to stock didn't change anything, speeds are same as on OpenWRT but loosing the ability to use roaming and somewhat cumbersome gui i have decided to give OpenWRT another chance next weekend.

Can you pull firmware you're using on EAP245 and post it? I would like to test it.

The Firmware I've been testing is directly from Candela Technologies...
CT Latest Beta Firmwares

I've used the firmware-5-ct-full-community.bin and firmware-5-ct-non-commercial-full.bin
My "better" results have been with the non-commercial version. I use and test with the Full versions of IW and Hostapd. That gives full feature support.

Place the file as firmware-5.bin inside /lib/firmware/ath10k/QCA99X0/hw2.0/

On a side note.. If you are testing real close to the AP, you might actually get better results by lowering the AP's TX power. I've noticed once you get the TX power above 100mw (20dBm) looking at the signal on a Spectrum Analyzer it tends to bleed/distort outside of the channel width. That bleed over flattens out into the noise at about a 20ft distance.

Thx for the firmware. How can i check if EAP is using the firmware you provided? Because speeds didn't change.

What i did was wget the file to /tmp, rename it with "mv", and then copy it with "cp" command to /lib/firmware/ath10k/QCA99X0/hw2.0/ and reboot

EDIT: "du" shows 549 kb in size, so...

Look at the Kernel Log or use the following command in ssh terminal...
dmesg | grep 'firmware ver'

Output from what OpenWRT package loads...

root@OpenWrt:~# dmesg | grep 'firmware ver'
[   15.395023] ath10k_pci 0000:00:00.0: firmware ver 10.4b-ct-9980-fW-13-10af6a005 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 4a0fa880

Output from latest Beta non-commercial...

root@OpenWrt:~# dmesg | grep 'firmware ver'
[   15.627184] ath10k_pci 0000:00:00.0: firmware ver 10.4b-ct-9980-xfW-13-5ae337bb1 api 5 features mfp,peer-flow-ctrl,txstatus-noack,wmi-10.x-CT,rxswcrypt-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,CT-STA,txrate2-CT,beacon-cb-CT,wmi-block-ack-CT,wmi-bcn-rc-CT crc32 cecd9aea

But, with the speeds you are getting using TP-Link's Stock Firmware I don't think OpenWRT or any ath10k Firmware changes are going to make a difference...

I'd be checking for TX/RX Error and Retry rates on the 5Ghz radio. Might be other devices using the 5Ghz band around you bringing your noise floor up. Common things are Wireless Security type cameras and sensors, Cordless Phones, Radar, etc...

Even if you are right next to the AP with other "stuff" operating in the same band around you. That can cause high Packet Error and Retry rates. Which will naturally slow your usable speeds down. But, since any Wifi radio tries to wait for "clear air" before they transmit. That wait timing can slow you down too.

Even at the worst using the ath10k-ct Driver/Module and ct Firmware that OpenWrt master is using. I still get 400Mb/s Up from Client and 250Mb/s Down from AP using iperf3 and UDP transfer tests. The Beta CT Firmware seemed to make the results more consistent. Going to the base kernel ath10k Driver/Module opened my Down from AP speeds more since the AP radio actually used 80Mhz width with it.

Something just struck me. I hate to ask. But are you sure you're connecting to the 5Ghz radio, not the 2.4 ? I ask because that 80-90Mb/s is about top speed for 2.4Ghz @ 20Mhz width.

I hate to respond: AP is connected on 100mBit for some reason to the switch. At least switch is reporting that :man_facepalming:

Firmware is loading properly though.

WOW, amazing work! I've been on hiatus for a bit and I haven't been able to help out as much as I'd like. My apologies :frowning:

I just noticed the commits to add the EAP245v3 to OpenWRT and flashed the image today. It went super smooth and I can't wait to test my AP out with a real firmware :slight_smile:

Thanks for your effort on this!

1 Like

Support for the EAP245v1 has also been merged. :partying_face:


This topic was intended for adding support for this specific device.
Since official OpenWrt images are available now, I will set a timer for this topic to close.


Because specific problems for this device with official releases are better handled in separate topics, in order to make finding relevant information easier. Who is going to read the previous 100-something postings, if he has a specific problem with wifi or general network configuration?

Therefore: Please open new topics for any open issues with this device.



This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.