Modem Information and Management


Classes

struct  SWI_STRUCT_DeviceInformation_Request
struct  SWI_STRUCT_DeviceInformation_Response

Enumerations

enum  SWI_TYPE_DeviceInformationType {
  SWI_DEVICEINFORMATION_Technology = 1, SWI_DEVICEINFORMATION_Product, SWI_DEVICEINFORMATION_FrmDwlProtocol, SWI_DEVICEINFORMATION_DeviceReEnum,
  SWI_DEVICEINFORMATION_CnS, SWI_DEVICEINFORMATION_CweHdrProdType
}
enum  SWI_TYPE_RequestStatus { SWI_REQUESTSTATUS_SUCCESS, SWI_REQUESTSTATUS_UnknownType, SWI_REQUESTSTATUS_GenFailure }
enum  SWI_TYPE_Technology { SWI_TECHNOLOGY_Unknown, SWI_TECHNOLOGY_CDMA, SWI_TECHNOLOGY_GSM }
enum  SWI_TYPE_FrmDlwProtocol { SWI_FRMDLWPROTOCOL_One, SWI_FRMDLWPROTOCOL_Two, SWI_FRMDLWPROTOCOL_Three }
enum  SWI_TYPE_DeviceReEnum { SWI_DEVICEREENUM_Trigger_Remove, SWI_DEVICEREENUM_Trigger_NoRemove }

Functions

SWI_API SWI_RCODE SwiGetDeviceInformation (const SWI_STRUCT_DeviceInformation_Request &sDeviceInformation_Request, SWI_STRUCT_DeviceInformation_Response &sDeviceInformation_Response, U32 timeout)
SWI_API SWI_RCODE SwiGetDeviceID (LPTSTR szDeviceID, U32 sizeBuffer, U32 timeout)
SWI_API SWI_RCODE SwiGetFirmwareVersion (LPTSTR szFWVersion, U32 sizeBuffer, U32 timeout)
SWI_API SWI_RCODE SwiGetFirmwareBuildDate (LPTSTR szBuildDate, U32 sizeBuffer, U32 timeout)
SWI_API SWI_RCODE SwiGetHardwareVersion (LPTSTR szHWVersion, U32 sizeBuffer, U32 timeout)
SWI_API SWI_RCODE SwiGetBootVersion (LPTSTR szBVVersion, U32 sizeBuffer, U32 timeout)
SWI_API SWI_RCODE SwiGetUsbdInfo (SWI_STRUCT_UsbdInfo *pUsbdInfo, U32 Timeout)
SWI_API SWI_RCODE SwiGetBootloaderBuildDate (LPTSTR lpstrBLBldDate, U32 &nLength, U32 Timeout)
SWI_API SWI_RCODE SwiGetPriInfo (SWI_STRUCT_PriInfo *pPriInfo, U32 timeout)
SWI_API SWI_RCODE SwiGetFlashImgInfo (SWI_STRUCT_FlashImgInfo *pFlashImgInfo, U32 timeout)
SWI_API SWI_RCODE SwiSoftModemReset ()
SWI_API SWI_RCODE SwiModemReset (U32 timeout=1000)
SWI_API SWI_RCODE SwiGetModemDisable (bool *pModemDisable, U32 timeout)
SWI_API SWI_RCODE SwiSetModemDisable (const bool bModemDisable, U32 timeout)
SWI_API SWI_RCODE SwiSetHostStartup (bool bStartup, U32 timeout)
SWI_API SWI_RCODE SwiHostAppLaunch (U32 timeout)
SWI_API SWI_RCODE SwiGetImei (SWI_STRUCT_Imei *pImei, U32 timeout)
SWI_API SWI_RCODE SwiGetSerialNumber (SWI_STRUCT_Fsn *sFsn, U32 timeout)
SWI_API SWI_RCODE SwiGetFPGAVersion (U32 *major, U32 *minor, U32 timeout)
SWI_API SWI_RCODE SwiGetAvailableFeatures (SWI_STRUCT_AvailFeatures &sFeatures, U32 timeout)
SWI_API SWI_RCODE SwiGetFeatureCustomizations (SWI_STRUCT_FeatureCustomizations *sCustomizations, U32 timeout)
SWI_API SWI_RCODE SwiGetAirCardType (SWI_STRUCT_AirCardType *pAirCardType, U32 timeout)

