Support for D-Link COVR-P2500

Ok, answering my question, at least a manual workaround for this factory image is getting into the failsave mode by pressing reset button during boot, then login and issue a

umount /overlay; jffs2reset && reboot now

So, question to all: would you prefer a factory image going from 1.0 and a one-off factory image to be used when running original fw 1.0.1 ?
Or the other way round, standard factory image requires a 1.0.1 firmware (so possibly upgrading oem firmware first), and a one-off factory image to start from 1.0 when the step via 1.0.1 is impossible or deemed to much hassle?

For me version 1.0 is OK.
Unfortunately, I can't upgrade my router to version 1.0.1. Probably through hardware version HW:A1.

Ok, at least the image signing and encryption is working for 1.0.1 .

I think I leave the 1.0 as factory, and one can build a 1.0.1 factory from sysupgrade with a little perl script, and I'll prepare one for download.

I'll publish some links to test images in an hour or so...

Please find a factory image for flashing from the 1.0.0 firmware at openwrt-18.06-snapshot-r7704-9ee8c8daf4-ar71xx-generic-covr-p2500-squashfs-factory.bin and for the 1.0.1 firmware at openwrt-18.06-snapshot-r7704-9ee8c8daf4-ar71xx-generic-covr-p2500-squashfs-factory101.bin .

Please note the necessary jffs2reset described earlier or at http://www.netadair.de/openwrt/

(Manual) PLC booting works as well ...

export PLC=eth0.2
root@OpenWrt:/tmp/x# plchost -N /lib/plc/MAC-7500-v2.2.2-03-X-CS.nvm -P /lib/plc/COVRP2500AVA1_PIB100EU_WM.pib
eth0.2 00:B0:52:00:00:01 Write /lib/plc/MAC-7500-v2.2.2-03-X-CS.nvm (1) (00000040:32064)
eth0.2 00:B0:52:00:00:01 Start /lib/plc/MAC-7500-v2.2.2-03-X-CS.nvm (1) (000000C0)
eth0.2 00:B0:52:00:00:01 Write /lib/plc/COVRP2500AVA1_PIB100EU_WM.pib (1) (00400000:22344)
eth0.2 00:B0:52:00:00:01 Write /lib/plc/MAC-7500-v2.2.2-03-X-CS.nvm (4) (005639F8:484064)
eth0.2 00:B0:52:00:00:01 Start /lib/plc/MAC-7500-v2.2.2-03-X-CS.nvm (4) (00563DE8)
eth0.2 00:0C:43:28:80:2A MAC-QCA7550-2.2.2.1316-03-20161216-CS is running
^C
root@OpenWrt:/tmp/x# plctool -I 00:B0:52:00:00:01
        PIB 0-0 21384 bytes
        MAC 00:0C:43:28:80:2A
        DAK 68:9F:07:4B:8B:02:75:A2:71:0B:0B:57:79:AD:16:30 (HomePlugAV)
        NMK 50:D3:E4:93:3F:85:5B:70:40:78:4D:F8:15:AA:8D:B7 (HomePlugAV)
        NID B0:F2:E6:95:66:6B:03
        NET Qualcomm Atheros Enabled Network
        MFG Qualcomm Atheros HomePlug AV Device
        USR COVRP2500A1_PIB100EU_WM_AV2
        CCo Auto
        MDU N/A

And automatic bootstrapping of the PLC adapter is also working, needs a little extra package though:

cd /tmp
wget http://www.netadair.de/openwrt/public_scripts/covr-p2500-plc.tar.gz
tar xvzf covr-p2500-plc.tar.gz
cd covr-p2500-plc
./get_firmware.sh
./install.sh

then check /etc/config/plc and enable the plc, and /etc/init.d/plchost restart

Hi,
is this workig well? (any screenshots?)
PLC?
Could I try?

Works for me. Upgrading is a bit of a hassle, as I found no way to remove the native's version configuration when flashing, so the multi-step approach is necessary.
However, in one of four devices, the flashing resulted in an endless boot-loop. Three other devices worked fine.
I will need to find this sort-of bricked device (put it somewhere without sticker ...) so see what the problem was.

