What's new

cake-autorate: adding support for Asus Merlin

  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

This seems pretty promising on my T-Mobile Internet.

I appreciate trying to bring this asuswrt-merlin firmware.
 
Last edited:
Would you or anyone else be able to test I wonder?

I use my T-Mobile Internet as a backup.

How would I go about installing this? Would I have to temporarily make THMI as primary and directly hook-up my Asus router to it?
 
Yes, ideally. I think you'd just enable CAKE on the Asus Merlin router.

Make sure these are installed: entware; bash; iputils-ping; and fping.

And then run:
Code:
wget https://raw.githubusercontent.com/lynxthecat/cake-autorate/master/setup.sh
chmod +x ./setup.sh
./setup.sh

And then edit the config file to specify the correct interfaces:
Code:
dl_if=ifb4eth0 # download interface
ul_if=eth0     # upload interface

and bandwidths (change according to your connection specifics):
Code:
min_dl_shaper_rate_kbps=5000   # minimum bandwidth for download (Kbit/s)
base_dl_shaper_rate_kbps=60000 # steady state bandwidth for download (Kbit/s)
max_dl_shaper_rate_kbps=100000 # maximum bandwidth for download (Kbit/s)

min_ul_shaper_rate_kbps=20000  # minimum bandwidth for upload (Kbit/s)
base_ul_shaper_rate_kbps=30000 # steady state bandwidth for upload (KBit/s)
max_ul_shaper_rate_kbps=35000  # maximum bandwidth for upload (Kbit/s)

And also enable logging:
Code:
output_summary_stats=1    # enable (1) or disable (0) output monitoring lines showing summary stats

And then try running manually:
Code:
./cake-autorate.sh
 
Last edited:
@Lynx github is wanting a device verification for me to login, but im not getting the email.. So ill post to here for now.
setup.sh needs the shebang to point to /opt/bin/bash, asuswrt sh is not showing any output with printf in the script
The script then says jsonfilter and uclient-fetch are needed. uclient-fetch is not available on asuswrt. Edit: Looks like github has issues today according to there status, when its back fine, ill update to rany
 
Last edited:
For those reading it looks like good progress is getting made towards making an installer for cake-autorate on Asus Merlin. So users with variable rate connections like 4G/5G/DOCSIS/cable can enjoy the benefit of cake with the bandwidth correctly set on the fly.

This would be a significantly superior alternative to either fudging using a fixed bandwidth (sacrificing bandwidth or letting through too much bufferbloat) or using AutoBW using spdMerlin (which relies on periodic speed tests with cake switched off to set the bandwidth), since with cake-autorate bandwidth is adjusted at sub-second intervals whilst cake is running using only ICMPs (so no unnecessary saturating of the connection when cake is turned off).

Some light configuration is probably needed for an optimum experience.

If you use cake-autorate I only have one ask: that you create a GitHub account if you don't already have one and star the repository: https://github.com/lynxthecat/cake-autorate.
 
Yes, ideally. I think you'd just enable CAKE on the Asus Merlin router.

Make sure these are installed: entware; bash; iputils-ping; and fping.

And then run:
Code:
wget https://raw.githubusercontent.com/lynxthecat/cake-autorate/master/setup.sh
chmod +x ./setup.sh
./setup.sh

And then edit the config file to specify the correct interfaces:
Code:
dl_if=ifb4eth0 # download interface
ul_if=eth0     # upload interface

and bandwidths (change according to your connection specifics):
Code:
min_dl_shaper_rate_kbps=5000   # minimum bandwidth for download (Kbit/s)
base_dl_shaper_rate_kbps=60000 # steady state bandwidth for download (Kbit/s)
max_dl_shaper_rate_kbps=100000 # maximum bandwidth for download (Kbit/s)

min_ul_shaper_rate_kbps=20000  # minimum bandwidth for upload (Kbit/s)
base_ul_shaper_rate_kbps=30000 # steady state bandwidth for upload (KBit/s)
max_ul_shaper_rate_kbps=35000  # maximum bandwidth for upload (Kbit/s)

And also enable logging:
Code:
output_summary_stats=1    # enable (1) or disable (0) output monitoring lines showing summary stats

And then try running manually:
Code:
./cake-autorate.sh
Should I leave the bandwidth setting on automatic or manual?
 
In the Asus Merlin GUI? In which case, 'manual' most likely. I'm not sure what 'automatic' does in the GUI? Can anyone explain that?
Captura de ecrã 2024-04-24, às 13.39.51.png
 
Hmm. That won't help us move the needle in terms of getting the installer on the main code base to work for Asus Merlin routers.

@rlj2 can you perhaps help us out in terms of what's missing? I think it's worthwhile trying to strike while the iron is hot in terms of adding support for Asus Merlin.
 
Can you show the full output with error message please?
I can redo the installation, if it helps… And send you the error I am getting...

Later, I am out of my place at this moment...
 
I can redo the installation, if it helps… And send you the error I am getting...

Later, I am out of my place at this moment...
I also would request the command to clean the installation, so I can repeat without needing the format anything
 
Hmm. That won't help us move the needle in terms of getting the installer on the main code base to work for Asus Merlin routers.

@rlj2 can you perhaps help us out in terms of what's missing? I think it's worthwhile trying to strike while the iron is hot in terms of adding support for Asus Merlin.
@Lynx Im not sure what the autolog rotate error could be. When me and Rany was working on this on IRC, Most was figured out, he was making a entware init.d script to install. Then he went quiet.
 
I also would request the command to clean the installation, so I can repeat without needing the format anything
@rlj2 can advise there concerning his fork. It'll be very simple.

The installer we're working on for the main code has an associated uninstaller with code to handle the Asus Merlin instance.


We really should get any issues with the main code base installer sorted out to ensure Asus Merlin users can all benefit from this code.
 

Similar threads

Latest threads

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top