D-Link DIR-300 rev A

From DD-WRT Wiki

Revision as of 15:59, 7 October 2009 by Pastito (Talk | contribs)
Jump to: navigation, search


= Airlink101 AR430W

Contents


Initial flashing instruction

Warning: Procedure below is valid only for DIR-300 Revision A (A1). Please check carefully the revision level of your D-Link before flashing

If you happen to have a D-Link DIR-300 Revision B (B1) or a DIR-600, please check for installation instructions here:

http://www.dd-wrt.com/wiki/index.php/DIR-600


Windows flashing instruction for the D-Link DIR-300 to DD-WRT (by Brainslayer, modified by Sash, v24_SP1 specific added by Deepak)


configure your local ip to 192.168.20.80 connect your lan cable to the WAN port of the router. plugoff the power cord and replug it.You must press the RESET key for 5 sec. now enter the redboot using telnet and ip 192.168.20.81 and port 9000. connect your lan cable to the dir300 wan port. you might need several tries since its only available for 1 second after aprox. 5 sec. of booting (in the appendix is a windows instruction for easy connecting to redboot)

DIR-300 Info:
IP: 192.168.20.81/255.255.255.0, Gateway: 0.0.0.0
Default server: 192.168.20.80

now start a local tftp server on your computer and place ap61.ram as well as ap61.rom in the root dir of this server
back to the redboot enter:

load ap61.ram
go

now a new temporarily bootloader should start. (on serial console it will display some warning. but you dont need to care about) plug your lan cable to the lan port of the dir-300. reconfigure your ip to 192.168.1.2 and connect via telnet to 192.168.1.1 (or to the ip your dhcp server served to the redboot) and port 9000.
important: while doing the following steps. never plugoff the lan cable or the power cord

fis init
About to initialize [format] FLASH image system - continue (y/n)? y
*** Initialize FLASH Image System
... Erase from 0xbffe0000-0xbfff0000: .
... Program from 0x807f0000-0x80800000 at 0xbffe0000: .
ip_address -h 192.168.1.2
IP: 192.168.1.1/255.255.255.0, Gateway: 0.0.0.0
Default server: 192.168.1.2
fis init
load -r -b %{FREEMEMLO} ap61.rom
Using default protocol (TFTP)
Raw file loaded 0x80080000-0x800a8717, assumed entry at 0x80080000
fis create -l 0x30000 -e 0xbfc00000 RedBoot
An image named 'RedBoot' exists - continue (y/n)? y
... Erase from 0xbfc00000-0xbfc30000: ...
... Program from 0x80080000-0x800a8718 at 0xbfc00000: ...
... Erase from 0xbffe0000-0xbfff0000: .
... Program from 0x807f0000-0x80800000 at 0xbffe0000: .
reset

now the unit will reboot and the new bootloader will be executed and is waiting for your connection. this wil take 30+ sec. The following will work for the initial flash AND a recovery

connect to the bootloader with telnet on port 9000 and ip 192.168.1.1

now do the following: (consider that fis create operations are taking sometimes several minutes to finish)


fis init
ip_address -h 192.168.1.2 
load -r -b 0x80041000 linux.bin
fis create linux
fconfig boot_script true
fconfig boot_script_timeout 4

now type fconfig again and configure the bootscript to:

fis load -l linux
exec

now type reset again. the unit should now boot dd-wrt and work as known from other atheros based platforms

You are done now. Wait for your router to reboot. It will take about 1-2 minutes. It may blink and reset once or twice (as noted).
Now open Internet Explorer and connect to address 192.168.1.1 you should be able to see the dd-wrt page.

That's All

Recovery and Upgrade

connect to the bootloader with telnet on port 9000 and ip 192.168.1.1

do the following: (consider that fis create operations are taking sometimes several minutes to finish)

fis init

now load the latest linux.bin from your tftp-server:

load -r -b 0x80041000 linux.bin
fis create linux

Redboot access script for Windows

download putty.exe to c:\
create a file on c:\ called redboot.txt, with the following content:

^C

create a file on c:\ called redboot.bat with the following content:

rem echo off
:start
rem ------------------------------------------------
ping 192.168.20.81 -n 1 -w 1 >NUL
IF ERRORLEVEL 1 goto start

rem putty
rem ------------------------------------------------
break
putty.exe telnet://192.168.20.81:9000 -m redboot.txt
exit

start the bat file and power on the router.....here comes redboot


Redboot access script for Linux

#!/bin/bash
echo
echo ""
echo "Enter hostname or ip address: "
read host
while true
do
   if eval "ping -c 1 -s 1 $host" > /dev/null; then       
  echo "Router Awake"
       putty telnet://$host 9000 -m redboot.txt
       break
   else
       echo "Waiting for Redboot to boot. Press CTRL + C to quit"
    sleep 1
   fi
done

Hardware

Serial port

Image:Dir300-serial.jpg 3.3V TTL