(I've already spent 62h trying to gather as much info I can as possible on this)
I understand from extensive reading of the OpenWrt pages & OpenWrt forum,
that this TP-Link device has many variations of
=> TL-WPA8630P vs TL-WPA8630 (the P = extra power socket)
=> Ver1.X vs Ver2.X (the X can be any number 0 to 9)
=> UK/EU vs DE vs AU vs US (various country versions)
with each combination of variations having "mismatching partition table/layout"
Hence am terrified of bricking my "TL-WPA8630P (EU/UK) Ver1.0",
can someone pls point me to the correct full installation of OpenWrt Firmware
[if it doesn't exist, can someone who also has a "TL-WPA8630P (EU/UK)
Ver1.0" pls make one, pls test the Firmware file on your device first, thanks]
Pls inform on as to how you frankensteined together this new Firmware
file & how it should be installed onto a "TL-WPA8630P (EU/UK) Ver1.0"
[the reason being that the Firmware file would be made different in each case]
Boot device at maximum log level and check the SoC type, RAM and flash (mtd/ubi) sizes vs supported device.
Also provide link to a page where you would load OEM firmware upgrades (preferably both -P and non-P devices)
Support for this device will need to be finished by people with access to this device and who can test the patches, are able to open it up and reflash the SOIC-8 CHIP with a backup they took earlier in case anything fails. I recommend you don't try yourself unless you are willing to go through all the trouble, these devices are a pain to un-brick and there are a few threads on the forum of people stuck with bricked units.
define Device/tplink_tl-wpa8630p-v2
$(Device/tplink-safeloader)
SOC := qca9563
DEVICE_MODEL := TL-WPA8630P
IMAGE_SIZE := 6016k
DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
DEVICE_COMPAT_VERSION := 2.0
DEVICE_COMPAT_MESSAGE := The flash erase blocksize has changed to 4k from the 64k in previous versions, \
so the JFFS2 settings partition MUST be reformatted to avoid data corruption. \
Backup your settings before upgrading, then during sysupgrade, \
de-select "Keep settings" and select "Force" to continue (equivilant to "sysupgrade -n -F").
DEFAULT := n
endef
This can also be seen in the OEM firmware files. V1 has no tplink-safeloader partition scheme:
$ grep -ao "partition .*$" TL-WPA8630P\(EU\)_V2_240207/wpa8630pv2_eu-up-ver2-0-6-P1-20240207-rel64435-APPLC.bin
partition factory-uboot base 0x00000 size 0x20000
partition fs-uboot base 0x20000 size 0x20000
partition os-image base 0x40000 size 0x100000
partition file-system base 0x140000 size 0x4e0000
partition partition-table base 0x620000 size 0x02000
partition default-mac base 0x630000 size 0x00020
partition pin base 0x630100 size 0x00020
partition device-id base 0x630200 size 0x00030
partition product-info base 0x631100 size 0x01000
partition extra-para base 0x632100 size 0x01000
partition soft-version base 0x640000 size 0x01000
partition support-list base 0x641000 size 0x01000
partition profile base 0x642000 size 0x08000
partition user-config base 0x650000 size 0x10000
partition default-config base 0x660000 size 0x10000
partition default-nvm base 0x670000 size 0xc0000
partition default-pib base 0x730000 size 0x40000
partition radio base 0x7f0000 size 0x10000
I don't have this device so don't know all the details, but AFAIK what earlier threads mentioned was all that is really needed to compile the existing WPA8630 v1 Makefile entry to support WPA8630P v1 is to change TPLINK_HWID in the target Makefile then rebuild. (Or refactor into 2 entries inheriting from a common, with each only specifying the new TPLINK_HWID). If you search around the forums you might find other people who have built it already, and they might be able to provide you a build.
Context of my limited linux skill for the below reply
=> Ubuntu (basic Command-Line)
=> sudo apt-get update
=> sudo apt-get upgrade
=> sudo apt-get install
=> kinda confused by "git"
(openwrt.org/docs/guide-developer/toolchain/use-buildsystem#build_system_usage)
Is this the general way to "build" a ".bin" file that can be installed by uploading into the OEM firmware's update-firmware page?
[How do I specify the hardware model "TL-WPA8630 Ver1" that I want to build for?
It only shows how to build for specific "OpenWrt Ver", but not the specific hardware model]
Is it under "make menuconfig"? What are these "./scripts/feeds"?
(How would you "build" your own ".bin" file at home? step-by-step pls)
If above is the general way to "build" a ".bin" file,
then how do I go about changing the "makefile" that you refer to?
(as in literally text-edit the ".mk" file that has the entry of "tplink_tl-wpa8630-v1" & save?
where is this ".mk" file?)
[which firmware branch should I be using?
(not sure if this is a correct question, just noticed that...)]
... the "TL-WPA8630 Ver1" uses => downloads.openwrt.org/releases/23.05.5/targets/ath79/generic/XXX.bin <<< OpenWrt Ver = 23.05.5 >>>
but the "makefile" link you point to is at => git.openwrt.org/?p=openwrt/openwrt.git;a=tree;f=target/linux/ath79/image;hb=HEAD <<< OpenWrt Ver = ??? >>>
The change data that is needed, I have found to be:
TL-WPA8630P Ver1 => hardware ID => 0x86310001 <<< TPLINK_HWID := 0x86310001 >>>
TL-WPA8630 Ver1 => hardware ID => 0x86300001 <<< TPLINK_HWID := 0x86300001 >>>
(I also read some people saying that the TP-link OEM firmware's update-firmware page does checks on the ".bin" file that's uploaded, so it needs to be a certain size or format or etc...
Maybe not as simple as changing the "TPLINK_HWID" value)
OMG this learning curve is so steep, 1-week ago I didn't even realise my powerline-device "TL-WPA8630 Ver1" is even a router on the inside, now I have rabbit-holed into so many things, from partition-tables to hardware-registers etc
ouch... my brain hurts... help... lol (I'm not even in basic IT, I'm in Biology, just imagine...)
Its great that you are learning about the OpenWrt Build system, but this really isn't the device to do it on!
Learning about the OpenWrt build system (building stable vs master), making changes to the Makefiles etc and flashing previously unsupported devices will almost certainly lead to you bricking your device at least once. And even if you do everything right, there are some circumstances where stable builds wont work properly. The only way to unbrick these is to open the device (which exposes hazardous mains level voltages), use your SOIC-8 Flash programmer to reflash the backup you prudently took of the chip before you started flashing your own images.
While these integrated Powerline routers are cool, the reason above is why they are terrible devices to experiment with OpenWrt on. If you get it working without issue it will be down to pure luck. You really should use the Forum search and contact someone else who built and tested a working image. There are many many posts of people with bricked devices they can't recover themselves and it really is best to just be patient and find a tested image, and resist the urge to roll the dice!
I don't mean to rain on your parade, its just these devices really are that much of a pain when something goes wrong.