Dynalink DL-WRX36 Askey RT5010W IPQ8072A technical discussion

It maxed my microSD reader's 150/70 MB/s read/write capacity. Didn't tested with SSD.

2 Likes

~60-70MB/s linear read speed from USB-HDD Toshiba Canvio Advance 4Tb via Samba

1 Like

Over 120MB/s from ext4 WD blue 2.5" hdd

2 Likes

In case anyone want to compare with another IPQ807x device (QNAP QHora-301W) here is my experience.
Writing at 110-115 MB/s with 20-30% CPU load no matter if the filesystem is f2fs, ext4 or exfat on my QNAP QHora-301W with Sandisk USB3 SSD connected to the USB3 port. Probably can write even faster but currently I don't have any wired device faster than 1Gbps.

Mine was on wifi , try that.

Does anyone have optimal cpu affinity settings for cake SQM for this device? I'm testing on 1.4gbps down and 35 Mbps up.

The best I could get was up to 650 Mbps for cake with the following modifications. It puts a lot of load on CPU3. I try to change it so that CPU3 has less load like... Even without SQM I'm having trouble going past 800 Mbps.

  • changing the 'c' to a '4'
  • changing the 'c' to a '7'

And it becomes worst. It's still better than no modifications because with stock openwrt snapshot firmware I only get up to 375 Mbps with cake SQM.

The line that has the most effect seems to be /sys/class/net/wan/queues/rx-0/rps_cpus

Another line also seems to be /proc/irq/55/smp_affinity

echo 1 > /sys/class/net/lan1/queues/rx-0/rps_cpus
echo 2 > /sys/class/net/lan2/queues/rx-0/rps_cpus
echo 4 > /sys/class/net/lan3/queues/rx-0/rps_cpus
echo 8 > /sys/class/net/lan4/queues/rx-0/rps_cpus
echo c > /sys/class/net/wan/queues/rx-0/rps_cpus

echo 1 > /sys/class/net/lan1/queues/tx-0/xps_cpus
echo 2 > /sys/class/net/lan2/queues/tx-0/xps_cpus
echo 4 > /sys/class/net/lan3/queues/tx-0/xps_cpus
echo 8 > /sys/class/net/lan4/queues/tx-0/xps_cpus
echo 3 > /sys/class/net/wan/queues/tx-0/xps_cpus

echo 1 > /proc/irq/66/smp_affinity
echo 2 > /proc/irq/67/smp_affinity
echo 4 > /proc/irq/68/smp_affinity
echo 8 > /proc/irq/69/smp_affinity

echo 1 > /proc/irq/47/smp_affinity
echo 2 > /proc/irq/52/smp_affinity
echo 4 > /proc/irq/55/smp_affinity

In this screenshot I'm testing on LAN2.

1 Like

Changed the 1st part of the installation instruction into tabs, one for ssh install, one for serial install.

Hope it makes stuff more readable.

4 Likes

It rather bothers me that we don't have a way to use both firmware slots on this.

Does anyone have a list of what's been tried or where we think the interface to that system lies?

