TiWi-R2

Bluetooth® Smart Ready and 802.11 b/g/n Wi-Fi Module

The TiWi-R2 is Not Recommended for New Designs (NRND). The TiWi-BLE is the footprint and electrically compatible module that should be used in place of the TiWi-R2. The TiWi-BLE adds Bluetooth® Low Energy (BLE) functionality in addition to WiFi and Bluetooth®.

The TiWi-R2 Bluetooth® and WiFi module is a high performance 2.4 GHz IEEE 802.11 b/g/n Bluetooth® 2.1+EDR radio in a cost effective, pre-certified footprint.

The module realizes the necessary PHY/MAC layers to support WLAN applications in conjunction with a host processor over a SDIO interface.

The module also provides a Bluetooth® platform through the HCI transport layer. Both WLAN and Bluetooth® share the same antenna port.

ETSI v1.8.1 Compliance

No hardware design changes are necessary to meet ESTI v1.8.1 compliance with the module. The module itself also required no changes to meet compliance. To ensure compliance, software may need to be updated on the host system.

WLAN:

To ensure compliance with ETSI v1.8.1 be sure to update the WLAN driver to release "ol_R5.SP7.01". Please see the Linux Driver section below for more information.

After updating the driver be sure to re-calibrate the module with an INI file from LSR.

Bluetooth:

To ensure compliance with ETSI v1.8.1 make sure the latest Bluetooth patch file (.bts) is installed on the host file system. The latest .bts files can be downloaded on the LSR website. Be sure to rename the .bts file once placed on the file system to ensure it is used by the Bluetooth drivers. For TiWi-R2 the file should be named "TIInit_7.2.31.bts".

Linux Driver

After fetching the script be sure to change the version tag at the top of wl12xx_build.sh to the desired release version. At the time of this writing the latest version tag is "ol_R5.SP7.01".

NOTE: The ol_R5.SP7.01 driver is the latest official release from TI. This driver version has been tested for EMC compliance with the LSR module. If you are using a driver other than this release, verification should be done to ensure the module will be EMC compliant. Please contact LSR for assistance with this verification testing.

After the driver is built and installed on the target system be sure to calibrate each module. Calibration ensures optimum RF performance as well and EMC compliance. If the module is not calibrated it will void all modular certifications. Be sure to use an INI file from the LSR website and follow the calibration instructions. The calibrator utility should have been downloaded and built with the driver script above. See here: WL12xx Calibration Steps

Kernel version 3.5 and later

The last official driver release for the WL12xx was based on kernel v3.2. There are no further releases planned for newer kernels. The WL12xx drivers are included in newer kernels but each kernel may have a different driver. This requires that the end user ensure the driver and firmware are correct for the WL12xx.

Here are some steps that LSR has put together for getting the WL12xx driver running in newer kernels. These steps were tested on kernel v3.12 for TI's AM335x.

A new block for MMC2, which references a new pin mux table (wilink_pins) and a new regulator definition (vmmc_wl).

The new pin mux table (wilink_pins) that configures the pinmux for the pins needed for the MMC2 bus.

The new regulator definition (vmmc_wl). Most important thing here is to get the gpio setting correct, matching the WLAN_EN signal into the TiWi module.

A new block for the wlcore. The gpio setting is important. It should be configured to the GPIO connected to the WLAN_IRQ. The platform-quirks setting may or may not be important. There is only a single bit used here, bit 0, which sets whether to use level or edge interrupts on the IRQ. The board-ref-clock setting is also important and needs to be set based on which TiWi is being used.

These are normally distributed as files named wl127x-fw-4-*.bin. These need to be renamed to wl127x-fw-5-*.bin and placed inside /lib/firmware/ti-connectivity/ for the driver to find and load them correctly. These firmware files were obtained from the ti-utils git repository (git://github.com/TI-OpenLink/ti-utils.git) using the tag ol_R5.SP7.01.

After the driver is working the same calibration steps listed for kernel v3.4 and earlier should be followed.

MAC Address

The module comes with a MAC address fused into the WL12xx chipset. This MAC is used by default for the Bluetooth core and can be used as the WLAN MAC address as well. The MAC address is set at calibration time for WLAN. To use the built in MAC address for WLAN be sure to pass a MAC address of 00:00:00:00:00:00 as a parameter to the autocalibrate function. To set a custom MAC address for WLAN just pass the desired value into the autocalibrate function. See here for details on the WLAN MAC address: WL12xx MAC Address

To change the MAC address for Bluetooth a VS command must be issued each time after the Bluetooth core is powered on. See here for details on the VS command: Bluetooth write BD Addr

RF Testing

Before any RF testing is performed, be sure to calibrate the module. When calibrating the module be sure to use an LSR approved INI file.