Anyone working on TP-Link EAP225?

It becomes stuck without serial port connected, so I say it doesn't make any difference.

That explains why I couldn't boot to it. I'm fairly certain the bootloader hang issue will remain. I've already created a return ticket on Amazon and going to ship it back. Thanks for the continous help, it has been a very entertaining experience.

Thanks for your work. I tested EAP225v3 test release and everything works fine.

2 Likes

A post was split to a new topic: EAP225 US v1 back to US firmware

Created a device page; feel free to edit it.
https://openwrt.org/toh/hwdata/tp-link/tp-link_eap225_3.0#

Sidenote: That's a dataentry page, not a devicepage.

You mention "PR pending" in the dataentry. Since I couldn't find a PR for EAP225: Which PR is it exactly?

1 Like

There currently is no PR (which is why I didn't create a data entry myself). I've only sent the patches to the mailing list as an RFC.

The patches for the EAP225-v3 (and similar devices) depend on the mtd-splitter and tplink-safeloader patches in pull request #3130, so I didn't want to create a new PR yet.

2 Likes

I mean this PR by @svanheule

and here's a test image from the same user as well.

That's currently just a branch in my copy of the OpenWrt repository. It only becomes a pull request when I ask the OpenWrt maintainers to merge it. See my EAP245v3 branch and pull request for example.

I plan to create a pull request for the EAP225 v3 too, but first some other patches need to get accepted.

1 Like

Hi,

like I said yesterday in the wrong thread (:man_facepalming:), the July 26th build is working great on my EAP225-Outdoor with WPA2 PSK (CCMP) and 802.11r Fast Transition enabled on both 5Ghz radio0 (QCA9886 / 802.11nac) and 2.4GHz radio1 (AR9561 802.11bgn).

Thanks again @svanheule!

Note: at first I had an issue with 2.4GHz but it was caused by an incorrect WPA2 PSK configuration.

2 Likes

Glad to hear you were able to resolve your issue and everything works!

1 Like

@svanheule Would you please share your Buildroot .config for the EAP225 v3? I've taken a stab at it, but it would be nice to have a known working config. Thanks!

If you want to build yourself, don't forget to enable kmod-ath10-ct (under Kernel Modules > Wireless Drivers) and ath10k-firmware-qca9888-ct (under Firmware). With those two packages selected, you should be able to build an image that supports all hardware on the device.

Note that the default buildconfig doesn't select LuCI, so if you want that you will need to select it too.

Got the ath10k stuff, thanks. That was autoselected.

What about the ag71xx MAC and ar8033 PHY? I don't see options for those. Edit: looks like those are selected by target/linux/ath79/config-5.4:CONFIG_AG71XX=y

Can you post your .config somewhere? Or is there a way to get from your sources or image? I downloaded the tarball but didn't find a .config.

Edit: I managed to make a minimal config by renaming .config to something else, running make allnoconfig, then make menuconfig, enabling just the EAP225-related options:

CONFIG_TARGET_ath79=y
CONFIG_TARGET_ath79_generic=y
CONFIG_TARGET_ath79_generic_DEVICE_tplink_eap225-v3=y

Once you've selected the EAP255 v3 as target device, you should be all set. Things like the ar71xx ethernet driver are platform specific, so these are selected once you pick the ath79 target.

By the way, manually editing .config usually isn't really convenient. You're better off using make menuconfig if you want to select extra packages or options. If you want to reset certain options, you can manually remove them and then run make oldconfig to be prompted for the new value, or make defconfig if you just want to pick the defaults.

I agree, manually editing .config is painful and doesn't always lead to the outcome you want, which is why I didn't. I git cloned your repo and did make menuconfig to get an initial config. By default it selected all software to be built as modules (packages) which was taking forever to build. So I started over by moving aside my .config, running make allnoconfig, and enabling just the three target options above in menuconfig.

It's a little weird that the OpenWRT build instructions lead you to build everything under the sun. At the very least, I wish it explained that all packages are enabled by default, and that you should do make defconfig or make allnoconfig to start from a minimal config. make allnoconfig combines make defconfig and make menuconfig into a single step.

Thanks for your work on this! Seems to be running great on my EAP225 v3.

Have people with V3 units been successful in going back to factory firmware? Which revisions of firmware?

Thanks

I'm not aware of EAP225v3 units converted back, but I've converted back the EAP245v1 (and cross-flashed it with EAP225v3 FW).

To do create a sysupgrade image from a TP-Link firwmare, you will need to build the tplink-safeloader tool from the OpenWrt sources (or manually build a compatible file from a TP-Link firmware upgrade file).

@svanheule I've built your tplink_eap2x5 branch and attempted to install it on my EAP 225 Outdoor v1. I first ran cliclientd stopcs as you suggested in your released firmware image. When I attempted to install the (renamed) openwrt-ath79-generic-tplink_eap225-outdoor-v1-squashfs-factory.bin file I received back a "Bad file." error.

My unit is currently running 1.20.0 Build 20200604 Rel. 51951(5553) which is a Canadian firmware file available here: https://www.tp-link.com/ca/support/download/eap225-outdoor/#Firmware.

Please let me know if there's anything I can do to help test the cause of this issue. I'm online on freenode as johnf and asked you about this release a few days ago if you prefer to chat, I'll update this thread with any interesting information.

Thanks for testing and providing some feedback :slight_smile:

Do you happen to be able to access the serial console of the device? The software often provides a bit more detail on what exactly makes an image bad, if you can read the log statements. If you don't feel like taking the risk to get serial access (requires some soldering skills), I've also thrown the library responsible for checking the image into Ghidra.

On the CA version it appears to specifically require the product-info partition to be present in the factory image too. That partition must also contain "region=CA". The (universal) EU/US images don't contain this product-info partition, which is what I used originally to design the OpenWrt factory images.

I've created a test branch you can use to build a CA image for the EAP225-Outdoor (select "EAP225-Outdoor v1-ca" in make menuconfig):

The patches aren't merge-quality yet, but this should be enough to test if the extra product-info partition does the trick. I've build-tested the image, and it looks fine to me.