Qualcomm Atheros based homeplugs

All my homeplugs are from TP-Link and are based on Qualcomm Atheros chipsets. I recently had the need to upgrade the firmware on some of the older models.

Figuring there must be someway to do this under Linux, a bit of searching eventually led to this repository

Sure enough, that worked a treat.

Once the repository is cloned and the *numerous* utilities are built we can do things like.

$ sudo plc/plctool -i enp3s0 -r
enp3s0 00:B0:52:00:00:01 Request Version Information
enp3s0 98:DE:D0:94:13:34 QCA7420 MAC-QCA7420-
$ sudo plc/plctool -i enp3s0 -I
        PIB 0-0 8836 bytes
        MAC 98:DE:D0:94:13:34
        DAK D9:0D:87:B6:7E:BF:84:F2:E1:5A:87:C1:8A:6A:3A:EF
        NMK 4C:77:57:1C:31:7E:E4:D0:49:55:8F:69:5F:DA:A9:EC
        NID 74:C9:BD:8E:18:B4:05
        NET Qualcomm Atheros Enabled Network
        MFG Qualcomm Atheros HomePlug AV Device
        USR tpver_401091_160311_906
        CCo Auto
        MDU N/A
plctool is for newer models with an Atheros 7420 chipset. For my older homeplugs, which are INT6400 based I needed to use the int6k utility. Once I'd downloaded and unpacked the updated firmware it was a simple matter of
$ sudo plc/int6k -i enp3s0 -P /tmp/tp/PIB/INT6400-WallAdapter-TP-LINK-CE-ClassB.pib -N /tmp/tp/Firmware/int6000-v4.4.0-0-5-X-FINAL.nvm -F
To update the firmware using plctool
$ sudo plc/plctool -i enp3s0 -P /tmp/QCA7420-WallAdapter-HomePlugAV_CE-ClassB.pib -N /tmp/MAC-7420-v1.3.0-00-CS.nvm -R local
There is extensive documentation in the docbook/ directory. Start with index.html.