Enumeration Type Documentation

Enumeration of device information types.

Used by SWI_STRUCT_DeviceInformation_Request and SWI_STRUCT_DeviceInformation_Response to indicate the type of data being requested in SwiGetDeviceInformation.

See also:
SWI_STRUCT_DeviceInformation_Request

SWI_STRUCT_DeviceInformation_Response

SwiGetDeviceInformation

Enumerator:
SWI_DEVICEINFORMATION_Technology  Technology type (CDMA, GPRS)
SWI_DEVICEINFORMATION_Product  Product string
SWI_DEVICEINFORMATION_FrmDwlProtocol  Firmware download protocol
SWI_DEVICEINFORMATION_DeviceReEnum  Device re-enumeration
SWI_DEVICEINFORMATION_CnS  Proprietary control and status protocol support
SWI_DEVICEINFORMATION_CweHdrProdType  CWE header product type

Enumeration of PnP behaviour.

Returned by SwiGetDeviceInformation in conjunction with SWI_DEVICEINFORMATION_DeviceReEnum information request.

See also:
SWI_TYPE_DeviceInformationType

SwiGetDeviceInformation

Enumerator:
SWI_DEVICEREENUM_Trigger_Remove  0x00 – Modem reset causes PnP device removal/arrival or media disconnect/reconnect notifications on the host platform
SWI_DEVICEREENUM_Trigger_NoRemove  0x01 – Modem reset does not trigger PnP device removal/arrival or media disconnect/reconnect notifications on the host platform

Enumeration of protocols to be used for firmware download.

Returned by SwiGetDeviceInformation in conjunction with SWI_DEVICEINFORMATION_FrmDwlProtocol information request.

See also:
SWI_TYPE_DeviceInformationType

SwiGetDeviceInformation

Enumerator:
SWI_FRMDLWPROTOCOL_One  0x00 – Host must use firmware download protocol 1 to download images to this modem
SWI_FRMDLWPROTOCOL_Two  0x01 – Host must use firmware download protocol 2 to download images to this modem
SWI_FRMDLWPROTOCOL_Three  0x02 - Host must use firmware download protocol 3 to download images to htis modem

Enumeration indicates return status of request.

Enumeration of control and status protocol technology.

Returned by SwiGetDeviceInformation in conjunction with SWI_DEVICEINFORMATION_Technology information request.

See also:
SWI_TYPE_DeviceInformationType

SwiGetDeviceInformation


Function Documentation

SWI_API SWI_RCODE SwiGetAirCardType ( SWI_STRUCT_AirCardType pAirCardType,
U32  timeout 
)

This function is used to query the modem for its device type.

This is a legacy function. SwiGetAvailAirServers and SwiSelectAirServer should now be used to determine available devices and selecting a device to communicate with.

This function is only supported on GSM devices.

Parameters:
[OUT] pAirCardType: Card type
[IN] timeout: Response timeout value in milliseconds.
Returns:
SWI_RCODE_OK: The request has been processed and values returned are valid.

See SWI_RCODE for other error return codes.

See also:
SWI_STRUCT_AirCardType

SwiGetAvailAirServers

SwiSelectAirServer

SWI_API SWI_RCODE SwiGetAvailableFeatures ( SWI_STRUCT_AvailFeatures sFeatures,
U32  timeout 
)

This function is used to retrieve the modem's available features.

This function replaces SwiGetAvailableFeature.

This function is only supported on GSM devices.

Parameters:
[OUT] sFeatures: Feature capability. See SWI_STRUCT_AvailFeatures for details.
[IN] timeout Response timeout value in milliseconds
Returns:
SWI_RCODE_OK: The request has been processed and values returned are valid.

See SWI_RCODE for other error return codes.

See also:
SWI_STRUCT_AvailFeatures

SWI_API SWI_RCODE SwiGetBootloaderBuildDate ( LPTSTR  lpstrBLBldDate,
U32 &  nLength,
U32  Timeout 
)