Here are two screenshots. Please note this the state before my PLC package was installed, so still a separate network with only the PLC adapter connected to internally. (port 4 goes vlan 2), to prevent the boot strap get confused with other adapters on the same network after power outage.


Hi! I installed everything as described on your website, but the PLC adapter doesn't work. I think some configurations are wrong, because it looks exactly like your screenshot and this is before you installed the PLC package.

I have a similar firmware locked into the Breed uboot science?. Could anyone get me an idea to either upgrade firmware or destroy that Breed Science uboot science? btw, why is that breed uboot called a science?

BusyBox v1.19.4 (2015-12-22 09:52:33 CST) built-in shell (ash)
Enter 'help' for a list of built-in commands.

     MM           NM                    MMMMMMM          M       M
   $MMMMM        MMMMM                MMMMMMMMMMM      MMM     MMM
  MMMMMMMM     MM MMMMM.              MMMMM:MMMMMM:   MMMM   MMMMM
MMMM= MMMMMM  MMM   MMMM       MMMMM   MMMM  MMMMMM   MMMM  MMMMM'
MMMM=  MMMMM MMMM    MM       MMMMM    MMMM    MMMM   MMMMNMMMMM
MMMM=   MMMM  MMMMM          MMMMM     MMMM    MMMM   MMMMMMMM
MMMM=   MMMM   MMMMMM       MMMMM      MMMM    MMMM   MMMMMMMMM
MMMM=   MMMM     MMMMM,    NMMMMMMMM   MMMM    MMMM   MMMMMMMMMMM
MMMM=   MMMM      MMMMMM   MMMMMMMM    MMMM    MMMM   MMMM  MMMMMM
MMMM=   MMMM   MM    MMMM    MMMM      MMMM    MMMM   MMMM    MMMM
MMMM$ ,MMMMM  MMMMM  MMMM    MMM       MMMM   MMMMM   MMMM    MMMM
  MMMMMMM:      MMMMMMM     M         MMMMMMMMMMMM  MMMMMMM MMMMMMM
    MMMMMM       MMMMN     M           MMMMMMMMM      MMMM    MMMM
     MMMM          M                    MMMMMMM        M       M
       M
 ---------------------------------------------------------------
   For those about to rock... (QCA9558.LN, unknown)
 ---------------------------------------------------------------
