The short version: Can anyone tell me if there's a good way to get my WR810N switched from dd-wrt to OpenWrt?
So I've been using OpenWrt since the good ol' wrt54gl days. I have a couple of TL-WR810N (US) devices that are almost useless to me with the factory firmware but their specs are decent enough that I decided to try to put OpenWrt on them tonight. However, although I found .bin files for it in the download section, they wouldn't install because the WR810N is locked by default to prevent 3rd party firmware. I found that someone at dd-wrt had figured a way to make a dd-wrt image that looked like an authorized image so I installed that thinking it would get me past the lockout, and that I could then just flash to OpenWrt from dd-wrt. Sure enough, dd-wrt installed fine, but I can't seem to get OpenWrt to take from the web flash. I've never used dd-wrt before tonight, and I know OpenWrt well enough that I'd rather not run dd-wrt on these if I don't have to, I already don't like dd-wrt from what little I've seen of it tonight. So, long story short, can anyone tell me if there's a good way to get my WR810Ns switched over to OpenWrt?
v2 may be dicey these days for much more than basic routing and wireless, since it only has 32 MB of RAM.
Would you be able to log into the DD-WRT command line and post the output of cat /proc/mtd and the section of dmesg that shows how its flash is formatted.
From a different device, it might look something like
Thinking is that if the partition scheme is compatible (and DD-WRT didn't change the boot loader in a strange way), use the proper low-level tool to write an OpenWrt image to the flash.
Edit: Being very clear, this is thinking, not direction to blindly flash an image at this point!
Yes, I was thinking exactly the same thing but the OpenWrt wiki doesn't specifically show the US version MTD layout so I wasn't confident to jump to a brute-force mtd next.
However, I found this similar issue and the layout the openwrt user showed there is essentially the same, and they succeeded by overwriting the dd-wrt linux partition with the appropriate openwrt-factory. I really wouldn't be too sad if it bricked, and I'd still have one left, so I decided it was worth the risk to try the same thing, and voila, my wr810n-v1 is now running 18.06.2, end results shown below.
No "complaints" about problems with not finding the ART data?
For the ath79 version, qca9531_tplink_tl-wr810n-v1.dts includes qca953x_tplink_tl-wr810n.dtsi without modifying the partition layout. (This may not apply to the ar71xx version that would be present in 18.06 and 19.07 and hasn't yet been removed from master)
Agreed, here's what I think is relevant from each boot, let me know if there's something else you'd like to see that you think would be helpful to contribute.
[ 0.831961] 5 tp-link partitions found on MTD device spi0.0
[ 0.837759] Creating 5 MTD partitions on "spi0.0":
[ 0.842712] 0x000000000000-0x000000020000 : "u-boot"
[ 0.850211] 0x000000020000-0x000000170438 : "kernel"
[ 0.857967] 0x000000170438-0x0000007f0000 : "rootfs"
[ 0.864998] mtd: device 2 (rootfs) set to be root filesystem
[ 0.870990] 1 squashfs-split partitions found on MTD device rootfs
[ 0.877399] 0x0000003c0000-0x0000007f0000 : "rootfs_data"
[ 0.885582] 0x0000007f0000-0x000000800000 : "art"
[ 0.893058] 0x000000020000-0x0000007f0000 : "firmware"
Now that I have openwrt installed, of course, for future updates. But I don't think using dd-wrt's sysupgrade (if they even have a similar script) to install an openwrt image would've been appropriate or safe, if it worked at all. mtd seemed the best tool under the circumstances and, indeed, it did the trick perfectly.