This function is used to retrieve the boot loader build date.

Parameters:
[OUT] lpstrBLBldDate: Pointer to store the build date information
[IN/OUT] nLength: Size of buffer available to store the build date information/required buffer space
[IN] Timeout: Response timeout value in milliseconds
Returns:
SWI_RCODE_SMALL_BUF is returned if the specified buffer is not large enough to store the entire build date information. Check nLength to see the required buffer size.

See SWI_RCODE for additional information.

SWI_API SWI_RCODE SwiGetBootVersion ( LPTSTR  szBVVersion,
U32  sizeBuffer,
U32  timeout 
)

This function returns the device's firmware loader version in a string.

Parameters:
[OUT] szBVVersion: Bootloader version (NULL terminated). The version string varies in length. It is recommended that a character string of 80 characters be allocated to store this return value.
[IN] sizeBuffer: Size of buffer provided for the bootloader version
[IN] timeout: Response timeout value in milliseconds
Returns:
See SWI_RCODE for additional information.

SWI_API SWI_RCODE SwiGetDeviceID ( LPTSTR  szDeviceID,
U32  sizeBuffer,
U32  timeout 
)

This function returns the device's unique identity as a string. The returned value is the ESN (Electronic Serial Number) or EID (Electronic Identity) of the modem.

The ESN is in the form of an 14-character string of decimal numerals. The string is null terminated (adding a 15th byte to the length). The content of the ESN includes several concatenated components, as specified for GPRS.

Parameters:
[OUT] szDeviceID: A string representing the Device ID (NULL terminated).
[IN] sizeBuffer: Size of buffer provided for the device ID. A buffer of 15 bytes is recommended.
[IN] timeout: Response timeout value in milliseconds
Returns:
See SWI_RCODE for additional information.

SWI_API SWI_RCODE SwiGetDeviceInformation ( const SWI_STRUCT_DeviceInformation_Request sDeviceInformation_Request,
SWI_STRUCT_DeviceInformation_Response sDeviceInformation_Response,
U32  timeout 
)

This function is used to get fundamental information from the modem.

The information returned is determined by setting the eDeviceInformationType field of sDeviceInformation_Request.

Parameters:
[IN] sDeviceInformation_Request: struct must be filled out to select type of information returned.
[OUT] sDeviceInformation_Response: struct returned will contain the requested information.
[IN] timeout: Response timeout value in milliseconds.
Returns:
See SWI_RCODE for additional information.
See also:
SWI_STRUCT_DeviceInformation_Request

SWI_STRUCT_DeviceInformation_Response

SWI_API SWI_RCODE SwiGetFeatureCustomizations ( SWI_STRUCT_FeatureCustomizations sCustomizations,
U32  timeout 
)

This function is used to retrieve the modem's customizable features.

This function is only supported on GSM devices.

Parameters:
[OUT] sCustomizations Modem feature customizations.
[IN] timeout: Response timeout value in milliseconds.
Returns:
SWI_RCODE_OK: The request has been processed and values returned are valid.

See SWI_RCODE for other error return codes.

See also:
SWI_STRUCT_FeatureCustomizations

SWI_API SWI_RCODE SwiGetFirmwareBuildDate ( LPTSTR  szBuildDate,
U32  sizeBuffer,
U32  timeout 
)

This function returns the date the device's firmware was created.

Parameters:
[OUT] szBuildDate: Firmware build date. The firmware build date string is in the form of MM/DD/YY.
[IN] sizeBuffer: Size of buffer provided for the firmware build date
[IN] timeout: Response timeout value in milliseconds
Returns:
See SWI_RCODE for additional information.

SWI_API SWI_RCODE SwiGetFirmwareVersion ( LPTSTR  szFWVersion,
U32  sizeBuffer,
U32  timeout 
)

This function returns the device's firmware version in a string.

The firmware version string varies in length. It is recommended that a character string of 80 characters be allocated to store this return value.

Parameters:
[OUT] szFWVersion: Firmware version (NULL terminated)
[IN] sizeBuffer: Size of buffer provided for the firmware version.
[IN] timeout: Response timeout value in milliseconds
Returns:
See SWI_RCODE for additional information.

