> 2.3 | Module Detection

> The module supports an auto-baud mode and constant baud rates. Furthermore, the module can stay in “normal AT command mode” or in WinMux mode. To establish a communication to the module the correct baud rate and the state of the module must be found. Therefore it is recommended to set the module into auto baud mode.
> If the baud rate is programmed to a constant value, the driver has to find the correct baud rate. To do so, the driver sends an “AT” command to the module, trying different baud rates until the correct one is found. If the module doesn’t answer to the initial “AT” sent at the first baud rate, the driver tries to disable the possibly enabled multiplexer mode. This is done because the module might still be kept in multiplexer mode due to an earlier failure. If this fails, the driver sends again the initial “AT” command using the next baud rate from the list of supported baud rates. The driver must wait for a given timeout before the decision can be made that the module does not answer at any baud rate. The timeout value can be changed in the Windows Registry (see “RequestTimeout” value in Table 6). It can take some time before the driver finds the correct baud rate or before the driver fails to call the Open() function. Even if the module is not connected to the serial port or is turned off, the long timeout period occurs.
> If the connection to the module has been established the baud rate set in the Registry is used for further communications.
> Closing the last port deactivates the multiplexer mode and causes the module to return to “normal AT command mode” without multiplexer. Also, autobauding (AT+IPR=0) will be enabled once again. Finally, the AT^SMSO command will be sent to switch the module off. Only in the case of TC45 and XC18, AT^SMSO will not be sent. Instead, TC45 and XC18 remain in “normal AT command mode” and can be quickly accessed from the PC debug environment.