Image for US model of TL-WPA8630 v2.0?

I have a TL-WPA8630 v2.0 combination Powerline bridge and WiFi access point. Although I bought it secondhand, presumedly I have a US model as it has a US plug for the wall side (no -P passthrough to the front of my unit unfortunately).

Anyway, it seems this device should (or at least could in theory) be easily supported by OpenWrt snapshot builds, but I'm uncertain if I can use them. All the builds linked from are for EU or DE or AU. Are any of those compatible for US, or what would I need to do to find a suitable firmware for my particular model of this router?

I think the regions include different PLC FWs because of regulatory differences.

You can probably find a US FW for your device in the link to the tp-link forum in:

There's also info regarding how to switch them.

Don't read the thread to carefully, since we're discussing an unofficial build, for a unsupported device ,)

Hmm, my understanding is that the PLC part is flashed separately from the WiFi portion anyway though? Also wondering if the WiFi stuff in OpenWrt would be wrong if I use an EU build in US region?

Ah, further down on the device wiki page there's a table in the "Choosing the right firmware" section that mentions the US variant, and links to

It's unclear why it would be unsupported in the official releases. The table row linking to that "patched firmware" repo says: "[Supported?] No: Same SupportList entry with different partition layouts." but all the Github project seems to do is add some entries to a tplink-safeloader.c which seems like it could be done in the main repo without conflict? But I'm unfamiliar with when/how/why that comes into play so could be mistaken.

AFAIK there's no relation between the PLC and the wifi.

It could be that the PLC is stored on a separate partition in the stock FW, and the official openwrt release, while the build I used for D-Link COVR-P2500 had moved it to the file system.

If that's the case, then a mod could be required for openwrt to be able to find the correct spot/partition
for the PLC FW.

I suggest you reach out to the wmuallay and ask him.

The explanation for why is here, (background). (This needs to be rewritten as its too complicated to follow).

Basically the US v2 device has different flash partition layouts depending on which version of the stock firmware is loaded. If the US device was officially supported in OpenWRT, you would need to carefully pick the right firmware or else you will accidentally brick your device. This was deemed too risky by the OpenWRT devs to be included in the official firmware, so for the time being I just put builds of the US firmware in that separate github repo with instructions detailing the risks. Its not ideal, but there is no safe way of supporting the US device, which is a pity.

The other problem with the US model is Firmware version 2.0.2 is completely unsupported due to its complicated partition scheme. We still have to come up with a workaround for it (i.e. handcrafted downgrade firmware).

For the WPA8630 v2, you don't have to worry about the PLC firmware, unless you want to upgrade it (which can be done with open-plc-utils).

These OpenWRT images do not include any PLC firmware, it only overwrites the kernel and root-fs partitions, and leaves the existing partitions intact.

On the WPA8630P v2, there are 2 flash chips: the 8Mb router flash and the 1Mb dedicated PLC flash. When the PLC starts, it reads the firmware from its dedicated flash, and runs independently of the router.

The 8Mb router flash also contains a copy of the PLC firmware that comes with the stock firmware upgrade files. During an upgrade, this is "uploaded" by the stock firmware code from the router flash over the internal network to the PLC, which stores it in its own flash. After that point, the PLC is running independently.

AFAIK the COVR-P2500 AFAIK doesn't contain dedicated flash for the PLC, and instead loads it remotely over Ethernet every boot from the plchost daemon running on the router.

Edit: Updated/simplified the wiki with the above information

Edit: The answer for Wifi is the same: Yes, the OpenWRT regional images do not include any region specific WiFi or PLC details link.

Only the partition table addresses are region specific, otherwise the images are the same. So you can use any image that has the same partition layout. For US FW Ver 2.0.1, it has the same layout as the AU, DE, CA models (tplink_tl-wpa8630p-v2-int image). For US FW Ver 2.0.2, it has the different unsupported layout.


What firmware version do you have?

If you follow the instructions in , it should guide you to the right file. If you want, you can doublecheck the suggested file here first.

What firmware version do you have?

Fortunately it looks like I have 2.0.1 Build 20171011 Rel.33916 so with your patched builds I should be in business — thanks much!

My understanding is that once I install your 2020 Oct 12 release, I should be able to then update individual packages manually (i.e. recent security patches etc.) as well as of course install LuCi all via ssh?

And I guess more of a curiosity since I lucked into a compatible model, but shouldn't it be theoretically possible to convert the troublesome alternate layout by replacing the bootloader itself with the older one? Just a matter of poor ROI, or is there something baked into the SoC itself that also relies on the different layout?

Ah, I think this answers my question about supporting the newer layout. Sounds like no particular technical blocker, more just a matter of all the details then? E.g. making the more compatible bootloader available (copyright issues? or at least working out the correct uboot build), actually adjusting the partitions and downgrading a live system (field testing an intermediate firmware that can do the job), and of course detecting/automating/documenting it sufficiently so it Just Works™ for casuals like me… plus all the grant-writing ahead of time for those lucrative lucrative sponsorship dollars? :laughing:

