Trendnet TEW-824DRU compatible?

I have a Trendnet TEW824DRU which is essentially the same hardware as TEW823DRU, the latter which is supported by OpenWrt. IIRC, the only difference between the 2 was software. My question is, can the OpenWrt 823DRU build be loaded on 824DRU?


Since you are are FirstPoster, I'm assuming you would have liked to add these links, but couldn't yet:

You could have added: "ath79 Qualcomm Atheros QCA9558 , Qualcomm Atheros QCA9880-BR4A, 16MiB Flash"

1 Like

Regarding whether a cross flash would work, only someone with the device in hand can answer that.

Connect to the serial uart and boot an initramfs from uboot to see what works and what doesn’t

1 Like

Since the router doesn't have much value, I went ahead and flashed 823 openwrt on 824 which no surprise ended up in a softbrick which recovered without issue. After further research, it appears the 824DRU and 823DRU are the same hardware however Trendnet apparently changed order of linux and rootfs in the firmware. Anyone feel like compiling firmware? :wink: Unfortunately I'm not setup nor have time so I'll look at other options. Thank you to everyone for the replies.

Yeah same hardware doesn’t mean same partition layout. That means a new dts and image is needed.

Not really that hard if you want to give it a go

1 Like


I Know it's an old topic but can you elaborate ?
I have one TEW-824DRU with DD-WRT v3.0-r50357 on it and i would like to try OpenWRT.

I have downloaded openwrt-imagebuilder-22.03.1-ath79-generic.Linux-x86_64 and found dts file (openwrt-imagebuilder-22.03.1-ath79-generic.Linux-x86_64/target/linux/ath79/dts/qca9558_trendnet_tew-823dru.dts)

 partitions {
 			compatible = "fixed-partitions";
 			#address-cells = <1>;
 			#size-cells = <1>;
 			partition@0 {
 				label = "u-boot";
 				reg = <0x000000 0x030000>;
 			partition@30000 {
 				label = "nvram";
 				reg = <0x030000 0x010000>;
 			partition@40000 {
 				compatible = "denx,uimage";
 				label = "firmware";
 				reg = <0x040000 0xef0000>;
 			partition@f30000 {
 				label = "lang";
 				reg = <0xf30000 0x030000>;
 			partition@f60000 {
 				label = "my-dlink";
 				reg = <0xf60000 0x080000>;
 			partition@fe0000 {
 				label = "mac";
 				reg = <0xfe0000 0x010000>;
 			art: partition@ff0000 {
 				label = "art";
 				reg = <0xff0000 0x010000>;

On my 824DRU, I know :

strings /dev/mtd0|grep -i u-boot

U-Boot 1.1.4-gaad0206e-dirty (Apr  7 2015 - 18:33:19)
Now running in RAM - U-Boot at: %08lx
Top of RAM usable for U-Boot at: %08lx
Reserving %ldk for U-Boot at: %08lx
U-Boot 1.1.4-gaad0206e-dirty
bootargs=console=ttyS0,115200 root=31:02 rootfstype=jffs2 init=/sbin/init mtdparts=ath-nor0:256k(u-boot),64k(u-boot-env),6336k(rootfs),1408k(uImage),8256k(mib0),64k(ART)
lu=tftp 0x80060000 ${dir}u-boot.bin&&erase 0x9f000000 +$filesize&&cp.b $fileaddr 0x9f000000 $filesize
bootargs=console=ttyS0,115200 root=31:02 rootfstype=jffs2 init=/sbin/init mtdparts=ath-nor0:256k(u-boot),64k(u-boot-env),6336k(rootfs),1408k(uImage),8256k(mib0),64k(ART)
lu=tftp 0x80060000 ${dir}u-boot.bin&&erase 0x9f000000 +$filesize&&cp.b $fileaddr 0x9f000000 $filesize

cat /proc/mtd

 dev:    size   erasesize  name
 mtd0: 00050000 00010000 "RedBoot"
 mtd1: 00f80000 00010000 "linux"
 mtd2: 00dc0000 00010000 "rootfs"
 mtd3: 001c0000 00010000 "ddwrt"
 mtd4: 00010000 00010000 "nvram"
 mtd5: 00010000 00010000 "board_config"
 mtd6: 01000000 00010000 "fullflash"
 mtd7: 00050000 00010000 "fullboot"
 mtd8: 00010000 00010000 "uboot-env"


 scanning for root partition
 <0>[    0.710000] ZCom quirk found
 <0>[    0.720000] ZCom quirk kernel offset 15204352
 <0>[    0.730000] guessed bootloader size = 50000
 <0>[    0.740000] 
 <0>[    0.740000] found squashfs at 50000
 <6>[    0.740000] adjusted length E10000, original length E080D0
 <5>[    0.750000] Creating 9 MTD partitions on "ar7240-nor0":
 <5>[    0.750000] 0x000000000000-0x000000050000 : "RedBoot"
 <5>[    0.760000] 0x000000050000-0x000000fd0000 : "linux"
 <5>[    0.760000] 0x000000050000-0x000000e10000 : "rootfs"
 <5>[    0.770000] mtd: partition "rootfs" set to be root filesystem
 <5>[    0.770000] 0x000000e10000-0x000000fd0000 : "ddwrt"
 <5>[    0.780000] 0x000000fd0000-0x000000fe0000 : "nvram"
 <5>[    0.790000] 0x000000ff0000-0x000001000000 : "board_config"
 <5>[    0.790000] 0x000000000000-0x000001000000 : "fullflash"
 <5>[    0.800000] 0x000000000000-0x000000050000 : "fullboot"
 <5>[    0.800000] 0x000000040000-0x000000050000 : "uboot-env"


rootfs on / type rootfs (rw)
/dev/root on / type squashfs (ro,relatime)
proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
ramfs on /tmp type ramfs (rw,relatime)
none on /dev type tmpfs (rw,relatime,size=512K)
devpts on /dev/pts type devpts (rw,relatime,mode=600)

df -T

Filesystem           Type       1K-blocks      Used Available Use% Mounted on
rootfs               rootfs         14080     14080         0 100% /
/dev/root            squashfs       14080     14080         0 100% /

df -H

Filesystem                Size      Used Available Use% Mounted on
rootfs                   13.8M     13.8M         0 100% /
/dev/root                13.8M     13.8M         0 100% /

What should I do now, is it enough to change values in dts file ?

Sure, you can use the partition values from your dmesg to edit the dts and create a test initramfs image.

Start by just editing the 823 dts and compiling if it works then put the effort into building the supporting file to create a particular target for your device

Don’t flash anything until you are certain the initramfs image works and the partition table is correct.

Thanks for your reply.

It's not so easy because I Think TrendNet TEW-824DRU don't have tftp client or server.
WebUI look the only way to load (flash) firmware...


You would load the initramfs from uboot, via the serial / uart interface.

Uboot has a tftp client built in.

Without serial you cannot build and test firmware