Adding OpenWrt Support for TP-Link Archer AX23v2

Hi, to my unfortunate surprise I found my latest order to contain AX23v2 instead of v1 (v1.20). I already suspected something like this when there were v2 firmware downloads available earlier this month, but now reality hit.

I have downloaded the Firmware and tried the next steps described here: https://sergioprado.blog/reverse-engineering-router-firmware-with-binwalk/

However, using binwalk --signature --term ax23v2-up-all-ver1-0-1-P1\[20241108-rel47561\]-1024_sign_2024-11-08_14.10.57.bin ends with only the following:

DECIMAL       HEXADECIMAL     DESCRIPTION
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
4950          0x1356          UBI erase count header, version: 1, EC: 0x0, VID header offset: 0x800, data offset: 0x1000

This stops me from extracting the bootloader unfortunately with the aforementioned help from the link.

Using strings -5 ax23v2-up-all-ver1-0-1-P1\[20241108-rel47561\]-1024_sign_2024-11-08_14.10.57.bin with various greps got me the following:

qcom,ipq5018-wifi

arm,cortex-a53

I think both platforms are supported already, what should be my next steps here if I want to add support for this device or help contributing to it (frist timer)?

2 Likes

So I got a bit further, these are two files I was able to get:
img-554890830_vol-kernel.ubifs and img-554890830_vol-ubi_rootfs.ubifs

Extracting the first one with binwalk worked, but the directories are empty. Extracting the second one failed with the error below, but I got this:
0.squashfs and a squashfs-root folder with folders and files.

I also opened up the device but it seems as if the core components are below the silver box, right?

What should be my next steps? How do I get serial access here?

Or can I get more info on the wifi chips/CPU without it in the files, to check whether we might have a similar issue of IPQ5018 RAM being cut in half like here: Add support for TP-Link AX53 - #6 by slh

JP1 looks like the prime candidate.
Voltages must be measured (might be 1.8V, could be 3.3V).
From the looks of it, TP-Link might have cut some lines (missing 0-ohm resistors).

1 Like

You may want to contact tplink and ask why it's not listed in the GPL Code Centre:

That might give more clues about what specs are

1 Like

Hi, as I am waiting for the GPL code to be published (TP-Link support answered and said they forwarded the request), could you tell me which things, apart from a voltage measurement device, I'd need to get access here? First time doing anything like this, so no knowledge on the correct tools.

1 Like

There is no three-step-guide to profit, the development is all yours. You are the only one who can answer your questions, as you are the only one with the device on the desk; you are in the driving seat, at your own pace.

Do you own a USB TTL 3.3v?

Not yet, I'll probably get around to measure the voltage on the pins as recommended before, then order either a 3.3v or a 1.8v USB TTL. I already have a soldering device.

The GPL code got published here: https://www.tp-link.com/en/support/gpl-code/

Still waiting on the equipment to try and get serial access.

3 Likes

Hi @Nihilokrat ! Same dilemma, I bought v2 thinking I was buying v1.x... I will extract many lessons from this buy I think hahaha. GPL code has been released and would like to collaborate with you, Are you interested still on the project?

Hi, I still very much am, but I haven't gotten around to do anything more than getting the GPL code, opening the case and ordering the stuff I need for soldering/serial access.

I'll get around to continue working on this in late April or early May since I won't have access to the stuff for a couple of weeks. Once I start with it again, I will update this thread with the earliest findings.

Fine, I downloaded the GPL code and I'm trying to build, once I get a successful build I will update the thread too :slight_smile:

3 Likes

Just joined / got an AX23 v2 so will follow this one closely. Let me know if I can help test or anything else.

have you identified serial access?

Actually I misspoke / spoke too soon. Am due to receive one tomorrow which I expect will be v2.
I do not yet know what serial access id is, if I need to remove 4 screws and plug into headers that's within the range of my slim capabilities, I just don't have much time to dedicate to it.

I took some time today to check the GPL code and got to run make menuconfig which resulted in the following target settings (default):

Since this is a Wifi6 router, it needs to have ath11k driver, correct? I did only find references to the ath10k driver in .config but since this is a modified build environment, I don't know where else to look (searched through a lot of files, but stuff probably gets loaded when actually building, which fails).

Since the target states 256MB RAM, I defer again to @slh and his previous statements about this being insufficient for ath11k/ath10k combination. So it seems like another dead-end, unless you succeed in rendering my findings invalid/assumptions incorrect.

I'll probably get around to remove the cover off of the cips, etc. on monday, to conclusively check whether the RAM is actually the 256MB version.

I shall point at another device with 256mb ram:

Booting with WiFi enabled leaves around 78mb free.
Whether this is stable is a different question.

I have a AX23 IN/V2.8 which should be an 8mb flash version of the 2.0. I have the required stuff to get serial access. Has someone checked if TFTP still works on this?

Seems like TP has cut TX.
Here is the pinout (from left-right when antennas are facing up)

3v3|GND|TX/RX|TX/RX

Can't confirm TX/RX yet. i still have to see

1 Like

I have tried to get serial reads from the holes at bottom right without any luck :frowning:

I have removed the metal shield to discover a Qualcomm SoC, I will try to remove the heatsink in top of the other chip to identify it.