Yes, you can install packages. kmods might not install cleanly as the daily snapshot kernel is rebuilt every day and they will have incompatible signatures. Unfortunately on this unit there is very little memory left (with the default partition scheme), and upgrading packages fills up the overlay partition, so I'd avoid upgrading things if you can.

Once you are running the tplink_tl-wpa8630p-v2-int build from my repo, you can actually sysupgrade to the official tplink_tl-wpa8630p-v2-int builds as they are practically identical, then you will be fully running the unmodified official software. The extra SupportList patch is just needed to get past the initial TP-Link firmware upgrade.

However I'd stick with that tested image from my github repo until the next stable OpenWRT release, unless you really need to upgrade. I've been meaning to test and refresh it, but my test unit is in another country until I can get another here. One issue we found with the daily dev snapshot images is that on rare occasions they can break booting (e.g. 1/50 days?). Its a problem for this unit in particular as there is no known way of recovering it without opening it up and using a flash programmer or serial cable. Happened to a few people on the forums, so we put a few warnings in the wiki (along with the existing warnings:).

Once it enters the stable release, using the default images or ImageBuilder should be safe(r) :slight_smile:

Yeah seems straightforward. I wrote a shell script before Christmas that uses available firmware to make a "universal" image to fully convert the flash into the AU partition layout. But when I tried it, it bricked my unit so I still need to test it more :smiley: . I'll upload it to github at some point.

Dear All,

I have a tl-wpa8360 V2 (this is sold in a kit and it lacks the power socket) It's a EU version.
I wondered if openwrt would run on it but it got already bricked before I ever got started.
The firmware on the unit dated 2017 and from the TP-Link website there was a newer version from 2019 so I wanted to upgrade to that version first. I checked the model, version and all and flashed the unit from the web interface. It ran 100% and then it got bricked as in: Powerline function still works but it never came online again. All leds stay off. Yesterday I opened the unit and try to read the contents of the flashchip (a GD25Q64) but whatever I try it won't read back.It detects the chip but reading always times out. I suspect the flash chip has gone faulty.
From what I read is that the powerline runs seperatly from the wifi as it has it's own flash. This is correct. The unit does have another (smaller) flash chip.
Is there anyone that perhaps owns the same model and can provide me with a full flash dump. Then I would replace the chip and hopefully get the unit back to work. I'm sorry if it looks like I'm trying to hijack this topic but I really have no other leads. Information on this unit is almost non existent.Again I'm sorry but I hope someone can help.

Best regards,


Did this happen with just an upgrade using the official TP-Link firmware, and no custom/OpenWRT firmware involved? Unfortunate. I can send you a copy of the original flash for WPA8630P(EU) v2.0 that you can try if you can't find another from someone else.

I was able to read/write the flash using a Raspberry Pi and an SOIC-8 clip, with the router board isolated (i.e. separated from the power board):

$ flashrom -p linux_spi:dev=/dev/spidev0.0 -r WPA8630_v2_stock.rom
flashrom v1.2 on Linux 4.19.97-v7+ (armv7l)
flashrom is free software, get the source code at

Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Using default 2000kHz clock. Use 'spispeed' parameter to override.
Found GigaDevice flash chip "GD25Q64(B)" (8192 kB, SPI) on linux_spi.
Reading flash... done.

FYI, as you've probably seen from here, the 2019 firmware isn't supported for that unit.

Thank you for your quick reply! Indeed this happened with a regular update (official one from the TP-Link website) I checked the model number, type number, version number and performed the upgrade from within the webinterface. It completed to 100% but after that the unit never came back online. I waited for 15 minutes before unplugging it and replugging it but the lights (except for power, powerline) never came on.
I did try to read out the flash chip by soldering wires (don't have a clip yet) directly to the GD25Q64 with a raspberry (board was indeed seperated from the power,powerline PCB) and flashrom does detect the chip but it never reads the flash. It always throws some error like: ioctl time out error. I later read that perhaps other parts might get powered by the 3.3v and then interfere. Holding down the reset button might solve this. I didn't have the chance to try this as I removed the wires already before I found the reset-trick I'm awaitng one of these cheap USB flashers ch341 with a clip for another try.Before I had luck though in the past with the same raspberry reading a bios chip from an HP laptop so it surely should work.

My plan is as follows:

1.Try to read the flash with the new usb reader + clip , with or without reset button pressed
if then it still doesnt'work.
2. Remove the flash chip with a hot air station (I've been practicing with this on old HDD pcb's) and if that goes well then try to read the chip again. If then again it fails I can probably safely assume the flash chip has gone bad which I suspec tas a regular official firmware upgrade already bricked the device.
3. replace flash chip and hopefully it will boot with the firmware from a WPA8360P dump .That would be great!

Hi Edo, I sent you a copy of the firmware.

Shouldn't need anything as drastic as soldering or removing the chip, unless its actually damaged as you suspect. What worked for me and others was just safely separating the router board from the powerboard, then using an SOIC-8 Pomona clip (worth every penny) + Raspberry Pi + flashrom v1.2+. I'll follow up with you over PM to let this thread be resolved.

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