Bountiful BWRG500

From DD-WRT Wiki

Jump to: navigation, search

The BWRG500 and BWRG1000 are nearly identical, and these instructions should work for both.


[edit] Flashing Instructions

These instructions are based off generic Atheros instructions (by other authors). They are tested to be working from Windows XP to a Bountiful BWRG500 with firmware DD-WRT v24-sp2 std SVN 14896 .

--Alexszc 16 September 2010

Make sure to use the files that are named in the instructions: ap51.bin, ap51.rom, linux.bin

[edit] Preparation

Before flashing you want to establish a clean environment to reduce the risk of problems, and make problem resolution easier.

  1. Reset your unit to factory defaults: Depress and hold the Reset Switch for approximately 30 seconds (until the System Status light turns off). Wait at least 30 more seconds after releasing before doing anything else.
  2. Isolate your workstation and the router together. Turn off / Disconnect any wireless or extra wired connections on the workstation, and use a single wired connection to a LAN port on the router. Don't have anything but your computer connected to the router while flashing.

[edit] TFTP Server

Windows doesn't have a TFTP server running by default. You need one in order for the router to be able to load the files from your computer during flashing. TFTPD32 is a good lightweight TFTP server.

  1. Download the standard ZIP version of TFTPD32
  2. Extract to a known folder (in a folder on your Desktop, or in a folder branched off C:\)
  3. Run and configure so that the current directory is where your downloaded .bin and .rom files are. Make sure a firewall isn't interfering (it is best to turn it off completely for flashing).

[edit] Temporary bootloader

  1. Set a static IP address in the router's default 192.168.0.x subnet (ex.
  2. Connect the LAN cable to your computer
  3. Connect via a browser to the router's web interface at (Default Username and Password is admin/admin)
  4. Flash ap51.bin as a firmware update. Reboot via the GUI button when prompted.

[edit] Flashing DD-WRT

  1. Set your static IP address as
  2. Open a console and attempt to telnet to on port 9000 you may need to wait for the bootloader to finish initializing (1-3 minutes). Once connected, do not disconnect or unplug your computer, or unplug the router.
  3. Type the following commands in the order presented. You should get similar returns from them. Sent commands are bold. Annotations are italics.
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
IP:, Gateway:
Default server:

load -r -b %{FREEMEMLO} ap51.rom   
**Note**This command may return an error about FREEMEMLO being invalid, 
in that case, use the last memory address in the range returned after entering the command fis init,
0x80800000, it may be different for you. Use the following command if the last failed, as per this annotation.
load -r -b 0x80080000 ap51.rom
Using default protocol (TFTP)
Raw file loaded 0x80080000-0x800a8717, assumed entry at 0x80080000
fis create -l 0x20000 -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: .

  1. The router will reboot. Type Ctrl-[ to escape from the telnet session.
  2. Once the router is online again, connect through telnet as before.
  3. Type the following commands in the order presented. The operations may take some time to finish. Sent commands are bold. Annotations are italics.
ip_address -h
IP:, Gateway:
Default server:
load -r -b 0x80041000 linux.bin
fis create linux
fconfig boot_script true
fconfig boot_script_timeout 4
**Note** You will be presented with a series of options. 
When asked for a boot script enter following lines then press enter to cycle though the options to the end. 
Commit the settings when asked.
fis load -l linux
**Note** The script is terminated with one enter stroke to create a blank line, then enter again.

The router will reboot again. Type Ctrl-[ to escape from the telnet session, close the console.

DD-WRT should now boot and work like it does on other Atheros based platforms.

[edit] Troubleshooting

[edit] Relevant Forum Posts

  1. Bountiful BWRG-500
  2. Bountiful 1000mw Bricked
  3. Bad Bountiful BWRG500 Flash
  4. Bountiful WiFi

[edit] Redboot Access Script

Use this to regain a Redboot session. Only will work if the router has Redboot flashed successfully on it.

[edit] Make Your Own

Download putty.exe to a known folder. create a file in the folder called redboot.bat with the following content:

@echo off
echo Waiting for boot cycle on
rem ------------------------------------------------
ping -n 1 -w 1 > NUL
IF ERRORLEVEL 1 goto start
echo is live, running putty.
rem putty
rem ------------------------------------------------
start putty.exe telnet:// -m redboot.txt

Create a file in the folder called redboot.txt with the following content (copy paste it):


Start the .bat file and power on the comes redboot.

[edit] Premade

A premade script is available from here.