This chapter describes the types of wireless communication that can be performed by applications, and the system’s wireless-enabled and wireless-disabled modes.
2.1. Types of Wireless Communication
3DS wireless communication is mainly split into two types: foreground communication, which is carried out by the application intentionally; and background communication, which is performed in the background.
Multiple libraries are provided for both foreground and background communication, depending on the intended use.
Type of Wireless Communication |
Library Name |
Namespace |
Description |
---|---|---|---|
Local Communication (UDS Communication) |
UDS |
|
Direct wireless communication between 3DS systems. Up to 16 (TBD) systems can connect to a single network. Broadcasts are also supported. |
Nintendo 3DS Download Play |
DLP |
|
Wireless communication for distributing child communication programs. You can distribute programs up to 32 MB in size. |
Automatic Connection |
AC |
|
A library that automatically establishes an Internet connection, through a wireless access point or otherwise, in accordance with System Settings. |
Reliable local communication |
RDT |
|
Wireless communication for reliable one-to-one data transmission. Uses UDS communication internally. |
Nintendo supports 16 simultaneous UDS communication connections, but operation has not been adequately tested when 13 or more systems are simultaneously connected. Consequently, proper operation with 13 or more connected systems is not currently guaranteed.
Type of Wireless Communication |
Library Name |
Namespace |
Description |
---|---|---|---|
StreetPass |
CEC |
|
Wireless communications for sending and receiving data when two CTR systems approach and discover each other as communication peers. |
SpotPass |
BOSS |
|
Wireless communications that use SpotPass functionality. SpotPass executes tasks registered by an application in the background. |
Presence feature |
FRIENDS |
|
Feature for setting the presence information reported to friends and for getting the presence information about friends. |
2.2. Wireless-Enabled and Wireless-Disabled Modes
The wireless switch incorporated into the CTR and SPR systems provides hardware controls that use the wireless communication module. The SNAKE and FTR systems, which do not include a physical wireless switch, have a wireless switch on the HOME Menu that fulfills the same role.
The term wireless-disabled mode refers to the state where the wireless communication module has been turned off using the wireless switch.
Wireless signals are not actually sent and received even in wireless-enabled mode unless communications are being performed by the wireless module in the background or by the UDS library.
If the system is in wireless-disabled mode, wireless signals are never sent or received.
The yellow LED indicator for wireless operations turns on and off according to the status of the wireless communication module.
Wireless Communication Module Status |
Wireless LED Status |
---|---|
Wireless-enabled mode |
Lit |
Wireless off mode |
Off |
Transmitting wireless data |
Flashing |
No functions have been prepared for checking wireless-enabled mode and wireless-disabled mode. When in wireless-disabled mode, the library’s functions for initialization and for wireless sending and receiving return values that indicate it is in wireless-disabled mode.
2.3. Processing Load of Encrypted Wireless Communication
Encryption is necessary for communication with access points configured with WEP or WPA authentication, and the wireless communication module performs this encryption in the hardware. Although the CPU performs some of the processing for WPA connections, this processing takes place in the system core.
The application does not need to take the processing load of encrypted wireless communication into account.
2.4. Errors From the Wireless Communication Module
Due to differences between individual 3DS systems, there is a small chance that errors occur between the CPU and the wireless communications module. This type of error cannot be resolved through software revisions. As a workaround, we have implemented automatic recovery when such an error occurs.
However, one of the errors that can occur due to individual differences in systems cannot be handled by the automatic recovery. It is RSL:F9606C02 (RSL is a result code displayed on a FATAL screen), and occurs when local communication or an automatic connection is being initialized or the communication mode of background communication is changing and the process is terminated. When this error occurs, a FATAL screen is displayed, so there is no need for the application to do anything.
If the RSL:F9606C02 error occurs frequently when using development tools or a test unit, it may be because the wireless communication module is damaged, and not due to individual system differences. Please consult with Nintendo if this is the case.
When a wireless communication module error occurs, the behavior can differ as described below, according to the communication mode.
- Local Communication (UDS, RDT, or Nintendo 3DS Download Play)
Automatic recovery works. As a result, if an API is called and this error occurs, values such asnn::uds::ResultWirelessOff
ornn::dlp::ResultWirelessOff
are returned, indicating that wireless communication is in off mode. - Automatic Connection (AC)
Automatic recovery works. As a result, if an AC API is called and this error occurs, the valuenn::ac::ResultWifiOff
is returned, indicating that wireless communication is in off mode. - Background Communication (system is open)
Automatic recovery works in any communication mode (StreetPass, SpotPass, Friend Presence). The application does not need to do anything. - Background Communication (system is closed)
Automatic recovery is not performed, and system power is turned off. The application does not need to do anything. - Wireless-disabled mode
The communication error will not occur.
The following is a list of FATAL errors that could occur for each communication mode.
Communication Mode |
Result Code and Frequency |
---|---|
Local communication |
RSL:F9606C02 Occurrence Frequency: Very low |
Automatic Connection |
RSL:F9606C02 Occurrence Frequency: Very low |
Background Communication (system is open) |
RSL:F9606C02 Occurrence Frequency: Very low |
Background Communication (system is closed) |
Power is turned off without displaying a FATAL screen. Occurrence Frequency: Very low |
Wireless off mode |
Does not occur. |