If there are actually different firmware blobs (rather than country configurations) for e.g. US and EU, this might still be an issue as these devices use band plans to avoid ham and professional radio frequencies.
Do you happen to have an rtl-sdr DVB-T dongle or similar to verify both firmwares have the same spectrum of emissions? Would be curious to compare these, maybe higher speed was only reached by less notch filtering
Since LEDE 17.01 and the ar71xx target are outdated, this device really should be ported to ath79 master.
I would appreciate if @netadair could share some information on how to create a signed factory-flashable image, however the current kernel also grew too big for the current oem mtd layout, so the dts needs to be changed to use okli loader, i.e. move the kernel image to the rootfs partition, and put a kernel loader image to the kernel partition.
I've done this for COVR-C1200 already and it's probably the same here. Maybe I'll find some time after the holidays to continue working on this device.
Regarding the TP-Link PLC firmware mentioned earlier, I just found that the German Federal Network Agency actually banned the older series of TP-Link WPA-8630 devices, due to emissions exceeding the allowed levels.
Unfortunately, they did not specify whether it was about PLC or Wifi, but maybe this could be related to the PLC firmware not correctly notching out certain bands (e.g. the range from 28-30 MHz), thus reaching higher throughput than e.g. the D-Link firmware !?
But then again, this stuff should be in the .pib files, not in the .nvm.
Besides, I'm making some progress with this device and ath79 @netadair helped me out with the code for signing the factory firmware but the code is not ready for publication yet...
The current state is, that there's a pull request for the COVR-C1200, which is basically identical in terms of hardware and factory image, except for the PLC - I started with that one to make the PR less complex, so that COVR-P2500 could be added later based on that:
Currently, I'm trying to refactor the factory image generation tool to fit both COVR and EXO (ramips) devices, i.e. produce images that are accepted by the OEM Web Updater. Overall, this may take a few more weeks / months / ... for the PR to be merged, but I will probably start releasing v21 images for both devices before that happens
Since further devices were introduced in the meantime, that are also built by SGE and use different RSA keys, the tool should be refactored to allow a more flexible choice of keys. Besides, I'm still not sure whether this would have any chance of being merged at all, considering DIR-842 crypto has been open for almost two years.
Meanwhile, the firmware-utils package was removed from the OpenWrt repository into a separate project, so this needs some refactoring and sending a patch to the mailing list, then updating the OpenWrt counterpart to match the incremented release version of firmware-utils.
Considering how quickly new devices are showing up on the market, that use similar but yet slightly different ways of generating factory images, I will not continue to maintain this as a C program (I only did initially since there is not pycrypto / pycryptodome available on the buildbots), when using Python would not only cut the development efforts to a fraction of those compared with C, but also provide way better code readability / maintainability.
I guess I will have to look into using the Image Generator, to provide a collection of images using the same kernel as the official ones, as to allow installation of modules.
Is anyone aware of using a static kernel with the toolchain, to avoid merging all patches into Image Generator?
OpenWrt switched to the Candelatech firmware for ath10k long ago, which is considered way more stable, especially for these Wave 2 chips.
Usually, this firmware would be complemented with the corresponding kmod-ath10k-ct driver, but I'm not sure whether you can install that via opkg on older snapshot builds.
Great to see that it also works stable with just the firmware
Here's 2 examples based on ImageBuilder demonstrating:
Patching something from firmware-utils
Compiling the profiles DTS
Rebuilding the image
All using the official kernel and Makefile recipes, and using Github to build and host the images.
I found it easiest to maintain the changes as a commit on a copy of the regular openwrt.git, then use git format-patch to make the patch file and save in the repos above. A benefit of this is that the patch will be compatible with upstream, to make it easier for someone to upstream or fork them later.
Iâve deployed the 2.10.0.0032 nvm too. Thanks for testing. Did you connect manually or by simple connect button?
Does anyone have detailed info about the plc config options?
Iâm struggling connecting 2 devices over PLC. They wonât connect after configuration. Which option(s) to i have to set with which value(s)? My second device stops enabling Plc with error failed adding plc to br-lan⊠any idea how to fix this?
config config 'config'
option Countrycode 'EU' => should be identical on both device, i guess
option Network 'lan' => should be identical on both device, i guess
option Mac '28:3b:82:85:22:ac' => must be unique
option NmkSelected 'false' => donât know, whats this?
option NetworkPasswd 'NETWORKPASS' => should be identical on both device, i guess. Any rules about the characters/syntax, like âConvert homePlugAV to Hex-String, colon-separatedâ or something else? In default config, it looks like a serial-# (xxxx-xxxx-xxxx-xxxx)
option Dek 'WHAT-IS-DEK' => what is that? In default config, it looks like a serial-# (xxxx-xxxx-xxxx-xxxx). unique or different between the device configs?
option Dak 'Some_Device_Access_Key' => according to âAN2 How to customize the QCA7000 via open-plc-utilsâ-manual by I2SE should this be unique. Is there a dependency to the other option values?
option AdapterName 'Adapter1â => should be different on both device, i guess
option Enabled '1' => should be identical set to 1 on both device, i guess :D
I created ImageBuilder configuration to build OpenWrt v21.03.2 for D-Link COVR-P2500. Prebuilt images are available on project's releases and README.md contains install instructions.
*sysupgrade.bin is not compatible with OpenWrt 18.06 so release has *sysupgrade-openwrt1806.bin that can be used to upgrade from OpenWrt 18.06 (sysupgrade -n -F *sysupgrade-openwrt1806.bin). I was unable to flash images using recovery mode so only way to recover after flashing wrong image is using serial and tftp.
Image has custom plc service with interactive setup (/etc/init.d/plc setup). Setup extracts required files from orignal firmware and asks for settings (region and network password)