NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.
CC3200 Transceiver Mode
Contents
Overview[edit]
TX continuous functionality is part of the SimpleLink Transceiver mode. In this mode, the SimpleLink device is able to communicate directly over the Wi-Fi PHY layer, i.e. bypass the Network Stack, the WiFi driver and the MAC layer. In this mode, the user is given with a full flexibility in building the transmitted packet.
The RX Statistics feature is used to determine some important parameters about the medium and the CC3200 RX mechanism. The RX Statistics provides data about:
- RSSI – receive power in dbm units
- RSSI histogram, between -40 - -87 dbm in resolution of 8 dbm
- Average RSSI divided to DATA + CTRL / MANAGEMENT
- Received frames – divided into valid frames, FCS error and PLCP error frames
- Rate histogram – creates an histogram of all BGN rates 1mbps-MCS7
Application details[edit]
This example demonstrates building a proprietary protocol on top of Wi-Fi PHY layer and the user is given full flexibility to build his own packet.
It is important to notice that the first two bytes of the raw data are Wi-Fi PHY layer specific. The description is as follows:
- 1st byte: Wi-Fi rate. Definition for rate options can be found in wlan.h, RateIndex_e structure.
- 2nd byte: 4 bits of power level and 4 bits of preamble type.
E.g: Defining a ping packet as a raw data structure:
char RawData_Ping[] = { /*---- wlan header start -----*/ 0x88, /* version , type sub type */ 0x02, /* Frame control flag */ 0x2C, 0x00, 0x00, 0x23, 0x75, 0x55,0x55, 0x55, /* destination */ 0x00, 0x22, 0x75, 0x55,0x55, 0x55, /* bssid */ 0x08, 0x00, 0x28, 0x19,0x02, 0x85, /* source */ 0x80, 0x42, 0x00, 0x00, 0xAA, 0xAA, 0x03, 0x00, 0x00, 0x00, 0x08, 0x00, /* LLC */ /*---- ip header start -----*/ 0x45, 0x00, 0x00, 0x54, 0x96, 0xA1, 0x00, 0x00, 0x40, 0x01, 0x57, 0xFA, /* checksum */ 0xc0, 0xa8, 0x01, 0x64, /* src ip */ 0xc0, 0xa8, 0x01, 0x02, /* dest ip */ /* payload - ping/icmp */ 0x08, 0x00, 0xA5, 0x51, 0x5E, 0x18, 0x00, 0x00, 0x41, 0x08, 0xBB, 0x8D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ..... };
The RX Statistics feature is used to inspect the medium in terms of congestion, distance, validate the RF hardware, and help, using the RSSI information, positioning the CC3200 in an ideal spot.
Note: More details on Transceiver Mode are available at CC3x00 Transceiver Mode Page
Source Files briefly explained[edit]
- main - Demonstrates sending a Raw Ping packet in Tx continues and usage of different API for getting the Rx Statistics.
- uart_logger - To display status information over the UART
Usage[edit]
- Setup a serial communication application (HyperTerminal/TeraTerm). For detail info visit Terminal setup.
On the host PC. The settings are:
- Port: Enumerated COM port
- Baud rate: 115200
- Data: 8 bit
- Parity: None
- Stop: 1 bit
- Flow control: None
- Run the reference application (Flashing the bin/IAR/CCS).
- Observe the status messages on the host over serial port to understand the sequence of operations performed by the application.
- Terminal snapshot when application runs on device-
Limitations/Known Issues[edit]
- TX continuous and Rx Statistics works in Wi-Fi disconnected mode only.
- The user needs to make sure the connection policy is not set to auto/fast mode.
- Since RX statistics is currently limited to disconnected mode, it is used only in transceiver mode, i.e. with raw socket.
Archives[edit]
The latest software packages are the ones which are currently supported.
Links[edit]
{{#invoke: Navbox | navbox }} {{#invoke: Navbox | navbox }}