-
Fixing a bricked D-Link DSL-G624T
Posted on January 22nd, 2010 5 commentsMy Parents have a D-Link DSL-G624T ADSL modem/switch. Unfortunately, my brother decided to update its firmware, crashing it in the process. After a bit of remote debugging over the phone, we thought the best option was to send it to me.
The symptoms were as follows: The power LED came on as normal, the status LED was flashing as normal – indicating that it was at least booting up. The LAN link LEDs would light up when an ethernet cable was plugged in. However, its web administration panel couldn’t be reached on http://192.168.1.1 and it couldn’t be pinged either.
After a lot of searching, reading and failed attempts at repairing it, I have found a method to reset the firmware without the web interface. Quite why D-Link make it so awkward for their UK customers, I don’t know.
DISCLAIMER Follow these instructions at your own risk; these instructions worked for me, I make no guarantees it will work for you.
I did this on a revision ‘A’ device – you’ll need to download different firmware if you have a revision ‘B’ or ‘C’ device.
I reproduce all the steps to manually recreate the firmware update package below. For convenience, I have packaged everything up. If you use my D-Link G624T rescue package, you can skip straight to steps 4 and 5.
Step 1: Download the Australian firmware package for the G604T.
At the time of writing you can find it on their FTP server. It’s important to get the EXE version which contains the program to reset the device.
Extract the .zip archive and run the program. A window will appear asking you for the device’s IP address. At this point, open an explorer window and navigate to your user’s ‘temp’ folder (in my case C:\Documents and Settings\Dan\Local Settings\Temp – you will need to turn on ‘show hidden files’ to see it). In here will be a randomly named folder (something like ‘ckz_DE0G’) with a program called TIupdate.exe in it:
Take a copy of the files in the folder and put them in a folder on your desktop called ‘update’. Once you’ve taken a copy, you can close the program.
We won’t need the Australian firmware files, so delete ‘config.DLinkAU_DSL-G604T.img’ and ‘DLinkAU_DSL-G604T_singleimage_kernel_fs_V2.00B12.AU_20070509′. You should be left with the following:
external_boot.bin
tiupgrade.exe
tiupgrade.ini
tiupgrade.scpStep 2: Download the UK firmware
Grab the latest DSL-G624T firmware from the D-Link support site and extract it on your desktop.
From the resulting files, copy the two files inside the ‘image’ folder into the ‘upgrade’ folder you created previously. Also, open the mtd-4m.txt file in Notepad, you’ll need this in a moment.
Step 3: Set the firmware uploader to use the UK firmware
In the ‘upgrade’ folder, open the ‘tiupgrade.scp’ file in notepad. You should see something like the following:
etenv mtd0 0×90091000,0x903f0000
setenv mtd1 0×90010090,0×90090000
setenv mtd2 0×90000000,0×90010000
setenv mtd3 0x903f0000,0×90400000
setenv mtd4 0×90010000,0x903f0000
setenv autoload 1
setenv StaticBuffer 120
setenv modulation MMODE
setenv autoload_timeout 15
setenv StaticBuffer 384
setenv SW_FEATURES 0X8000
reboot
reconnect 3
put config.DLinkAU_DSL-G604T.img mtd3
put DLinkAU_DSL-G604T_singleimage_kernel_fs_V2.00B12.AU_20070509 mtd4
setenv autoload_timeout 5
rebootThis is a script telling the firmware uploader how to apply the firmware to the router. You need to amend this with the contents of the ‘mtd-4m.txt’ you have open. You also need to amed the two ‘put’ lines to reflect the filenames of the UK firmware.
After editing it, my tiupgrade.scp looked like this: (edited lines in bold)
env mtd0 0x900a1000,0x903f0000
setenv mtd1 0×90010090,0x900a1000
setenv mtd2 0×90000000,0×90010000
setenv mtd3 0x903f0000,0×90400000
setenv mtd4 0×90010000,0x903f0000
setenv autoload 1
setenv StaticBuffer 120
setenv modulation MMODE
setenv autoload_timeout 120
setenv StaticBuffer 120
setenv SW_FEATURES 0X8000
reboot
reconnect 3
put config.DLinkUK-A_DSL-G624T.img mtd3
put DLinkUK-A_DSL-G624T_singleimage_kernel_fs_V3.10B01T02.UK-A.20070523 mtd4
setenv autoload_timeout 5
rebootSave the file and you’re almost ready to go.
Step 4: Set up your network
To ensure your PC can talk to the router correctly, you need to make sure you have a static IP address on the same subnet. By default, the UK version of the router is on 192.168.1.1.
Go into your LAN properties: Start -> Control Panel -> Local Area Connection (or similar). Right click and choose ‘properties’. Double click on the ‘Internet Protocol (TCP/IP) in the list to bring up the IP properties. Set a static IP address on the same subnet as the router, for example:
Step 5: Upload and activate the firmware
Now for the easy bit. Plug the router into your computer with an ethernet cable and ensure the router is switched on. Run the ‘tiupgrade.exe’ program. You should see a window like this:
Ensure the ‘Corrupted-image mode’ checkbox is checked, then click ‘Next’. The program will prompt you to power-down the router, wait 10 seconds, then click ‘Next’. Carefully follow these instructions and the firmware update should start automatically (It takes a few minutes).
Once you’ve done that, the router should reboot, and hopefully work again. It will have been reset back to factory settings, so you should be able to log in at http://192.168.1.1 with username ‘admin’ and password ‘admin’.
Good luck, I hope this helps someone!
5 responses to “Fixing a bricked D-Link DSL-G624T”

-
Looks like my dlink router is back. I shall try to shift back my adsl link from my thomson router to this old one which I think works better. Though during the setup it asked me to change to the same subnet of 5.8.8.8 instead of the 192.168.1.1 that you suggest. Anyway,thanks a lot and I hope more guys like u flourish in the net.
-
Quote: “Script Error: EAccessViolation”
I read somewhere that this error is caused by the program being somewhat incompatible with windows vista/7
The solution would be to run the program on windows XP (perhaps via a virtual machine).
This is unconfirmed, but I will be trying it on my bricked g604t (rev.A) later today or over the weekend.
-
I tried to use windows XP running in virtualbox and was unable to directly connect to the router as the networking adapter was virtual.
I did not have the time or patience to discover any workarounds and simply used a friends PC running windows XP natively.
The program worked flawlessly in corrupted image mode, and completely avoided the fatal “EAccessViolation” error.
My G604T is now up and running without issue.
-
Steve B August 23rd, 2010 at 16:00
Hi Dan,
Great advice, and thanks for putting all the files together. I too got the Device IP of 5.8.8.8 message, and I also ran into the “Script Error: EAccessViolation” error message as I am on Win 7. I tried running it in Windows XP Mode, but no dice (same error) but it worked fine when I ran a Windows XP VM using VMware player instead.
So I now have a debricked G624-T, thanks to your help. Kudos!
Steve
Leave a reply
-






kiko kiko March 1st, 2010 at 18:12