Hardware

From DD-WRT Wiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 18:56, 27 July 2006 (edit)
Erniecars (Talk | contribs)
m (WRT54G/GL/GS versions)
← Previous diff
Revision as of 20:50, 22 March 2018 (edit) (undo)
Jeremywh7 (Talk | contribs)
m (NVRAM)
Next diff →
(30 intermediate revisions not shown.)
Line 1: Line 1:
 +{{Languages|Hardware}}
__toc__ __toc__
-==Linksys WRT54Gx==+==NVRAM==
 +NVRAM (non-volatile RAM) also called flash space is the place where the permanent settings are stored. This includes
 +:* DD-WRT settings that you normally change using [[Web Interface]]
 +:* settings for user [[Startup Scripts]]
-===WRT54G/GL/GS versions===+You can run the following commands using [[Telnet/SSH and the Command Line|Command Line]]:
-The first 4 digits in the serial number (look on the box or the underside of the router) represent the hardware revision:+
-CDF0 = WRT54G v1.0<br>+*Show the whole NVRAM content:
-CDF1 = WRT54G v1.0<br>+ nvram show
-CDF2 = WRT54G v1.1<br>+
-CDF3 = WRT54G v1.1<br>+
-CDF5 = WRT54G v2.0<br>+
-CDF7 = WRT54G v2.2<br>+
-CDF8 = WRT54G v3.0<br>+
-CDF9 = WRT54G v3.1<br>+
-CDFA = WRT54G v4.0<br>+
-CDFB = WRT54G v5.0<br>+
-CDFC = WRT54G v5.1<br>+
-CDFD = WRT54G v6.0<br>+
-CDFE = WRT54G v7.0<br>+
-CL7A = WRT54GL v1.0<br>+*Show NVRAM content containing the pattern <search_pattern> (useful for quickly finding things in NVRAM):
-CL7B = WRT54GL v1.1<br>+ nvram show | grep <search_pattern>
 +:Replace <replace_pattern> with what you are actually looking for. This can simply be a word or a [http://en.wikipedia.org/wiki/Regular_expression regular expression]
-CGN0 = WRT54GS v1.0<br>+*Show value of a certain variable:
-CGN1 = WRT54GS v1.0<br>+ nvram get <variable_name>
-CGN2 = WRT54GS v1.1<br>+
-CGN3 = WRT54GS v2.0<br>+
-CGN4 = WRT54GS v2.1<br>+
-CGN5 = WRT54GS v3.0<br>+
-CGN6 = WRT54GS v4.0<br>+
-CGN7 = WRT54GS v5.0<br>+
-CGN8 = WRT54GS v5.1<br>+
-CJK0 = WRTSL54GS v1.0<br>+*Change variable value ''in RAM only'':
 + nvram set <variable_name>="<value>"
 +:(Quotes not needed for numeric/boolean values, needed for texts like <code>192.168.1.1</code> or <code>443 8080</code> or <code>sometext</code>).
 +:Now you can play with the new settings or test user scripts but this new value will be lost after reboot unless you do <code>nvram commit</code>.
-See more information on the [http://www.linksysinfo.org/modules.php?name=Content&pa=showpage&pid=6 LinksysInfo Autopsy] page.+*Delete a variable (and its value). Useful when you made a typo in <code><variable_name></code> above:
 + nvram unset <variable_name>
-DD-WRT supports versions 1 to 4 of the WRT54G, WRT54GL and WRT54GS hardware. WRT54G v5 and WRT54GS v5 are (un)oficially supported in the newest v23 SP1 beta "micro" version, but you need a JTAG cable to flash them (for now). These new routers have limited ram (2/8) and run on [http://en.wikipedia.org/wiki/VxWorks VxWorks] and not Linux. DD-WRT does not currently support the WRT-54GX, Linksys's MiMo version router. DD-WRT is also reported to work on the WAP54G, but your mileage may vary.+*Save all changed variables to NVRAM:
 + nvram commit
 +Reboot the router for new settings in NVRAM to go into effect.
-'''WARNING:'''+*To erase the nvram block when running DD-WRT:
-v22 isnt compatible with v4 and newer routers and GL. They are different. Only v23 and newer will run on this model.+ erase nvram
-You would otherwise have to 'un-brick' your router ([http://www.linksysinfo.org/modules.php?name=Content&pa=showpage&pid=33 Revival Guide method]) +*To erase nvram in the Broadcom CFE (bootloader):
 + nvram erase
 +*These are often confused!
-''NOTE: ''+==Boardflags==
-Additionally the stock firmware from Linksys on the WRT54G v4 and WRT54GL won't accept a firmware image over 3MB in size (you will get the error: "Upgrade are failed!"(sic) if you try) so you will need to flash the mini version of DD-WRT onto the router BEFORE flashing the std or voip versions. (Remember to hold reset button for 30 sec after flashing mini version.)+
-===The WRT54Gx Boot Process===+/* boardflags */
 +#define BFL_BTCOEXIST 0x0001 /* This board implements Bluetooth coexistance */
 +#define BFL_PACTRL 0x0002 /* This board has gpio 9 controlling the PA */
 +#define BFL_AIRLINEMODE 0x0004 /* This board implements gpio13 radio disable indication */
 +#define BFL_ENETROBO 0x0010 /* This board has robo switch or core */
 +#define BFL_CCKHIPWR 0x0040 /* Can do high-power CCK transmission */
 +#define BFL_ENETADM 0x0080 /* This board has ADMtek switch */
 +#define BFL_ENETVLAN 0x0100 /* This board has vlan capability */
 +#define BFL_AFTERBURNER 0x0200 /* This board supports Afterburner mode */
 +#define BFL_NOPCI 0x0400 /* This board leaves PCI floating */
 +#define BFL_FEM 0x0800 /* This board supports the Front End Module */
 +#define BFL_EXTLNA 0x1000 /* This board has an external LNA */
 +#define BFL_HGPA 0x2000 /* This board has a high gain PA */
 +#define BFL_BTCMOD 0x4000 /* This board' BTCOEXIST is in the alternate gpios */
-==NVRAM== 
-NVRAM (non-volatile RAM) is the place where the permanent settings are stored. 
-On the command line you can view the NVRAM's content with 
- 
- nvram show 
- 
-A variable is stored/changed by issuing 
- 
- nvram set <variable_name>="<value>" 
- nvram commit 
- 
-You'll need to reboot to get the (changed) NVRAM executed. 
==Overclocking== ==Overclocking==
-The standard clock speed of a WRT54G is 200 MHz. DD-WRT allows overclocking the device to up to 300 MHz in various steps. It is also possible to underclock the WRT54G to 192 MHz, for example for troubleshooting crashes which may be caused by overheating. Also, newer Linksys firmware overclocks some models of the WRT54GS to 216 MHz, to prevent instability issues inherent in the 2.x versions.+BCM3303 v0.7 clock frequencies:
- +(todo...)
-The WRT54Gv4 and WRT54Gv5 have a processor that has a slightly different set of valid clock frequencies. Its highest available frequency is 252mhz (sbclock of 125mhz). Note that even though the box will boot at frequencies higher than this, the CPU will actually be running at its last known good speed, or default speed of 200mhz.+{| border=1 cellspacing=0 cellpadding=5
- +| '''MIPS/CPU'''
-As of DD-WRT v23 SP1, this is mis-reported in the web UI since it reads from the nvram variables instead of checking the actual clock frequency. If you have a v4 or greater and think you are running at anything above 250mhz just because the web UI reports such, you are NOT.+| '''Backplane'''
- +| '''Comment'''
-To check your clock frequency, execute 'cat /proc/cpuinfo'. This will show you what frequency your processor is actually running at.+|-
- +|}
-Additionally, although DD-WRT sets the nvram clkfreq variable so that it includes the sbclock, the sbclock variable is ignored. In example, clkfreq=240,126 ends up only running at 240mhz and 120mhz, because 120mhz is the sbclock frequency that matches the ratio for a 240mhz clock frequency.+<br>
 +BCM3303 v0.8 clock frequencies:
 +{| border=1 cellspacing=0 cellpadding=5
 +| '''MIPS/CPU'''
 +| '''Backplane'''
 +| '''Comment'''
 +|-
 +| 183
 +| 91
 +|-
 +| 188
 +| 94
 +|-
 +| 197
 +| 98
 +|-
 +| 200
 +| 100
 +|-
 +| 206
 +| 103
 +|-
 +|-
 +| 212
 +| 106
 +|-
 +| 216
 +| 108
 +|-
 +| 217
 +| 109
 +|-
 +| 225
 +| 113
 +|-
 +| 238
 +| 119
 +|-
 +| 240
 +| 120
 +|-
 +| 250
 +| 125
 +|-
 +|}
==Hardware Modifications== ==Hardware Modifications==
''Hardware Modifications (mods) are not necessarily DD-WRT specific or compatible.'' ''Hardware Modifications (mods) are not necessarily DD-WRT specific or compatible.''
-[http://jdc.parodius.com/wrt54g/serial.html Serial Port]<br>+*[http://jdc.parodius.com/wrt54g/serial.html Serial Port]
-[http://pobletewireless.blogspot.com/2006/05/monta-un-conector-sma-reverse-en-tu.html Additional external SMA-R connector]<br>+*[http://pobletewireless.blogspot.com/2006/05/monta-un-conector-sma-reverse-en-tu.html Additional external SMA-R connector]
-[http://www.rwhitby.net/wrt54gs/serial.html Dual Serial Port]<br>+*[http://www.rwhitby.net/wrt54gs/serial.html Dual Serial Port]
-[http://kiel.kool.dk/ SD-Card]<br>+*[http://kiel.kool.dk/ SD-Card]
-[http://www.lecad.uni-lj.si/~leon/other/wlan/wrt54ow/index.html Temperature sensor for WRT54G 2.x and WRT54GS with DS1820]<br>+*[http://www.lecad.uni-lj.si/~leon/other/wlan/wrt54ow/index.html Temperature sensor for WRT54G 2.x and WRT54GS with DS1820]
- +*[http://www.dd-wrt.com/wiki/index.php/DIR-320_64_Mb_RAM_Upgrade DIR-320 64 Mb RAM Upgrade]
-[[Category:English documentation]]+[[Category:Hardware| ]]

Revision as of 20:50, 22 March 2018

Contents


NVRAM

NVRAM (non-volatile RAM) also called flash space is the place where the permanent settings are stored. This includes

You can run the following commands using Command Line:

  • Show the whole NVRAM content:
nvram show
  • Show NVRAM content containing the pattern <search_pattern> (useful for quickly finding things in NVRAM):
nvram show | grep <search_pattern>
Replace <replace_pattern> with what you are actually looking for. This can simply be a word or a regular expression
  • Show value of a certain variable:
nvram get <variable_name>
  • Change variable value in RAM only:
nvram set <variable_name>="<value>"
(Quotes not needed for numeric/boolean values, needed for texts like 192.168.1.1 or 443 8080 or sometext).
Now you can play with the new settings or test user scripts but this new value will be lost after reboot unless you do nvram commit.
  • Delete a variable (and its value). Useful when you made a typo in <variable_name> above:
nvram unset <variable_name>
  • Save all changed variables to NVRAM:
nvram commit

Reboot the router for new settings in NVRAM to go into effect.

  • To erase the nvram block when running DD-WRT:
erase nvram
  • To erase nvram in the Broadcom CFE (bootloader):
nvram erase
  • These are often confused!

Boardflags

/* boardflags */

  1. define BFL_BTCOEXIST 0x0001 /* This board implements Bluetooth coexistance */
  2. define BFL_PACTRL 0x0002 /* This board has gpio 9 controlling the PA */
  3. define BFL_AIRLINEMODE 0x0004 /* This board implements gpio13 radio disable indication */
  4. define BFL_ENETROBO 0x0010 /* This board has robo switch or core */
  5. define BFL_CCKHIPWR 0x0040 /* Can do high-power CCK transmission */
  6. define BFL_ENETADM 0x0080 /* This board has ADMtek switch */
  7. define BFL_ENETVLAN 0x0100 /* This board has vlan capability */
  8. define BFL_AFTERBURNER 0x0200 /* This board supports Afterburner mode */
  9. define BFL_NOPCI 0x0400 /* This board leaves PCI floating */
  10. define BFL_FEM 0x0800 /* This board supports the Front End Module */
  11. define BFL_EXTLNA 0x1000 /* This board has an external LNA */
  12. define BFL_HGPA 0x2000 /* This board has a high gain PA */
  13. define BFL_BTCMOD 0x4000 /* This board' BTCOEXIST is in the alternate gpios */


Overclocking

BCM3303 v0.7 clock frequencies: (todo...)

MIPS/CPU Backplane Comment


BCM3303 v0.8 clock frequencies:

MIPS/CPU Backplane Comment
183 91
188 94
197 98
200 100
206 103
212 106
216 108
217 109
225 113
238 119
240 120
250 125

Hardware Modifications

Hardware Modifications (mods) are not necessarily DD-WRT specific or compatible.