Difference between revisions of "WiFi Module"

From DSiBrew
Jump to navigation Jump to search
(added dwm-w024 image)
(One intermediate revision by the same user not shown)
Line 13: Line 13:
 
The DSi only uses a tiny portion of the 128KB available for startup data, calibration, and user settings.  Modules with SPI flash can be written to in DS mode, which enables the installation of WiFi loader "dslink" which can then be launched in DSi mode via save-game hacks in DSi hybrid games.  Newer modules with the 5A32 chip are incompatible with this, most likely because the custom chip has significantly less storage.  khmann had success backing up the data in a 5A32 using an SPI connection to a DS cartridge, removing the 5A32 and installing a pre-programmed ST M45PE20 2Mbit SPI flash chip which enabled use of the this exploit on a newer console.
 
The DSi only uses a tiny portion of the 128KB available for startup data, calibration, and user settings.  Modules with SPI flash can be written to in DS mode, which enables the installation of WiFi loader "dslink" which can then be launched in DSi mode via save-game hacks in DSi hybrid games.  Newer modules with the 5A32 chip are incompatible with this, most likely because the custom chip has significantly less storage.  khmann had success backing up the data in a 5A32 using an SPI connection to a DS cartridge, removing the 5A32 and installing a pre-programmed ST M45PE20 2Mbit SPI flash chip which enabled use of the this exploit on a newer console.
  
Nintendo's reasons for changing the NVRAM chip are unclear, but it seems all DWM-W015 and DWM-W028 modules have connections for both types of chips, and the change to the limited chip occurred prior to the release of the dslink exploit.
+
Nintendo's reasons for changing the NVRAM chip are unclear, but it seems all DWM-W015 and DWM-W024 modules have connections for both types of chips, and the change to the limited chip occurred prior to the release of the dslink exploit.
  
 
The Mitsumi WiFi is controlled through data in the NVRAM (eg: calibration data, allowed channels) http://www.daftcode.net/gbatek/ds#dsfirmwarewificalibrationdata  while the Atheros configuration is likely stored in the other tiny IC on the board, an i2c eeprom.
 
The Mitsumi WiFi is controlled through data in the NVRAM (eg: calibration data, allowed channels) http://www.daftcode.net/gbatek/ds#dsfirmwarewificalibrationdata  while the Atheros configuration is likely stored in the other tiny IC on the board, an i2c eeprom.
  
 +
 +
[[Image:Dwm-w024.jpg]]
  
 
The DSiXL or DSi/LL module is labeled DWM-W024, and includes only an Atheros AR6013G-AL1C, a 5A32 variant, empty SPI flash pads, and another small chip likely to be the Atheros-native i2c configuration.
 
The DSiXL or DSi/LL module is labeled DWM-W024, and includes only an Atheros AR6013G-AL1C, a 5A32 variant, empty SPI flash pads, and another small chip likely to be the Atheros-native i2c configuration.
For reference, the 3DS is reported to use an Atheros AR6014G-AL1C.
+
For reference, the 3DS DWM-W028 module is reported to use an Atheros AR6014G-AL1C.
  
  
 
If this module is disconnected the DSi turns on to a black screen, because it can't read the NVRAM.  If the DSi doesn't like the data contained on the module it will give either error 0000FEFE or 0000FE00 at poweron.
 
If this module is disconnected the DSi turns on to a black screen, because it can't read the NVRAM.  If the DSi doesn't like the data contained on the module it will give either error 0000FEFE or 0000FE00 at poweron.

Revision as of 21:45, 9 October 2012

There appear to be 3 WiFi modules at use in the DSi.

The original DSi DWM-W015 module features two wireless chips; a Mitsumi MM3218 for DS compatibility and a more modern Atheros AR6002G BGA which share the antenna through an RF switch. The DS WiFi is configured through profiles 1-3 and is limited to 802.11b 1-2Mbps and WEP encryption while the Atheros supports 802.11g rates and WPA encryption, configured through profiles 4-6.

http://www.flickr.com/photos/micahdowty/3846960965/sizes/o/in/photostream/ Rev0 of this module includes a 1Mbit SPI flash ST M45PE10 Media:STM45PE10.pdf for NVRAM

DWM-W015a.jpg

Updated (RevA) modules use a very tiny custom chip labeled 5A32 for NVRAM storage. Note the circle in this image shows a 10k resistor from pin 5 WP to GND, which the ST M45PE10 datasheet indicates will write-protect the first 64K. To disable this protection according to the SPI datasheet, remove the resistor and solder pin 5 to pin 6 VCC.

The DSi only uses a tiny portion of the 128KB available for startup data, calibration, and user settings. Modules with SPI flash can be written to in DS mode, which enables the installation of WiFi loader "dslink" which can then be launched in DSi mode via save-game hacks in DSi hybrid games. Newer modules with the 5A32 chip are incompatible with this, most likely because the custom chip has significantly less storage. khmann had success backing up the data in a 5A32 using an SPI connection to a DS cartridge, removing the 5A32 and installing a pre-programmed ST M45PE20 2Mbit SPI flash chip which enabled use of the this exploit on a newer console.

Nintendo's reasons for changing the NVRAM chip are unclear, but it seems all DWM-W015 and DWM-W024 modules have connections for both types of chips, and the change to the limited chip occurred prior to the release of the dslink exploit.

The Mitsumi WiFi is controlled through data in the NVRAM (eg: calibration data, allowed channels) http://www.daftcode.net/gbatek/ds#dsfirmwarewificalibrationdata while the Atheros configuration is likely stored in the other tiny IC on the board, an i2c eeprom.


Dwm-w024.jpg

The DSiXL or DSi/LL module is labeled DWM-W024, and includes only an Atheros AR6013G-AL1C, a 5A32 variant, empty SPI flash pads, and another small chip likely to be the Atheros-native i2c configuration. For reference, the 3DS DWM-W028 module is reported to use an Atheros AR6014G-AL1C.


If this module is disconnected the DSi turns on to a black screen, because it can't read the NVRAM. If the DSi doesn't like the data contained on the module it will give either error 0000FEFE or 0000FE00 at poweron.