Open main menu

DAVE Developer's Wiki β

Changes

XUELK-AN-001: Using WiFi-Bluetooth combo plugin with SBC Lynx

2,123 bytes added, 16:37, 12 February 2021
no edit summary
{{InfoBoxTop}}
{{AppliesToSBCLynx}}
{{AppliesToDWM AN}}
{{AppliesTo AXEL ULite AN}}
{{AppliesTo SBC Lynx AN}}
 
{{InfoBoxBottom}}
{{WarningMessage|text=This application note was validated against specific versions of the kit only. It may not work with other versions. Supported versions are listed in the ''History'' section.}}
{{ImportantMessage|text=Regarding the Molex antenna used in this AN. It is valid only for '''No EU''' countries - see [https://www.lairdconnect.com/documentation/regulatory-information-tiwi-ble link]}}
== History ==
{| class="wikitable" border="1"
!Notes
|-
|{{oldid|6665|1.0.0}}
|August 2016
|1.0.0
|1.0.0
|August 2016
|First public release
|-
|{{oldid|6756|1.2.0}}
|May 2017
|1.2.0
|Update for new XUELK release
|-
|2.0.0
|September 2017
|2.0.0
|Validated on latest XUELK release
|}
 
==Introduction==
[[:Category:SBC_Lynx|SBC Lynx]] can be populated with [[Wireless_Module_(DWM)|DWM WiFi/Bluetooth combo plugin]] to easily add wireless connectivity.
This application note describes how to enable these interfaces when working with [[AXEL_ULite_and_SBC_Lynx_Embedded_Linux_Kit_(XUELK)#XUELK_software_components|XUELK 1.0.0]]
[[File:TBDSBCLynx-DWM-antenna.png|thumb|center|600px|SBC Lynx equipped with WiFi-Bluetooth combo plugin (DWM)and antenna]]
===Limitations===
DWM wireless module shares some signals with mezzanine board connector J53. Thus, when DWM module is used, the following signals must be left floating:
==Usage==
Software delivered along with Starting from version [[AXEL_ULite_and_SBC_Lynx_Embedded_Linux_Kit_(XUELK)#XUELK_software_components|XUELK 1.0.0]], the software delivered along with [[AXEL_ULite_and_SBC_Lynx_Embedded_Linux_Kit_(XUELK)|XUELK]] provides all the required stuff - specifically stuff—specifically device drivers and user space tools - to tools—to enable and use wireless interfaces. The following sections describe this in more detail.
===Calibration===
As known, the radio chipset integrated in the plugin requires a [[Wireless_Module_(DWM)#Calibration_process|calibration file (NVS)]] to set radio parameters.
 
The root file system delivered along with XUELK contains a calibration file (<code>wl1271-nvs.bin</code>) that was produced under the following conditions:
*Antenna: [http://www.molex.com/molex/products/datasheet.jsp?part=active/0479500011_ANTENNAS.xml Molex 47950-0011]
*Initialization data: The following file was used "''WLAN INI: ETSI all certified antennas''", provided by LS Research. For more details please refer to [https://www.lairdconnect.com/documentation/wlan-ini-etsi-all-certified-antennas this page].
**File name: <code>930-0056.zip</code>
**md5: <code>f16da1e1c1ea3cc3cca295931d454a43</code>
*Firmware
**File name: <code>wl127x-fw-5-plt.bin</code>
**Version: <code>6.3.10.0.133</code>
 
{{ImportantMessage|text=For [[AXEL_ULite_and_SBC_Lynx_Embedded_Linux_Kit_(XUELK)#XUELK_software_components|XUELK releases]] 1.1.3 and older, please replace the calibration file in the target's root file system (<code>/lib/firmware/ti-connectivity/wl1271-nvs.bin</code>) with this one:
*https://mirror.dave.eu/lynx/DWM/20170331/wl1271-nvs.bin
*md5: <code>5e331d2ca1590b711dc8676085bf8ad6</code>
}}
 
===Detection upon bootstrap===
During the Linux kernel bootstrap, the following messages are printed out during the detection of the wireless chipset:
<pre>
wlcore: loaded
</pre>
===WiFi(client mode)===
The following example shows how to:
*enable WiFi interface, configured as <code>wlan0</code>
===Bluetooth===
To enable Bluetooth interface, <code>gpio135</code> must be set to 1 first:<pre>root@sbc-lynx:~# echo 135 > /sys/class/gpio/exportroot@sbc-lynx:~# echo out > /sys/class/gpio/gpio135/directionroot@sbc-lynx:~# echo 1 > /sys/class/gpio/gpio135/value</pre>Then it It is possible to attach the physical device to <code>[http://www.bluez.org/ BlueZ stack</code> ] and start using it via HCI tools: 
<pre>
root@sbc-lynx:~# hciattach -t 60 /dev/ttymxc1 texas 115200
00:02:72:C6:40:16 virt
</pre>
 
 
{{ImportantMessage|text=For XUELK 1.1.3 and below, to enable Bluetooth interface, <code>gpio135</code> must be set to 1 first
 
<pre>
root@sbc-lynx:~# echo 135 > /sys/class/gpio/export
root@sbc-lynx:~# echo out > /sys/class/gpio/gpio135/direction
root@sbc-lynx:~# echo 1 > /sys/class/gpio/gpio135/value
</pre>
 
}}
 
====Performance tests====
The following examples show two throughput performance tests, run at L2CAP layer. The connection has been established with a PC equipped with Bluetooth USB dongle Asus USB BT400.
In the first test data originates at the SBC Lynx and is sent to the host PC that is configured as follows:
a000298_approval, dave_user
299
edits