Dlink recovery

I have flashed 2 dlinks specifically dir-3040 and 3060.
Now i got 3rd one and start exact same procedure with exact same os win10 and browser version firefox 10 without success.

Router goes to recovery mode i can access the page choose the firmware but after that its stuck like that forever.

Before i solved that problem by just downloading and using firefox10 but now seems that browser and versions before that doesnt want to work.

Can someone write the os and browser version thats working with these dlinks?

I tried curl too gives that handshake 100 problem.
Updated oem firmware to latest one 1.20 which confirma router itself is working.

Thanks.

What firmware file are you trying to use when you're in recovery mode? And is your 3060 version A1?

For the 3060, you should be using the "factory" image:
https://firmware-selector.openwrt.org/?version=23.05.5&target=ramips%2Fmt7621&id=dlink_dir-3060-a1

On the 3040, you'll use the "Recovery" image:

https://firmware-selector.openwrt.org/?version=24.10.0-rc4&target=ramips%2Fmt7621&id=dlink_dir-3040-a1

I have both firmwares which i installed on previous 3040 and 3060 on my desktop. For 3040 last time i used snapshot release 23.05.03 which failed on this device. Then i used 23.05.05 and tried 24.10 all recovery images of course. I am still puzzled i still have my 3040 running latest rc4 exact same hardware version a1 and i think there isnt any other version available but a1.

I am swapping hdd only for dlink firmware flash as i had problem flushing it thru linux so that hdd is just for dlink oem to openwrt “job”.

Have you tried deleting all cache files in the browser?

860 (and I think i had an 600 before that) recovery had all worked for me in the past flashing via non-virtualized Win 10 and Firefox (no special version used)

and for 2660 and 1960, using non-virtualized Win11 (21h2, 22h2, 23h2 all worked) and Chrome release of the time when flashing.

I never had additional secret sauce.

There were two 2660 releases with different bootloaders, but I the forum mentioned that it would not accept due to a checksum mismatch up until a certain OpenWRT version (22 or so). But there were no words of stalling during flashing.

Win10 installed on separate hdd as running thru vm didnt work for me in the past.

Besides clearing cache i used private mode then downloaded firefox 9 just in case didnt help either.

Flashing via regular oem interface (non recovery one) works but only for oem firmware of course.

There should be some proven setup of os/browser or tools which always works for those dlinks or each time dealing with dlink its like going thru a rabbit hole may take hours may take months to find a solution.

A dedicated page exists: https://openwrt.org/docs/guide-user/installation/recovery_methods/d-link_recovery_gui

There was also two step boot to recovery flash variant:
D-LINK recovery mode (DIR-882 DIR-878 DIR-867) - #4 by dirkomatic.
Other variants did not yet emerge.

Feedback of users that had solved additional issues would be needed to improve the page. There is no single community user that owns all device variants with the D Link recovery GUI.

Sadly D-Link has a lot of devices and several bootloader/chechsum variants.
30x0 support is rather new. Maybe 30x0 have another boot loader variant that has not yet been seen. On 2660 two different checksum variants eventually got solved by updates in the factory bin file.

you probably tried all known options. Since you had successfully flashed 2 identical devices, layer 8 causes are rather unlikely.

You could additionally check, if an older OEM release is available and can be applied as downgrade (D-Link occasionally has downgrade barriers), maybe an older release brings a more favorable recovery.

Here is my last attempt in ubuntu via curl forcing it to use http1.0. After waiting 10 minutes I`m still on OEM firmware.

curl -v -i --http1.0 -F "firmware=@dir-3040.bin" http://192.168.0.1
*   Trying 192.168.0.1:80...
* Connected to 192.168.0.1 (192.168.0.1) port 80
> POST / HTTP/1.0
> Host: 192.168.0.1
> User-Agent: curl/8.5.0
> Accept: */*
> Content-Length: 9699548
> Content-Type: multipart/form-data; boundary=------------------------DcrJvEQnX7kq2LNb3VxDYE
> 
* We are completely uploaded and fine
* HTTP 1.0, assume close after body
< HTTP/1.0 200 OK
HTTP/1.0 200 OK
< Content-type: text/html
Content-type: text/html

< 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><style type='text/css'>.warning{margin:50px 0;color:red;font-size:22px}</style></head><script type="text/javascript">var percent=1;var Timer;function uiOnload(){Timer=setTimeout("upStatus()",2200);}window.onload = uiOnload;function upStatus(){percent++;if(percent > 100){clearTimeout(Timer);document.getElementById('wait').style.display = 'none';document.getElementById('result').style.display = '';return;    }document.getElementById('time').innerHTML = 'Device is upgrading the firmware...' + percent + '%';      Timer = setTimeout('upStatus()',2200);}window.onload = uiOnload;</script><body><center><div><center style='margin:50px 0;color:blue;font-size:24px'>D-Link Router Recovery Mode</center></div><div id=wait><center style='margin:50px 0;font-size:15px'><span id=time>Device is upgrading the firmware... 1%</span></center></div><div id=result style=disp* Closing connection
lay:none><center class=warning><span>Upgrade successfully!</span></center></div><hr/><div><center class=warning>WARNING!!</center></div></center><ul><li style='margin:50px 0 10px;font-size:14px'>Do not interrupt the update process,as it may demage the device</li></ul><hr/></body></html>

You must use real windows, "vm's won't work"
you can run in Private browsing mode "stops caching problems on repeated attempts"
this always works on Windows 10 with Firefox

I am not running vm i have dedicated hard drive with win10 and firefox 10 which was working perfectly for this purpose. What version of firefox are u using? I even downloaded all bin files from your server in DIR-3040-A1 directory and same problem.

I just redid my DIR-1960-A1 as a test and it just worked
I'm using "Windows 10 IoT Enterprise LTSC 21H2" with Firefox "133.0.3 (64-bit)"
with "openwrt-24.10.0-rc4-ramips-mt7621-dlink_dir-1960-a1-squashfs-recovery.bin"
it was just normal mode, but I have in the pasted had to use private browsing

from V24, the image for the recovery interface is called recovery
if we ever find out the encryption keys for these models
we can make the factory ones which would solve your problem

1 Like

This is slowly turning into insanity. Will try again today see where that gonna take me this time.
Thanks for efforts.

Worked! Win10 firefox 133 (the latest one). All i did was turn off all windows security settings in control panel.

Thanks Lucky1 for motivating for another try.

1 Like

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.