What's new

Tutorial Setup the ASUS TUF Gaming AX5400 router for Transmission with remote access using an SSD for storage

  • 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!


New Around Here
Hi Everyone,

I post this tutorial because I found the infos regarding the subject too scattered on the net. Some of the info is not even out there or not easy to find at all.
I hope you will find this helpful.
Feel free to comment if there is anyhing important to add.

In order to succcesfully set up the router and SSD for Transmission remote you need to have the followings as minimum:
  • You have to have Public IP Address
  • Router should be in PPoE mode

My setup:
Router: ASUS TUF Gaming AX5400 (router)
Firmware: GNUton’s ASUS Merlin, Release: 388.1_0-gnuton1, TUF-AX5400_388.1_0-gnuton1_tuf_puresqubi.w 48.6 MB
Storage connected to the USB 3.0 of the router:
SSD Patriot P210 512GB
SSD rack:
Gembird E2-U3S-6 USB3.1 Enclosure Aluminum with USB Type-C Black
(I have tried the AXAGON EE25-XA6 ALINE but the reading/writing was stopped after 200MB.
ref.: https://www.snbforums.com/threads/b...ning-qbittorrent-on-an-ssd.82538/#post-819874)

Prepare the SSD:
Make two partition:
(I have used: AOMEI Partition Assistant Standard 9.13.0,
1. type: ext4, label:e4, size: 9GB,
2. type: ntfs, label:nt, size: the rest of the SSD
Format them.
Connect the SSD to the router.

Router settings:
Administration -> System tab
Format JFFS partition at next boot: Yes
Enable JFFS custom scripts and conscripts: Yes
Enable SSH: LAN & WAN
SSH Port: 22
Click on Apply
WAN -> DDNS tab
Enable the DDNS Client: Yes
Server: www.asus.com,
Host Name: unique_name_not_used
Click on Register
Free Certificate from Let’s Encrypt: Yes
Click on Apply
Reboot the router (small gray gear icon in the top right corner next to the USB icon)

SSH to the router:
Use PuTTY to ssh to the router (https://www.putty.org/)
Create connection:
Saved Sessions: tuf,
Host Name (or IP address): unique_name_not_used.asuscomm.com,
Connection type: SSH
Click Save and then Connect button (nex time you can Load this settings)
(username and password is the one you created to access the router settings menu)

Install Entware:
Make sure we have the required partitions mounted:
ls /tmp/mnt
There should be two folders: e4 and nt
Choose a team with colors you can see clearly i.e.: 8
Create a swap file:
i -> sw -> follow instruction to create 2GB swap file on the e4 partition
Install Entware:
i -> ep -> follow instructions to install Entware

Setup Transmission:
Create the required directories on nt partition:
Make the required directories, torrent download directory, incomplete directory, watch directory:
mkdir /tmp/mnt/nt/tr
mkdir /tmp/mnt/nt/tr/0i
mkdir /tmp/mnt/nt/tr/0w
Install nano the text editor:
opkg install nano
Install Transmission packages:
opkg install transmission-web transmission-daemon-openssl transmission-remote-openssl
Stop transmission to avoid rewriting conf. file:
/opt/etc/init.d/S88transmission stop
Edit conf. file:
nano -w /opt/etc/transmission/settings.json
(if it doesn’t work with -w then leave this option out, ref.: https://www.nano-editor.org/dist/latest/nano.html)
adjust the followings:
"download-dir": "/tmp/mnt/nt/tr",
"incomplete-dir": "/tmp/mnt/nt/tr/0i",
"peer-port": 51413,
"rpc-authentication-required": true,
"rpc-enabled": true,
"rpc-username": "admin",
"rpc-password": "yourpassword",
"rpc-port": 9091,
"watch-dir": "/tmp/mnt/nt/tr/0w",
(Your password will be hashed the first time Transmission runs, so make sure you note it somewhere for yourself.)
Ctrl+o -> enter -> Ctrl+x
Create init-start script for some memory tweaks:
nano /jffs/scripts/init-start
Copy & Paste the following four lines(ctrl+c and in the PuTTY terminal right mouse click):
echo 524288 > /proc/sys/net/core/rmem_max
echo 524288 > /proc/sys/net/core/wmem_max
echo 8192 > /proc/sys/vm/min_free_kbytes
Ctrl+o -> enter -> Ctrl+x
Make the script executable:
chmod a+rx /jffs/scripts/*
Make Transmission accessible from WAN i.e. from other networks (Create firewall script on the /jffs partition to open the 9091 and 51413 port):
nano /jffs/scripts/firewall-start
Copy & Paste the following four lines(ctrl+c and in the PuTTY terminal right mouse click):
iptables -I INPUT -p tcp --destination-port 9091 -j ACCEPT
iptables -I INPUT -p tcp --destination-port 51413 -j ACCEPT
iptables -I INPUT -p udp --destination-port 51413 -j ACCEPT
Ctrl+o -> enter -> Ctrl+x
Make the script executable:
chmod a+rx /jffs/scripts/*
Apply the firewall rules:
sh /jffs/scripts/firewall-start

Using Transmission:
To start Transmission:
/opt/etc/init.d/S88transmission start

Access the web GUI from internet browser:
http://<Your device IP or your DDNS created above>:9091/
(i.e. http://unique_name_not_used.asuscomm.com:9091/)

Android app:
There are several apps, I use Transmission Remote (by Yury Polek)

Trouble shooting options:
Try to install Download Master and remove it before installing Entware.
If something went wrong but no clue and surely followed the instruction above try to format the /jffs partition from the router
(Administration -> System tab, Format JFFS partition at next boot: Yes) and start from there.

useful links:
  1. https://hqt.ro/transmission-on-asuswrt-routers-through-entware/
  2. https://github.com/Entware/Entware/wiki/Using-Transmission
  3. https://g6.hu/2021/01/04/a-tokeletes-asus-router-asuswrt-merlin-entware-nextcloud-egyeni-szkriptek/


Occasional Visitor
thanks for your tutorial, very detail 😁


Occasional Visitor
update for your tutorial
" transmission-daemon-openssl transmission-remote-openssl "
now entware rename it
transmission-daemon transmission-remote

Sign Up For SNBForums Daily Digest

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