SWI_API SWI_RCODE SwiGetFlashImgInfo ( SWI_STRUCT_FlashImgInfo pFlashImgInfo,
U32  timeout 
)

This function is used to retrieve firmware flash information from the device.

Parameters:
[IN/OUT] pFlashImgInfo: Pointer to a SWI_STRUCT_FlashImgInfo which specifies the flash image type to retrieve. This structure also contains the flash image information returned from the device. See SWI_STRUCT_FlashImgInfo for additional information.
[IN] timeout: Response timeout value in milliseconds.
Returns:
SWI_RCODE_OK: The device has received the request. See SWI_STRUCT_FlashImgInfo::eResult for actual request result.

See SWI_RCODE for other error return codes.

See also:
SWI_STRUCT_FlashImgInfo

SWI_API SWI_RCODE SwiGetFPGAVersion ( U32 *  major,
U32 *  minor,
U32  timeout 
)

This function is used to retrieve the FPGA version.

This function is only supported on GSM devices.

Parameters:
[OUT] major: FPGA major version
[OUT] minor: FPGA minor version
[IN] timeout: Response timeout value in milliseconds
Returns:
SWI_RCODE_OK: The request has been processed and values returned are valid.

See SWI_RCODE for other error return codes.

SWI_API SWI_RCODE SwiGetHardwareVersion ( LPTSTR  szHWVersion,
U32  sizeBuffer,
U32  timeout 
)

This function returns the device's hardware version in a string.

Parameters:
[OUT] szHWVersion: Hardware version (NULL terminated). The firmware version string varies in length. It is recommended that a character string of 80 characters be allocated to store this return value. The returned string is null terminated.
[IN] sizeBuffer: Size of buffer provided for the hardware version
[IN] timeout: Response timeout value in milliseconds
Returns:
See SWI_RCODE for additional information.

SWI_API SWI_RCODE SwiGetImei ( SWI_STRUCT_Imei pImei,
U32  timeout 
)

This function is used to fetch the International Mobile Equipment Identity (IMEI) from the modem. The IMEI consists of:

  • Type Approval Code (TAC)
  • Final Assembly Code (FAC)
  • Serial Number (SNR)

This function is only supported on GSM devices.

Parameters:
[OUT] pImei: IMEI
[IN] timeout: Response timeout value in milliseconds.
Returns:
SWI_RCODE_OK: The request has been processed and values returned are valid.

See SWI_RCODE for other error return codes.

See also:
SWI_STRUCT_Imei

SWI_API SWI_RCODE SwiGetModemDisable ( bool *  pModemDisable,
U32  timeout 
)

This function returns the modem On/Off state.

The modem disable setting will persist though the modem's power may be cycled.

This function is only supported on GSM devices.

Parameters:
[OUT] pModemDisable: True is returned if the modem is disabled, false otherwise.
[IN] timeout: Response timeout value in milliseconds.
Returns:
SWI_RCODE_OK: The disable modem setting has been returned from the modem.

See SWI_RCODE for other error return codes.

See also:
SwiSetModemDisable

SWI_NOTIFY_ModemDisabled

SWI_API SWI_RCODE SwiGetPriInfo ( SWI_STRUCT_PriInfo pPriInfo,
U32  timeout 
)

This function is used to retrieve PRI information of the device.

Parameters:
[OUT] pPriInfo: Pointer to a SWI_STRUCT_PriInfo to store the PRI information.
[IN] timeout: Response timeout value in milliseconds.
Returns:
SWI_RCODE_OK: The request has been received.

See SWI_RCODE for other error return codes.

See also:
SWI_STRUCT_PriInfo

SWI_API SWI_RCODE SwiGetSerialNumber ( SWI_STRUCT_Fsn sFsn,
U32  timeout 
)

This function is used to retrieve the Factory Serial Number (FSN). The FSN contains information such as the manufacturing date, a unique serial number for each modem and the hardware version.

This function is only supported on GSM devices.

