What do you recommend for 2.4 Wi-Fi, 3 devices SQM and price <= 150 €?

Hi everyone.
First time poster here, I'm looking for a good OpenWrt router for 150 € max.
The following is the use case scenario.

A friend of mine has a 30/10 Mbps Internet connection, which he uses via Wi-Fi only. I've noticed that, even if his download speed is three times mine, the general responsiveness of web browsing and video streaming is inferior. According to DSLReports' speed test, his Wi-Fi gets a F grade in bufferbloat, whereas mine is mostly an A. I use a Turris Omnia, set up to reduce bufferbloat following OpenWrt SQM guide. An Omnia would be too expensive for my friend, moreover his needs are quite modest: 2 or 3 devices, via Wi-Fi only, on the same LAN.

In conclusion, I need a good OpenWrt router for 2.4 GHz Wi-Fi, suitable for SQM with simultaneously 3 devices max.
What do you suggest?

Edit: bonus points for OpenWrt ease of installation.

A / V DSL connection ?

Connection type is DSL.

Give him yours

  • Friend gives you Bonus Points.
  • Friend cuts out middleman OpenWrt suggestions.
  • Friend has known good SQM settings achievable.
  • Friend is Future Proofed.
  • Friend wont need you administering his new gear.
  • You save money by saving time wading through all the biased hype.
1 Like

This could perhaps be an option, if you're in UK, don't know how well it does SQM though.

Not very well. A BT HomeHub 5A was definitely overtaxed when trying on my 50/10 VDSL2 link, when I tried PPPoE, firewall/NAT, dual band WiFi and SQM. 30/10 might work, but that seems too close to the limits to be a decent solution...

That said, as bridged VDSL2-modem under OpenWrt the same HH5A works fine delivering speeds around 100/36 Mbps.

For 30/10 however an old netgear wndr3800 should still be sufficient (maybe even a wndr3700v2) these are 10 years old so might be cheap on ebay.... But these will reach their sqm-limit at around 70-80 Mbps combined up- and download.

as long as you setup SQM it worked ok. i think i also used irqbalance too. its been a while. I was on 40/10 setup

Found my script. (copied relevant bits below)

# === Set up the WAN (eth0) interface ==================
# Default is DHCP
# From http://wiki.openwrt.org/doc/howto/internet.connection

uci delete network.atm
uci delete network.dsl
uci delete network.wan

uci set network.globals.packet_steering='1' #Use every cpu to handle packet traffic

uci set network.dsl=dsl
uci set network.dsl.annex='b'
uci set network.dsl.xfer_mode='ptm'
uci set network.dsl.line_mode='vdsl'
uci set network.dsl.ds_snr_offset='0'
uci set network.dsl.tone='a'

uci set network.lan.igmp_snooping='1'

uci set network.wan=interface
uci set network.wan.device='dsl0.101'
uci set network.wan.proto='dhcp'
uci set network.wan.mtu='1500'
uci set network.wan.ipv6='1'
#uci set network.wan.peerdns='0'

# uci set network.wan.username=$DSLUSERNAME
# uci set network.wan.password=$DSLPASSWORD
uci commit network
ifup wan
echo 'Waiting for link to initialize'
sleep 20

# === Update the software packages =============
# Download and update all the interesting packages
# Some of these are pre-installed, but there is no harm in
# updating/installing them a second time.
 echo 'Updating software packages'
 opkg update                # retrieve updated packages
 opkg install luci          # install the web GUI
 opkg install luci-app-sqm  # install the SQM modules to get fq_codel etc
 opkg install bind-tools	#dns tools
 opkg install ca-certificates # CA Certs for SSL
 opkg install igmpproxy	#TV igmpproxy

# ==============================
# Set Smart Queue Management (SQM) values for your own network
# Use a speed test (http://dslreports.com/speedtest) to determine 
# the speed of your own network, then set the speeds  accordingly.
# Speeds below are in kbits per second (3000 = 3 megabits/sec)
# For details about setting the SQM for your router, see:
# http://wiki.openwrt.org/doc/howto/sqm
# Set DOWNLOADSPEED, UPLOADSPEED, WANIF and then uncomment 18 lines
 echo 'Setting SQM on '$WANIF ' to ' $DOWNLOADSPEED/$UPLOADSPEED 'kbps down/up'
 uci set sqm.@queue[0].interface=$WANIF
 uci set sqm.@queue[0].enabled=1
 uci set sqm.@queue[0].download=$DOWNLOADSPEED
 uci set sqm.@queue[0].upload=$UPLOADSPEED
 uci set sqm.@queue[0].script='piece_of_cake.qos' # Already the default
 uci set sqm.@queue[0].qdisc='cake'
 #uci set sqm.@queue[0].itarget='auto'
 #uci set sqm.@queue[0].etarget='auto'
 uci set sqm.@queue[0].linklayer='ethernet'
 uci set sqm.@queue[0].overhead='26'
 uci commit sqm
 /etc/init.d/sqm restart
 /etc/init.d/sqm enable