root@OpenWrt:~# logread
Jan 12 01:37:07 OpenWrt kern.warn kernel: [    0.110000] registering PCI controller with io_map_base unset
Jan 12 01:37:07 OpenWrt kern.err kernel: [    0.120000] ar71xx: invalid MDIO id 1
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.530000] bio: create slab <bio-0> at 0
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.540000] PCI host bridge to bus 0000:00
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.540000] pci_bus 0000:00: root bus resource [mem 0x10000000-0x11ffffff]
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.550000] pci_bus 0000:00: root bus resource [io  0x0000]
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.550000] Switching to clocksource MIPS
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.560000] NET: Registered protocol family 2
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.560000] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.570000] TCP established hash table entries: 2048 (order: 2, 16384 bytes)
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.580000] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.580000] TCP: Hash tables configured (established 2048 bind 2048)
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.590000] TCP reno registered
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.590000] UDP hash table entries: 256 (order: 0, 4096 bytes)
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.600000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.610000] NET: Registered protocol family 1
Jan 12 01:37:07 OpenWrt kern.debug kernel: [    0.610000] PCI: CLS 0 bytes, default 32
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.630000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.640000] JFFS2 version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.650000] msgmni has been set to 119
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.650000] io scheduler noop registered
Jan 12 01:37:07 OpenWrt kern.info kernel: [    0.650000] io scheduler deadline registered (default)
Jan 12 01:37:07 OpenWrt kern.info kernel: [   32.190000] Copyright (c) 2005-2009 Atheros Communications, Inc. All Rights Reserved
Jan 12 01:37:07 OpenWrt kern.info kernel: [   32.200000] SPECTRAL module built on Jun  1 2016 10:01:02
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   32.290000] ath_tx99: Version 2.0
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   32.290000] Copyright (c) 2010 Atheros Communications, Inc, All Rights Reserved
Jan 12 01:37:07 OpenWrt kern.info kernel: [   32.490000] ath_dev: Copyright (c) 2001-2007 Atheros Communications, Inc, All Rights Reserved
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.230000] __ath_attach: Set global_scn[0]
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.230000] *** All the minfree values should be <= ATH_TXBUF-32, otherwise default value will be used instead ***
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.250000] ACBKMinfree = 48
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.250000] ACBEMinfree = 32
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.250000] ACVIMinfree = 16
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.250000] ACVOMinfree = 0
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.260000] CABMinfree = 48
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.260000] UAPSDMinfree = 0
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.260000] ATH_TXBUF=540
Jan 12 01:37:07 OpenWrt kern.info kernel: [   34.270000] Enterprise mode: 0x03fc0000
Jan 12 01:37:07 OpenWrt kern.info kernel: [   34.280000] Restoring Cal data from DRAM
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.280000] SPECTRAL : get_capability not registered
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.290000] HAL_CAP_PHYDIAG : Capable
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.290000] SPECTRAL : Need to fix the capablity check for RADAR (spectral_attach : 231)
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.300000] SPECTRAL : get_capability not registered
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.310000] HAL_CAP_RADAR   : Capable
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.310000] SPECTRAL : Need to fix the capablity check for SPECTRAL
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.310000]  (spectral_attach : 236)
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.320000] SPECTRAL : get_capability not registered
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.330000] HAL_CAP_SPECTRAL_SCAN : Capable
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.330000] SPECTRAL : get_tsf64 not registered
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.340000] spectral_init_netlink 52 NULL SKB
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.340000] SPECTRAL : No ADVANCED SPECTRAL SUPPORT
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.340000] SPECTRAL :----- module attached
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.350000] Green-AP : Green-AP : Attached
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.350000] 
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.360000] ath_get_caps[6147] rx chainmask mismatch actual 3 sc_chainmak 0
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.370000] ath_get_caps[6122] tx chainmask mismatch actual 3 sc_chainmak 0
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.380000] ath_attach_dfs[12621] dfsdomain 1
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.390000] SPECTRAL : module already attached
Jan 12 01:37:07 OpenWrt kern.info kernel: [   34.400000] osif_wrap_attach:280 osif wrap attached
Jan 12 01:37:07 OpenWrt kern.info kernel: [   34.400000] osif_wrap_devt_init:900 osif wrap dev table init done
Jan 12 01:37:07 OpenWrt kern.warn kernel: [   34.410000] ath_tx_paprd_init sc 83090000 PAPRD disabled in HAL
Jan 12 01:37:07 OpenWrt kern.info kernel: [   34.420000] wifi0: Atheros ???: mem=0xb8100000, irq=47
Jan 12 01:37:07 OpenWrt kern.info kernel: [   34.430000] ath_pci: 10.2.3.31 (Atheros/multi-bss)
Jan 12 01:37:07 OpenWrt kern.info kernel: [   34.510000] bonding: Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
Jan 12 01:37:07 OpenWrt kern.info kernel: [   34.780000] ip_tables: (C) 2000-2006 Netfilter Core Team
Jan 12 01:37:07 OpenWrt kern.info kernel: [   34.950000] NET: Registered protocol family 24
Jan 12 01:37:07 OpenWrt kern.info kernel: [   35.000000] nf_conntrack version 0.5.0 (960 buckets, 3840 max)
Jan 12 01:37:10 OpenWrt kern.info kernel: [   40.890000] device eth1 entered promiscuous mode
Jan 12 01:37:10 OpenWrt daemon.notice netifd: Interface 'lan' is now up
Jan 12 01:37:10 OpenWrt daemon.notice netifd: Interface 'loopback' is now up
Jan 12 01:37:10 OpenWrt daemon.notice netifd: wan (1054): udhcpc (v1.19.4) started
Jan 12 01:37:10 OpenWrt kern.info kernel: [   41.490000] eth1: link up (1000Mbps/Full duplex)
Jan 12 01:37:10 OpenWrt kern.info kernel: [   41.490000] br-lan: port 1(eth1) entered forwarding state
Jan 12 01:37:10 OpenWrt kern.info kernel: [   41.500000] br-lan: port 1(eth1) entered forwarding state
Jan 12 01:37:10 OpenWrt daemon.notice netifd: wan (1054): Sending discover...
Jan 12 01:37:11 OpenWrt kern.info kernel: [   41.980000] eth0: link up (100Mbps/Full duplex)
Jan 12 01:37:11 OpenWrt user.notice ifup: Enabling Router Solicitations on lan (br-lan)
Jan 12 01:37:12 OpenWrt kern.info kernel: [   43.500000] br-lan: port 1(eth1) entered forwarding state
Jan 12 01:37:14 OpenWrt daemon.notice netifd: wan (1054): Sending discover...
Jan 12 01:37:14 OpenWrt daemon.notice netifd: wan (1054): Sending select for 192.168.31.188...
Jan 12 01:37:14 OpenWrt daemon.notice netifd: wan (1054): Lease of 192.168.31.188 obtained, lease time 216000
Jan 12 01:37:14 OpenWrt user.notice ifup: Enabling Router Solicitations on loopback (lo)
Jan 12 01:37:14 OpenWrt daemon.notice netifd: Interface 'wan' is now up
Jan 12 01:37:15 OpenWrt user.notice ifup: Allowing Router Advertisements on wan (eth0)
Jan 12 01:37:15 OpenWrt kern.info kernel: [   46.200000] osif_wrap_devt_detach:255 osif wrap dev table detached
Jan 12 01:37:15 OpenWrt kern.info kernel: [   46.210000] osif_wrap_detach:312 osif wrap detached
Jan 12 01:37:15 OpenWrt kern.warn kernel: [   46.230000] SPECTRAL : Module removed (spectral = 83882000)
Jan 12 01:37:15 OpenWrt kern.warn kernel: [   46.230000] Green-AP : Green-AP : Detached
Jan 12 01:37:15 OpenWrt kern.warn kernel: [   46.230000] 
Jan 12 01:37:15 OpenWrt kern.warn kernel: [   46.270000] Removing athdebug proc file
Jan 12 01:37:15 OpenWrt kern.info kernel: [   46.280000] ath_dev: driver unloaded
Jan 12 01:37:15 OpenWrt kern.warn kernel: [   46.290000] ath_tx99: driver unloaded
Jan 12 01:37:15 OpenWrt kern.info kernel: [   46.300000] ath_spectral: driver unloaded
Jan 12 01:37:15 OpenWrt kern.info kernel: [   46.330000] ath_dfs: driver unloaded
Jan 12 01:37:15 OpenWrt kern.info kernel: [   46.360000] ath_rate_atheros: driver unloaded
Jan 12 01:37:15 OpenWrt kern.info kernel: [   46.370000] ath_hal: driver unloaded
Jan 12 01:37:16 OpenWrt user.info sysinit: phy for wifi device wifi0 not found
Jan 12 01:37:16 OpenWrt user.info sysinit: wifi0(qcawifi): disable failed
Jan 12 01:37:16 OpenWrt kern.warn kernel: [   46.870000] ****Address of trace_timer :832ba590 
Jan 12 01:37:16 OpenWrt kern.info kernel: [   46.950000] ath_hal: 0.9.17.1 (AR5416, AR9380, REGOPS_FUNC, WRITE_EEPROM, TX_DATA_SWAP, RX_DATA_SWAP, 11D)
Jan 12 01:37:16 OpenWrt kern.info kernel: [   47.000000] ath_rate_atheros: Copyright (c) 2001-2005 Atheros Communications, Inc, All Rights Reserved
Jan 12 01:37:16 OpenWrt kern.info kernel: [   47.030000] ath_dfs: Version 2.0.0
Jan 12 01:37:16 OpenWrt kern.info kernel: [   47.030000] Copyright (c) 2005-2006 Atheros Communications, Inc. All Rights Reserved
Jan 12 01:37:16 OpenWrt kern.info kernel: [   47.070000] ath_spectral: Version 2.0.0
Jan 12 01:37:16 OpenWrt kern.info kernel: [   47.070000] Copyright (c) 2005-2009 Atheros Communications, Inc. All Rights Reserved
Jan 12 01:37:16 OpenWrt kern.info kernel: [   47.080000] SPECTRAL module built on Jun  1 2016 10:01:02
Jan 12 01:37:16 OpenWrt kern.warn kernel: [   47.110000] ath_tx99: Version 2.0
Jan 12 01:37:16 OpenWrt kern.warn kernel: [   47.110000] Copyright (c) 2010 Atheros Communications, Inc, All Rights Reserved
Jan 12 01:37:16 OpenWrt kern.info kernel: [   47.170000] ath_dev: Copyright (c) 2001-2007 Atheros Communications, Inc, All Rights Reserved
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   47.410000] __ath_attach: Set global_scn[0]
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   47.420000] *** All the minfree values should be <= ATH_TXBUF-32, otherwise default value will be used instead ***
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   47.430000] ACBKMinfree = 48
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   47.430000] ACBEMinfree = 32
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   47.430000] ACVIMinfree = 16
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   47.440000] ACVOMinfree = 0
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   47.440000] CABMinfree = 48
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   47.440000] UAPSDMinfree = 0
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   47.450000] ATH_TXBUF=540
Jan 12 01:37:17 OpenWrt kern.info kernel: [   47.460000] Enterprise mode: 0x03fc0000
Jan 12 01:37:17 OpenWrt kern.info kernel: [   47.460000] Restoring Cal data from DRAM
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   47.910000] wlan_vap_create : enter. devhandle=0x832c0380, opmode=IEEE80211_M_HOSTAP, flags=0x1
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   47.920000] wlan_vap_create : exit. devhandle=0x832c0380, opmode=IEEE80211_M_HOSTAP, flags=0x1.
Jan 12 01:37:17 OpenWrt kern.err kernel: [   47.930000] VAP device ath0 created osifp: (823d2b80) os_if: (83334000)
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   48.170000] Set freq vap stop send + 83334000
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   48.170000] Set freq vap stop send -83334000
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   48.300000] Set wait done --83334000
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   48.430000]  
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   48.430000]  DES SSID SET= 
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   48.450000]  
Jan 12 01:37:17 OpenWrt kern.warn kernel: [   48.450000]  DES SSID SET=OpenWrt_9531_2.4G_2770 
Jan 12 01:37:18 OpenWrt kern.info kernel: [   48.700000] 8021q: adding VLAN 0 to HW filter on device ath0
Jan 12 01:37:19 OpenWrt kern.info kernel: [   49.960000] device ath0 entered promiscuous mode
Jan 12 01:37:19 OpenWrt kern.info kernel: [   49.960000] br-lan: port 2(ath0) entered forwarding state
Jan 12 01:37:19 OpenWrt kern.info kernel: [   49.970000] br-lan: port 2(ath0) entered forwarding state
Jan 12 01:37:20 OpenWrt user.info sysinit: Loading defaults
Jan 12 01:37:20 OpenWrt user.info sysinit: Loading synflood protection
Jan 12 01:37:20 OpenWrt user.info sysinit: Adding custom chains
Jan 12 01:37:21 OpenWrt user.info sysinit: Loading zones
Jan 12 01:37:21 OpenWrt kern.info kernel: [   51.970000] br-lan: port 2(ath0) entered forwarding state
Jan 12 01:37:22 OpenWrt user.info sysinit: Loading forwardings
Jan 12 01:37:22 OpenWrt user.info sysinit: Loading rules
Jan 12 01:37:22 OpenWrt user.info sysinit: Loading redirects
Jan 12 01:37:22 OpenWrt user.info sysinit: Loading includes
Jan 12 01:37:22 OpenWrt user.info sysinit: Optimizing conntrack
Jan 12 01:37:22 OpenWrt user.info sysinit: Loading interfaces
Jan 12 01:37:22 OpenWrt user.info firewall: adding lan (br-lan) to zone lan
Jan 12 01:37:22 OpenWrt user.info firewall: adding wan (eth0) to zone wan
Jan 12 01:37:23 OpenWrt user.info sysinit: /etc/rc.common: line 85: /usr/lib/qos/generate.sh: not found
Jan 12 01:37:26 OpenWrt user.notice dnsmasq: DNS rebinding protection is active, will discard upstream RFC1918 responses!
Jan 12 01:37:26 OpenWrt user.notice dnsmasq: Allowing 127.0.0.0/8 responses
Jan 12 01:37:30 OpenWrt daemon.info dnsmasq[1811]: started, version 2.62 cachesize 150
Jan 12 01:37:30 OpenWrt daemon.info dnsmasq[1811]: compile time options: IPv6 GNU-getopt no-DBus no-i18n no-IDN DHCP no-DHCPv6 no-Lua TFTP no-conntrack
Jan 12 01:37:30 OpenWrt daemon.info dnsmasq-dhcp[1811]: DHCP, IP range 192.168.1.100 -- 192.168.1.249, lease time 12h
Jan 12 01:37:30 OpenWrt daemon.info dnsmasq[1811]: using local addresses only for domain lan
Jan 12 01:37:30 OpenWrt daemon.info dnsmasq[1811]: reading /tmp/resolv.conf.auto
Jan 12 01:37:30 OpenWrt daemon.info dnsmasq[1811]: using nameserver 192.168.31.1#53
Jan 12 01:37:30 OpenWrt daemon.info dnsmasq[1811]: using local addresses only for domain lan
Jan 12 01:37:30 OpenWrt daemon.info dnsmasq[1811]: read /etc/hosts - 1 addresses
Jan 12 01:37:30 OpenWrt daemon.info dnsmasq-dhcp[1811]: read /etc/ethers - 0 addresses
Jan 12 01:37:30 OpenWrt user.info sysinit: cp: can't stat '/etc/quagga/*': No such file or directory
Jan 12 01:37:30 OpenWrt user.info sysinit: /etc/rc.common: line 1: /usr/sbin/quagga.init: not found
Jan 12 01:37:30 OpenWrt user.info sysinit: setting up led sys
Jan 12 01:37:30 OpenWrt user.info sysinit: setting up led wan
Jan 12 01:37:30 OpenWrt user.info sysinit: service: file '/usr/sbin/mcproxy' is not executable
Jan 12 01:37:34 OpenWrt daemon.info dnsmasq-dhcp[1811]: DHCPDISCOVER(br-lan) 192.168.1.233 00:0e:c6:ad:84:f3 
Jan 12 01:37:34 OpenWrt daemon.info dnsmasq-dhcp[1811]: DHCPOFFER(br-lan) 192.168.1.233 00:0e:c6:ad:84:f3 
Jan 12 01:37:34 OpenWrt daemon.info dnsmasq-dhcp[1811]: DHCPREQUEST(br-lan) 192.168.1.233 00:0e:c6:ad:84:f3 

dev: size erasesize name
mtd0: 00040000 00010000 "u-boot"
mtd1: 00010000 00010000 "u-boot-env"
mtd2: 00630000 00010000 "rootfs"
mtd3: 001d0000 00010000 "rootfs_data"
mtd4: 00170000 00010000 "kernel"
mtd5: 00010000 00010000 "art"
mtd6: 00790000 00010000 "firmware"

Hello Christian, did you solved the issue with PLC adapter not working?

I've been able to install both the squash image and the additional PLC package but, while Wi-Fi radios and up-link to my router for Internet access do work fine, none of the COVR-P2500 can talk each others via Powerline... Also all of the LEDs works quite fine, but the PLC LED that doesn't turn ON whatever setting I configure for it. Very frustrating, indeed.

Hope to get some clue here from you guys, being a noob with OpenWRT.

Thank you in advance!

Unfortunately not, maybe we should contact him via email.

Hello, I'm interested too to make tests.

Anyone managed to get it open in the 1st place ?

Would love to connect to the serial port on this thing.

There are 4 screws at the bottom, but even when removed I
still can't get it open, unless I go for excessive force, which
I'd like to avoid :confused:

Replying to myself ....

I got it to work, but there are a couple of issues with netadairs instructions.

1st off, you need to have the COVR node beeing converted, capable of accessing internet.

Assuming internet works, and before continuing with the post processing scripts,
you need to install two libraries required by unsquashfs.

in cli run:

opkg update
opkg install liblzma zlib

after that, the unsquashfs (executed in get_firmware.sh) will work w/o errors.

The second issue is the /etc/init.d/plchost script.

it checks the value of plc.config.Enabled, which for me was 0, always.

0 however means it won't execute the plc commands in /etc/init.d/plchost.

To fix this you have two options, either set the value of the
plc.config.Enabled to 1, or modify the script. I picked the 1st option

check the current value (should be 0):
uci get plc.config.Enabled

modify and save:
uci set plc.config.Enabled=1
uci commit

verify (should be 1 now)
uci get plc.config.Enabled

when the init script is run now, the output will be as in

I don't know what or who sets the specific uci value, so this is a dirty
workaround.

Finally, the plchost script didn't want to run for me during startup, so
I added it to the system->startup->local startup by adding

sleep 3
/etc/init.d/plchost restart
exit 0 <--- is already there

after that the units were able to communicate, and clients on the "far side"
could access the network and internet.
Ran a speedtest, and got approx 270Mbs in both directions, but the COVRs
were next to each other during the test.

Didn't play around with wifi, but I'd assume it works too :wink:

Here's the LED configuration.
If you don't mind having the power LED in orange, you can skip the 1st entry
in the LED config. If you want to have it in green, you also have to add

echo default-on > /sys/class/leds/covr_p2500:orange_power/trigger
echo none > /sys/class/leds/covr_p2500:orange_power/trigger

before the sleep 3 line, in the local start up script.

With the Default state unchecked for the WiFi LEDs, will make them stay off
as long as there's no traffic, if you want them to stay on and blink, check the box.

I checked if there would be a new firmwares for the PLC chip in the units,
and found several threads covering the QCA75XX and QCA7550 on Google

One of them was https://community.tp-link.com/us/home/forum/topic/204234 ,
where post #26 had a link to a dropbox containing lots of PLC FWs.

The one netadair extracts in get_firmware.sh is rubbish (at least for me),
it's not very stable, and I manually have to reestablish the PLC connection
after every reboot.
I grabbed the most recent I could find for EU (check the QCA75XX folder) from
the dropbox, which was PA8030P_V3_EU_2.7.pib & .nvm. and replaced
(or modify the /etc/init.d/plchost script) the ones in /lib/plc with the DLed files.

The performance is the same, but the units connect directly after reboot
without requiring manual steps.Can't say anything about stablility just yet :slight_smile:

Finally, a big thank you to netadair for doing the research, and compiling
OpenWRT for the COVRs.

1 Like

@netadair would you mind sharing the code for what you have found for this device so far? I couldn't find anything on your website or github.

I also have a few of these, waiting to see OpenWRT support one day... :slightly_smiling_face:

Regarding the PLC firmware, there should probably be a generic one for each chip in some public repository in the long term, similar to wireless firmware.

Assuming QCA would release these under an appropriate licence for this purpose, does anyone happen to know how this works e.g. for ath10k firmwares in legal terms, i.e. did qca explicitly publish their binaries for use with open source licenses?

I don't think they did, I think it's been extracted from FWs of misc PLC devices.

If you look at the specs, the COVRr seems to be similar to the TL-WPA8630P v2, which is supported
by OpenWRT, same CPU and PLC.

Problem is, if the flash fails, you'd need to rescue it using uboot via serial console (unless there's TFTP built into the uboot), that's why I asked if someone actually managed to open one of these devices.

EDIT
Found these in the FCC ID database


The four white rings on the PCB on pg 9 are probably the serial connector.
Top pics also shows the unit disassembled,and gives us a hint on how to get it open,

After removing the four screws, the rear cover (with the AC plug) cannot be removed completely, since the plug is soldered to the pcb (there is also another screw fixing it to the pcb).

So just remove the front cover, this takes a bit of force as the wireless pcb is screwed to the isnide of the cover; also there is a two-row pcb connector at the top of the case (above the covr logo) so the upper part should be pulled off rather carefully, as perpendicular as possible to avoid damaging the connector.

Maybe I'll find some time to have a closer look at this device next week. :slightly_smiling_face:
i.e. re-doing most of the efforts netadair solved already, but which are quite useless without the code (I remember we've had this discussion here before; that sharing binary images only is technically just as much of a GPL violation as a vendor who would not release their sources...)

OK,

if force is what's required, then I should be able to do it :wink:

Since netadair posted images for both the COVR and the WPA8630Pv2, I could imagine they're quite similar.
I'm considering flashing one of my units with OpenWRTs WPA8630Pv2 image, and see if it comes back up :slight_smile:

No guts, no glory ....