Or is it functionally impossible without a way to replace the signed U-Boot since we have to use a bootcmd with the partition hardcoded? (I imagine that's the main issue... I saw the alternate set of uboot configs with a manual bootcounter, but I'd be worried about wearing a bad block into the uboot config if I'm unlucky.)

If you think it's possible I can try to look into it.


I was also seeing what feel like a worrying number of people complaining on these forums about Wi-Fi memory leaks and crashing - is this unstable or was that people testing a beta software? The "new" Wi-Fi capabilities are something I don't know much about yet.

I think that's mostly in the "NSS" thread, which is for enabling the network accelerator hardware, which is needed to get speeds over about 800 Mbps. The NSS builds are starting to come together now and becoming a lot more stable.

I think it would be very helpful to add a warning to "option A" that it is incredibly finnicky and only works if the planets are in perfect alignment. Seems to need the right combination of a USB drive that the bootloader "likes" (possibly excludes USB3?), and being formatted exactly "right", which isn't as simple as msdos partition table + fat32, i.e., only works when formatted with the right tool.

In particular, "option B" w/TFTP seems to be the only really dependable option.

Actually, given the number of people having flashed this router, and the small amount of USB drive complaints, I think that the USB approach A works pretty well.

The other option B requires opening the device and attaching a serial connection, and the connector in the router is abnormally small...

5 Likes

if anything we should probably just keep a record of known bad/known good drives

for instance, i can't get it to recognize my samsung fit right now even with a 4gb fat16 partition and nothing else on the drive. No clue why.

okay i guess my custom initramfs was just bad

My Belkin RT3200 with openwrt is dead after a transient hiccup of the electric grid. I purchased the DL-WRX36 from Amazon, finally got Openwrt 23.05.02 installed on it yesterday. Below are a few points IMHO that are worth being mentioned during my installation process.

Part 1:

  1. Copy the initramfs image to a FAT32-formatted flash drive and connect it to device USB port.

Pay attention to the FAT32 format. I used 3 different brands of USB drives all formated under Fedora Linux:

sudo mkfs.vfat -F 32 /dev/sda

DL-WRX36 failed to boot with the initramfs image on all 3 USB flash drives, it just boot into OEM firmware (of course with the admint/askeyt1234 SSH enabled). Formatting the same USB flash drive under windows and copy the initramfs file over. Yep, DL-WRX36 boot into it successfully.

Part 2:

  • WinSCP & scp now defaults to the SFTP protocol, switch to SCP to transfer the factory image over to the router.
  • The default LAN IP of the booted initramfs is 192.168.1.1.
  • If you're unable to connect to 192.168.1.1, the initramfs boot have failed, and the router's still running the Dynalink firmware.

This part is not clear to me, especially in the case of boot failure of initramfs on the USB flash drive. I would it to something like:

  • After reboot of DL-WRX36, make sure that it successfully booted into the initramfs image on the USB drive. If success DL-WRX36 can be pinged at IP address 192.168.1.1, otherwise DL-WRX36 still boot into OEM firmware and can be pinged at IP address 192.168.216.1.
  1. Connect to device using SSH (on a LAN port)

Adding the command line explicitly here will be helpful. Otherwise some users will get confused here with the previous login/password admin/askey1234.

ssh root@192.168.1.1

Password is empty.

Overall, I have no other problems following the installation insturctions.

3 Likes

Hello, and thanks for all the great info and work on this router!

I'm running stable 23.05.2 by following the guide and I've set up the USB recovery options:

fw_setenv bootcmd 'run openwrtusb; run openwrtboot'
fw_setenv openwrtboot 'setenv bootargs console=ttyMSM0,115200n8 ubi.mtd=rootfs rootfstype=squashfs rootwait; ubi part fs; ubi read 0x44000000 kernel; bootm 0x44000000#config@rt5010w-d350-rev0'
fw_setenv openwrtusb 'usb start && fatload usb 0:1 0x44000000 openwrt-ipq807x-generic-dynalink_dl-wrx36-initramfs-uImage.itb && bootm 0x44000000'

Can I use a usb and configure extroot or overlay with these settings with a separate USB drive without the .ubi file on it to increase my system memory?

I am a bit confused at my routers storage overview

I thought this router had 256MB of storage, but I can configure a usb with extroot to expand that if not.

Thanks in advance!

failure to connect to 192.168.1.1 via ssh would imply the same thing ?

not really, since there's a myriad of applications offering ssh connectivity.
and as @hnyman wrote at Dynalink DL-WRX36 Askey RT5010W IPQ8072A technical discussion - #2688 by hnyman, we don't provide a complete A to Z guide, but the device specific actions required for getting openwrt up and running.

this is openwrt default, a well know fact, if you've dealt with openwrt in the past.
"openwrt root password" @ google solves the problem, just as "how to ssh" would.

the boot loader only accepts FAT, and you probably don't want to use FAT for your extroot.

it does, but it doesn't mean all 256MBs are available for openwrt.

1 Like

Right, I was just wondering if the changes done with

fw_setenv bootcmd 'run openwrtusb; run openwrtboot'
fw_setenv openwrtboot 'setenv bootargs console=ttyMSM0,115200n8 ubi.mtd=rootfs rootfstype=squashfs rootwait; ubi part fs; ubi read 0x44000000 kernel; bootm 0x44000000#config@rt5010w-d350-rev0'
fw_setenv openwrtusb 'usb start && fatload usb 0:1 0x44000000 openwrt-ipq807x-generic-dynalink_dl-wrx36-initramfs-uImage.itb && bootm 0x44000000'

would mess with being able to set up extroot.

I went ahead and configured extroot and it worked fine, but i didnt test to see if the failsafe usb still worked.

This is my config for extroot and I did not use fat, let me know if theres anything i could improve, but as I said, it worked fine.

opkg update
opkg install block-mount kmod-fs-f2fs e2fsprogs f2fs-tools parted kmod-usb-storage kmod-usb2 kmod-usb3


// Verify sda is correct drive and edit DISK parameter.

ls -l /sys/block

// Todo: come up with a way to detect usb devices to assign DISK variable automagically.

DISK="/dev/sda"
parted -s ${DISK} -- mklabel gpt mkpart extroot 2048s -2048s
DEVICE="${DISK}1"
mkfs.f2fs -l extroot ${DEVICE}

// Todo: Confirm this entire block can be input at the same time without errors, cause I don't know. Other wise each command separately cause u skerred.

eval $(block info ${DEVICE} | grep -o -e 'UUID="\S*"')
eval $(block info | grep -o -e 'MOUNT="\S*/overlay"')
uci -q delete fstab.extroot
uci set fstab.extroot="mount"
uci set fstab.extroot.uuid="${UUID}"
uci set fstab.extroot.target="${MOUNT}"
uci commit fstab

mount ${DEVICE} /mnt
tar -C ${MOUNT} -cvf - . | tar -C /mnt -xf -

reboot

I dont understand but fair.

nope, those fw_setenv params are for u-boot, not openwrt.

openwrt tries to retain stock fw layout, to make it easier to return to stock, if needed.

it's probably doable, but someone have to make the changes required - Dynalink DL-WRX36 Askey RT5010W IPQ8072A technical discussion - #2694 by frollic

1 Like

Do you know if there a reason why temp space is 434 MiB and disk space is only 70MiB?

/tmp in an OpenWRT device is a ramdisk. I'm not sure how it works but basically that way all sorts of "files" needed for the router to interact with stuff can be accessed but don't have to be written to flash.

Your persistent storage is the 70 MB, which is what's left after the other partitions and OS have eaten much of the nand. Notably, there's another large partition for the backup firmware which we aren't able to use right now... I'm hoping I can somehow contribute to that effort but I'm not sure what the exact issue is.

I do wish the install instructions featured an example command myself, I'm able to figure this stuff out but it's mostly due to using Linux as a main OS and from past experience with OpenWRT. The password being blank is not something I feel most would know, especially since you really need a router with OpenWRT to gain experience with using it...

The "switch WinSCP/SCP to SCP" line is also incredibly confusing... it sounds like it's saying to use SCP (the command) instead of winSCP, rather than a mode. I previously thought SFTP was the protocol used by SCP.
I understand that experts would probably understand this, but that's also no reason not to help out newbies or even those with some experience but one lacking obscure bit of knowledge. (Still not sure which I am, but that's beside the point.)

1 Like