TP-Link EAP620 HD v2

@mrnuke would these instructions be relivant for the tplinek eap 620hd? same chipset.

https://git.openwrt.org/?p=openwrt/openwrt.git;a=commitdiff;h=a00ff9f6d13f6ff5eae57be70a270ccd668d5240

ah exciting but i have a v2 which is ipq60xx (IPQ6018). I am not sure what i'd need to do to get it supported too?

add it yourself, or hope someone eventually does the work for you.
currently there's no pending PR for the v2.

ok i'd like to dive into that.. if we look at this https://github.com/openwrt/openwrt/commit/a00ff9f6d13f6ff5eae57be70a270ccd668d5240

since its the same board/chip. Could those instructions also be followed?

Only if you enjoy bricked devices...

I don't know anything about the EAP620HD. Can you use tplink-mkimage-2022.py to extract the vendor image contents?

If I were trying to do anything, I'd first make sure to get a serial console. The J1 footprint looks suspicious.

I have shell access to the ap (non-root). I saw this /fw_data dir. Would these .ubi files be the ones to use aganist the python script?

/fw_data $ ls -l
total 5765
-rwxrwxr--    1 0        root       1966080 Aug 28 10:17 backup_data.ubi
-rwxrwxr--    1 0        root       1966080 Aug 28 10:17 factory_data.ubi
drwxrwxr-x    2 0        root             3 Aug 28 10:17 manu_data
-rwxrwxr--    1 0        root          2650 Aug 28 10:17 partition-table
-rwxrwxr--    1 0        root           515 Aug 28 10:17 product-info
-rwxrwxr--    1 0        root       1966080 Aug 28 10:17 runtime_back.ubi
-rwxrwxr--    1 0        root            24 Aug 28 10:17 soft-version
-rwxrwxr--    1 0        root           130 Aug 28 10:17 support-list
drwxrwxr-x    2 0        root             3 Aug 28 10:17 user_data

J1 suspicious as in it could be the serial port? @ssamsel with the V1 you got working with openwrt, was the serial port this same?

I took a multimeter to the j1 pins..

  1. 1.808 dc
  2. 1.560 dc
  3. Ground
  4. 1.808 dc

based on the above its not showing a 3.3v.. is it possible vcc is 1.5v? and pins 1&4 are rx + tx?

https://openwrt.org/docs/techref/hardware/port.serial

thanks for that link

measured ohms now and i think its making a bit more sense

1.10.7k - rx
2. 5.65k - vcc
3. gnd
4. 1.37k ? -- is this possible its tx? per the link its too low in the range

as I belive the wiki tells you, Tx will fluctuate during boot.

1 Like

No luck, but I have not tried. The blob in qca-firmware repo is from latest TP-Link firmware.

1 Like

This thread is for the EAP620HD v1. I would recommend you start a new thread for the v2 to keep things organized and clear, as it is an entirely different board and SOC.

1 Like

The EAP-610 is [Rx ] [Tx ] [Gnd] [Vcc]. Also 1.8V. Make sure to use a 1.8V UART adapter. Most are 3.3V and bad news for these boards.

got serial access.. however not seeming an easy way to get into a shell yet. @mrnuke did you find something for the EAP-610?

I don't think I ever got shell access to tplink firmware. You can get the contents though:

$ ./tplink-mkimage-2022.py --extract EAP620HDv3_1.3.1_\[20240828-rel82224]_up_signed.bin 
$ ubireader_extract_images rootfs.ubi.bin 
$ unsquashfs ubifs-root/rootfs.ubi.bin/img-1577839235_vol-ubi_rootfs.ubifs 
$ ls squashfs-root/

For ubireader, I use pip3 install --user ubi_reader

ok so i cloned openwrt repo. Went throught eap610-outdoor files change for the base of eap620hd-v2 since its looking like same board and radios.

grep -irl eap620hd-v2
package/boot/uboot-envtools/files/qualcommax_ipq60xx
package/firmware/ipq-wifi/Makefile
target/linux/qualcommax/image/ipq60xx.mk
target/linux/qualcommax/ipq60xx/base-files/etc/hotplug.d/firmware/11-ath11k-caldata
target/linux/qualcommax/ipq60xx/base-files/etc/board.d/02_network
target/linux/qualcommax/ipq60xx/base-files/lib/upgrade/platform.sh
target/linux/qualcommax/ipq60xx/base-files/lib/preinit/09_mount_factory_data

In theory i could try to complie an image and see about flashing it right? I guess im just not sure if i should be looking into more stuff in the serial access (still no shell). I did see Ctrl + B to break boot but i am never able to action it. almost like my inputs do nothing. I am new to using serial with screen also. so far i just know how to get the output and kill it with Ctrl +A, K.

seems pinouts are the same actually with 610-outdoor and 620hd v2. I just switched TX to pin 2 from 4 and now Ctrl+B is working!

@slh could we move the tags to developer sub forum?

Would anyone be able to guide me on what to do next? So far I have working serial acces, mirrored the configs for eap610-outdoor and renamed for 620hd-v2. This is from browsing the firmware extract from @mrnuke python script I did not see much difference maybe other then gpio might have less functions then the 610.

Trying to flash via web ui from the 610-outdoor instructions but seems it is not accepting the firmware

from serial:

<httpd>[error]_http_parser_formArg(): 798  -> contentLength is too long.

[utilities_debug: postFirmwareRpm:179]post request
memFree = 611213312
[utilities_debug: getFirmwareRpm:145]get request
[NM_Error](nm_checkSupportList) 00561: Firmwave not supports EAP620 HD(TP-Link|CA|AX1800-D):2.0 (TSLIST:TS0), check failed..fw support list:
\
EAP620
HD(TP-Link|CA|AX1800-D):2.0
(TSLIST:TS0)�

[NM_Error](nm_checkUpContents) 00639: Fail to check support list
[NM_Error](nm_fwup_buildUpgradeStruct) 01250: checkUpdateContent failed.
[NM_Error](nm_fwup_verifyFwupFile) 01360: nm_api_buildUpgradeStruct failed!
[Error][checkFirmware] 313: nm_api_verifyFwupFile failed, errCode -1


file name is just openwrt.bin . I am not sure why its complaining about the string match. I thought mine matches?