Parameters:
[OUT] sFsn: Factory Serial Number
[IN] timeout: Response timeout value in milliseconds
Returns:
SWI_RCODE_OK: The request has been processed and values returned are valid.

See SWI_RCODE for other error return codes.

See also:
SWI_STRUCT_Fsn

SWI_API SWI_RCODE SwiGetUsbdInfo ( SWI_STRUCT_UsbdInfo pUsbdInfo,
U32  Timeout 
)

This function is used to retrieve the USB descriptor build information.

Parameters:
[OUT] pUsbd: Structure to store USB descriptor build information
Returns:
See SWI_RCODE for additional information.
See also:
SWI_STRUCT_UsbdInfo

SWI_API SWI_RCODE SwiHostAppLaunch ( U32  timeout  ) 

This function is used to inform the modem when the host software application has launched.

This function is only supported on GSM devices.

Parameters:
[IN] timeout: Response timeout value in milliseconds
Returns:
SWI_RCODE_OK: The request was received by the modem.

See SWI_RCODE for other error return codes.

SWI_API SWI_RCODE SwiModemReset ( U32  timeout = 1000  ) 

This function is used to perform a hard reset of the modem. The driver will attempt to perform a hardware reset.

Only supported on AirCard 710, AirCard 750, AirCard 775, AirCard 850, and AirCard 860 devices. New devices will ignore this command. Use SwiSoftModemReset to perform a soft reset.

Parameters:
[IN] timeout: Response timeout value in milliseconds to use (default 1 second).
Returns:
SWI_RCODE_OK: The request has been received.

See SWI_RCODE for other error return codes.

SWI_API SWI_RCODE SwiSetHostStartup ( bool  bStartup,
U32  timeout 
)

This function controls the radio power state.

This function is similar to SwiSetModemDisable. When called to "shutdown" the radio, the modem will detach from the network and power down the radio. Unlike SwiSetModemDisable, however, this powered down state is NOT persistent across modem power cycles.

When called to "startup" the radio, the modem will power on the radio and attempt to attach to a network (if available).

It is recommended that this function be called with the "shutdown" parameter when the host application shuts down or when the PC enters a suspend state.

It is recommended that this function be called with the "startup" parameter when the host application initially starts up and after resuming from a PC suspend state.

A change in the radio's power state will be signaled with a SWI_NOTIFY_ModemDisabled indication.

This function is only supported on GSM devices.

Parameters:
[IN] bStartup: Set to true to power up the radio and attempt to attach to a network (if available). Set to false to detach from the network and power down the radio.
[IN] timeout: Response timeout value in milliseconds.
Returns:
SWI_RCODE_OK: The request was received by the modem. The result of the request is indicated in a SWI_NOTIFY_ModemDisabled notification.

See SWI_RCODE for other error return codes.

See also:
SWI_NOTIFY_ModemDisabled

SWI_API SWI_RCODE SwiSetModemDisable ( const bool  bModemDisable,
U32  timeout 
)

This function can be used to change the modem disable setting on the modem.

The modem disable setting will persist though the modem's power may be cycled. Switching modem state from OFF to ON may result in a modem reset.

This function is only supported on GSM devices.

Parameters:
[IN] bModemDisable:
  • Specify true to disable the modem.
  • Specify false to enable the modem.
[IN] timeout: Response timeout value in milliseconds.
Returns:
SWI_RCODE_OK indicates the request was received by the modem. The result of the request is indicated in a SWI_NOTIFY_ModemDisabled notification .

See SWI_RCODE for other error return codes.

See also:
SWI_NOTIFY_ModemDisabled

SwiGetModemDisable

SWI_API SWI_RCODE SwiSoftModemReset (  ) 

This function is used to perform a soft modem reset.

SWI_NOTIFY_Reset is generated after the reset has completed. Note that the driver may also unload and reload when a modem reset occurs. SWI_NOTIFY_AirServerChange notifications are also generated in this scenario.

Returns:
See SWI_RCODE for additional information.
See also:
SWI_NOTIFY_Reset

SWI_NOTIFY_AirServerChange


Generated on Fri Oct 2 10:27:30 2009 for 3G SDK by  doxygen 1.5.9