# --- end of script ---

One of the problems is that by default the DSL and the ethernet interrupts all are processed on CPU0 and that hence easily gets out of breath.

Nifty script though.

1 Like

Sadly not mine :stuck_out_tongue:

i reappropated it from richbhannover

ok. i found my notes. so my script does the following. And i wonder if your issues were not from having packet steering on? thus your bottlenecking of CPU0?

Reflash router.

SSH on and copy over config-openwrt.sh

This autosets up and installs router for DSL
Sets the following:

Time Zone
WAN (DSL) link for DHCP - Adds 101 VLAN
Sets Packet Steering to True - Allows both CPUS to be used
Sets igmp_snooping to True - For TV. Also installs igmp service.
install the SQM modules
dns tools
CA Certs for SSL
Update WiFi info for the access point

Once complete you need to reboot.

I include this for completeness but i think i settled for static SQM and just kept an eye on it.

https://openwrt.ebilan.co.uk/viewtopic.php?t=1170 Script to re-calculate optimal BW for QoS after re-connects

Just putting this out there in case anyone else is trying to solve the same problem. I use this script in

/etc/hotplug.d/iface and name it


(only the leading bit of the name matters). This runs after an interface comes up - the WANDEVICE variable is set to the external interface - I use VDSL so it is set to dsl1.101 here - for ADSL you would set it to the name of the ptm device instead (relies on the sqm-* packages).

After a re-connect it will re-calculate the optimal bw value for QoS purposes (I assume 90% of the connection rate), change the relevant config files and then restart QoS on the device - it works well during the training phase - obviously at some point training should end and connection rates shouldn't change.

1 Like

Anything IPQ401*-based will do just fine, keep the modem (especially if it's Broadcom based) and put it in bridge mode. If ISP doesn't allow/support bridge mode you're pretty much out of luck and there will be very little point in getting a new device unless you set it up as transparent box that only handles SQM.

1 Like

That was a while ago, I am not even sure that builds at that time actually exposed both CPU elements, I seem to recall it presenting itself as single-core (but this is highly anecdotal I might simply not have looked deeply enough, I did have a sufficiently performant OPenWrt router* sitting on my desk pre-configured and switched back to using that after a few days of not getting the expected performance out of the HH5A, might have been my fault more than the HH5A's)

*) a netgear wndr3700v2 which worked fine with sqm for 50/10 and all the rest without throttling due to being CPU starved, nice little router, got a lot of 'mileage' out of that one.

That depends a bit on the vintage of the OpenWrt version, there was a time when it excluded the CPU processing CPU, resulting in both SQM instances (obviously only for SQM users) running on CPU1 where, for bidirectionally saturating loads they were overloading the CPU quickly (this policy makes more sense for >2cores).

Again nice script, but only partially useful... my ISP insisted upon syncing my line at ~100/40 and just traffic shape my PPPoE connection to the contracted 50/10 rate, so scraping sync rates from the modem would not have helped, but I can see that it would work well for a number of users with more conservative ISPs.

1 Like

Thanks everyone for your answers.
There are still some details which aren't clear to me, so here's more questions.

@Bill, are you suggesting me to give my friend my Turris Omnia?
I could do that, however I would need to buy another one for me, which would defeat the purpose of this topic, being what good OpenWrt router I should buy for normal/modest domestic use that is cheaper than an Omnia.

@diizzy, I don't know any piece of hardware that is based on IPQ401-*. Would you be so kind to give me a precise model to start with? Thank you very much.

moeller0, Are you the same moeller0 from Turris forum? If that's you, thanks again for helping me with my home network setup.

frollic, Actually connection type is VDSL. The first time I didn't read your question thoroughly, forgive me.

Last but not least, reading your answers made me doubt my intentions: is it reasonable to look for a OpenWrt router with my requirements for less than 150 €? If you think that's the main issue with my question, I will gladly suggest an Omnia to my friend.

My pleasure, and yes, I reused this nick on multiple places including the turris forum (but have not checked whether all moeller0 instances are me :wink: ).

For his/her 30/10 link quite a number of routers will be capable enough. I used a netgear wndr3700v2 (which I would not recommend anymore, 64 MB of ram seems not future proof enough) and think that a wndr3800 (which has 128 MB ram) might still be a decent match if you can find one second hand. I have unfortunately no good grip on modern routers suitable for your friend (using an omnia myself) so can not recommend any currently available device backed by first-hand experience.

Linksys MR8300 and Linksys WHW01 v1 for example
See https://downloads.openwrt.org/snapshots/targets/ipq40xx/generic/

Another option would be https://www.darty.com/nav/achat/informatique/reseau/modem_routeur_wi-fi/totolink_routeur_totolink_gladiator_ac4300_gigabit_sans_fil_tri_bande_avec_port_usb_3_0__MK1892839368.html which is a great deal if you live in .fr (82 EUR)