The MKW2x series devices offer an antenna diversity feature for applications that may be in highly reflective environments. Reflective environments create multipath fading and signal nulls where signals are reflected or scattered arriving at the receiver with polarization changes and attenuated. Antenna diversity is implemented with two antenna’s which are separated and have offset orientation which allows the transceiver to statistically improve the chance to receive the RF signal outside the dynamic range of the system.
Basic system operation:
When the antenna diversity feature is enabled the receivers control signals switch between two antenna paths during the preamble phase until a valid preamble is found. Once the preamble is found, the receiver continues in normal packet processing mode. The same antenna used for receive is locked in place for the transmit sequence as well as CCA and Energy Detect sequences. The hardware-selected antenna will not change again until the next RX sequence since it is assumed the signal path is the better one of the two. The cycle repeats for the next receive sequence and so on.
Antenna diversity as implemented picks he first signal (antenna) that meets the features criteria and not necessarily the path with the highest power. The feature is used in situations where the application is setup at or near the dynamic range and the system and the possibility of interference exists.
Circuitry implementation:
There are up four control signals that can be used depending on the external RF switch or FEM (PA plus LNA for extended range applications) used. This is shown in the following Figure 1 with a simple RF switch.
Figure 1: Simplifed Antenna Diversity Block Diagram
As with all RF circuit design, care must be taken with PCB layout as well as circuitry topology in order to maximize both transmitter power and receiver sensitivity. This is discussed in topic; RF layout design considerations for manufacturing.
Fast Antenna Diversity (FAD) Software Support:
The 802.15.4 PHY provides the following API to configure the FAD feature:
- PhyPlmeSetFADStateRequest
- PhyPlmeSetFADThresholdRequest
- PhyPlmeSetANTXStateRequest
- PhyPlmeGetANTXStateRequest
To use the FAD feature, one must use the PhyPlmeSetFADThresholdRequest() to set the correlator threshold at which the antenna will be selected, and call PhyPlmeSetFADStateRequest() to enable the FAD functionality.
When FAD is enabled, the PhyPlmeSetANTXStateRequest() function can be used to set the starting antenna. If FAD is disabled, this function will actually set he active antenna!
To retrieve the antenna selected by the hardware one must call PhyPlmeGetANTXStateRequest().
For more information please consult the 802.15.4 MAC_PHY Software Reference Manual documentation included in the BeeKit Wireless Connectivity Toolkit.