Sterling™-LWB5+ WiFi 5 + Bluetooth 5.2 Module / USB Adapter

Recommended for New Design (RND)

Overview

New: Pluggable USB-A Wi-Fi 5 adapter for Linux devices!

Ezurio's (formerly Laird Connectivity) customers across multiple industries have a diverse set of requirements and specific needs. They asked for a truly robust industrial IoT wifi module: one that’s rugged, small, simplifies their BOM, is globally certified, has reliable connectivity, and easy to integrate.

Ezurio's Sterling-LWB5+ embedded wifi module answers that call for next-gen wireless IoT. Powered by Infineon’s CYW4373E silicon, the Sterling-LWB5+ is purpose-built for IIoT connectivity through a secure, reliable, and robust feature set. It’s IoT from the start: fully certified, easy to integrate, and is the fastest route to the market for IoT.

  • Purpose Built:  Made with manufacturability in mind, and pre-certified to cut down barriers to entry.  
  • Compatible: Our Linux Backports package supports many Linux kernels.
  • Reliable:  Integrated PA (Power Amplifier) and LNA (Low Noise Amplifier) with antenna diversity for reliable connectivity in harsh RF environments.
  • Robust:  Rich feature-set including 802.11ac Wi-Fi and Dual-Mode Bluetooth Low Energy. Reliable in industrial temperature range, and solder-down module is suitable for industrial vibration and impact demands.
  • Secure:  Supports the latest WPA2/WPA3 Personal/Enterprise security standards.

Premium Wi-Fi Advantage

The road to bringing wireless to your product is perilous and long – but it doesn’t have to be. These are the pillars of our value as a partner and provider: Excellence in development across hardware and software, delivered with industry-best support and deployed around the world in the markets that drive your business success.

Learn More

icon-wifi-advantage1.png

Ezurio is an Infineon Premium Partner

Ezurio is honored to be approved as an Infineon Premium Partner. A partnership which leverages Infineon’s AIROC™ Wi-Fi chipsets and ModusToolbox™ solutions combined with Ezurio's superior software enablement and integration support.

Learn More

INFIN_Premium_Partner_Signet_Update.png

Orion Development Boards

A collaboration Between Future Electronics and Ezurio

The Orion development boards are designed by Future Electronics to showcase our Sterling™-LWB+ (Infineon CYW43439) and Sterling-LWB5+ (Infineon CYW4373E) embedded Wi-Fi modules, which are based on the Infineon AIROC chipsets. The Orion design makes application development and evaluation easy. Both boards support the ST Micro Nucleo-144 adaptor for easy evaluation with STM32 MCUs and MikroBus header that enables further expansion. Both of our modules are supported by Infineon’s STM32 Connectivity Expansion Pack 1.5.1 for STM32CubeMX tool, for ease of application development.

Click below to request a kit from Future Electronics.

Request a Kit

Integration Guide

orion-boards.png

Development Kits

  • 453-00045-K1

    453-00045-K1

    Recommended for New Design (RND)
    Antenna Type
    Internal, Chip Antenna
    Description
    Sterling LWB5+ 802.11ac / Bluetooth 5.0 Development Board (Chip Antenna)
    Logical Interfaces
    SDIO, Serial, USB
    Learn More
  • 453-00046-K1

    453-00046-K1

    Recommended for New Design (RND)
    Antenna Type
    External, MHF4 Connector
    Description
    Sterling LWB5+ 802.11ac / Bluetooth 5.0 Development Board (External Antenna)
    Logical Interfaces
    SDIO, Serial, USB
    Learn More
  • 453-00048-K1

    453-00048-K1

    Recommended for New Design (RND)
    Antenna Type
    External, MHF4 Connector
    Description
    Sterling LWB5+ 802.11ac / Bluetooth 5.0 Development Kit for M.2 Key E (SDIO/UART)
    Logical Interfaces
    SDIO, Serial
    Learn More
  • 453-00049-K1

    453-00049-K1

    Recommended for New Design (RND)
    Antenna Type
    External, MHF4 Connector
    Description
    Sterling LWB5+ 802.11ac / Bluetooth 5.0 Development Kit for M.2 Key E (USB/USB)
    Logical Interfaces
    USB
    Learn More

Certified Antennas

  • 001-0021

    001-0021

    FlexPIFA / FlexPIFA 6E Flexible Adhesive-Backed PIFA Internal Antennas

    Dual band antenna with MHF4L connector

    Learn More
  • EMF2449A1-10MH4L

    EMF2449A1-10MH4L

    Mini NanoBlade Flex / Flex 6E Series Internal Antenna
    Learn More
  • ENB2449A1-10MH4L

    ENB2449A1-10MH4L

    Nanoblade Series Internal Antenna
    Learn More

Specifications

Wireless Specification
Wi-Fi 5 (802.11ac)
Bluetooth 5.2 Low Energy
Chipset (Wireless)
Infineon (Cypress) CYW4373E
Dimension (Width - mm)
12
Dimension (Length - mm)
17
Antenna Options
Chip antenna, trace pin, or MHF4 connector
Certifications
Module: FCC, ISED, UKCA, EU, MIC, KC, TW, SRRC, AS-NZS
USB Adapter: FCC, ISED, EU, UKCA, AS/NZS
Form Factor
Solderable module or M.2 E-key Module
Output Power
Integrated power amplifier and low noise amplifier
Wi-Fi Coexistence
Integrated coexistence
Part NumberAntenna TypeBulk or SingleChipset (Wireless)DescriptionFrequency Range (Max)Frequency Range (Min)Frequency Range 2 (Max)Frequency Range 2 (Min)Logical InterfacesOS/SoftwarePackagingProduct TypeSystem ArchitectureTechnology
Sterling-LWB5+ USB
450-00137Buy Now
Internal Single Infineon (Cypress) CYW4373E Sterling LWB5+ 802.11ac / Bluetooth 5.0 Pluggable USB Adapter - Single 2495 MHz2400 MHz5825 MHz5150 MHzUSB Linux Pluggable USB Adapter Hosted 802.11ac, Bluetooth 5.0
Sterling-LWB5+ USB
450-00137BBuy Now
Internal Bulk Infineon (Cypress) CYW4373E Sterling LWB5+ 802.11ac / Bluetooth 5.0 Pluggable USB Adapter - Bulk 2495 MHz2400 MHz5825 MHz5150 MHzUSB Linux Pluggable USB Adapter Hosted 802.11ac, Bluetooth 5.0
Sterling-LWB5+ with Chip Antenna (SMT)
453-00045C
Recommended for New Design (RND)
Buy Now
Internal, Chip Antenna Infineon (Cypress) CYW4373E Sterling LWB5+ 802.11ac / Bluetooth 5.0 Solderable Module (Chip Antenna) - Bulk 2495 MHz2400 MHz5825 MHz5150 MHzSDIO, Serial, USB Android, Linux Cut Tape Embedded Module Hosted 802.11ac, Bluetooth 5.0
Sterling-LWB5+ with Chip Antenna (SMT)
453-00045R
Recommended for New Design (RND)
Buy Now
Internal, Chip Antenna Infineon (Cypress) CYW4373E Sterling LWB5+ 802.11ac / Bluetooth 5.0 Solderable module (Chip Antenna) - Bulk 2495 MHz2400 MHz5825 MHz5150 MHzSDIO, Serial, USB Android, Linux Tape/Reel Embedded Module Hosted 802.11ac, Bluetooth 5.0
Sterling-LWB5+ with MHF4 Connector (SMT)
453-00046C
Recommended for New Design (RND)
Buy Now
External, MHF4 Connector Infineon (Cypress) CYW4373E Sterling LWB5+ 802.11ac / Bluetooth 5.0 Solderable module (External Antenna) - Single 2495 MHz2400 MHz5825 MHz5150 MHzSDIO, Serial, USB Android, Linux Cut Tape Embedded Module Hosted 802.11ac, Bluetooth 5.0
Sterling-LWB5+ with MHF4 Connector (SMT)
453-00046R
Recommended for New Design (RND)
Buy Now
External, MHF4 Connector Infineon (Cypress) CYW4373E Sterling LWB5+ 802.11ac / Bluetooth 5.0 Solderable Module (External Antenna) - Bulk 2495 MHz2400 MHz5825 MHz5150 MHzSDIO, Serial, USB Android, Linux Tape/Reel Embedded Module Hosted 802.11ac, Bluetooth 5.0
Sterling-LWB5+ with Antenna Trace Pin (SMT)
453-00047C
Recommended for New Design (RND)
Buy Now
External, Trace Pin Infineon (Cypress) CYW4373E Sterling LWB5+ 802.11ac / Bluetooth 5.0 Solderable Module (Trace Pin) - Bulk 2495 MHz2400 MHz5825 MHz5150 MHzSDIO, Serial, USB Android, Linux Cut Type Embedded Module Hosted 802.11ac, Bluetooth 5.0
Sterling-LWB5+ with Antenna Trace Pin (SMT)
453-00047R
Recommended for New Design (RND)
Buy Now
External, Trace Pin Infineon (Cypress) CYW4373E Sterling LWB5+ 802.11ac / Bluetooth 5.0 Solderable Module (Trace Pin) - Bulk 2495 MHz2400 MHz5825 MHz5150 MHzSDIO, Serial, USB Android, Linux Tape/Reel Embedded Module Hosted 802.11ac, Bluetooth 5.0
Sterling-LWB5+ with SDIO/UART (M.2)
453-00048
Recommended for New Design (RND)
Buy Now
External, MHF4 Connector Infineon (Cypress) CYW4373E Sterling LWB5+ 802.11ac / Bluetooth 5.0 M.2 Carrier Board (E-Type Key w/ SDIO/UART) 2495 MHz2400 MHz5825 MHz5150 MHzSDIO, Serial Android, Linux Embedded Module Hosted 802.11ac, Bluetooth 5.0
Sterling-LWB5+ with USB/USB (M.2)
453-00049
Recommended for New Design (RND)
Buy Now
External, MHF4 Connector Infineon (Cypress) CYW4373E Sterling LWB5+ 802.11ac / Bluetooth 5.0 M.2 Carrier Board (E-Type Key w/ USB) 2495 MHz2400 MHz5825 MHz5150 MHzUSB Android, Linux Embedded Module Hosted 802.11ac, Bluetooth 5.0

Documentation

Name Part Type Last Updated
Product Brief - Sterling-LWB5+ All Product Brief 04/19/2024
RoHS 3 Compliance - Wi-Fi Products All Certification 01/11/2024
AS/NZS Certifications - Sterling-LWB5+ Module All Certification 03/15/2022
CE Certifications - Sterling-LWB5+ Module All Certification 12/01/2022
FCC Certifications - Sterling-LWB5+ Module All Certification 03/15/2022
ISED (Canada) Certifications - Sterling-LWB5+ Module All Certification 03/15/2022
MIC Certifications - Sterling-LWB5+ M.2 Module All Certification 11/07/2023
MIC Certifications - Sterling-LWB5+ Module All Certification 11/07/2023
Datasheet - Sterling LWB5+ All Datasheet 10/21/2024
Datasheet - Sterling LWB5+ M.2 All Datasheet 10/21/2024
DVK Guide - Sterling LWB5+ All Documentation 12/08/2020
DVK Guide - Sterling LWB5+ M.2 All Documentation 12/08/2020
3D Models - Sterling-LWB5+ - Development Kits All Technical Drawings 01/25/2021
3D Models - Sterling-LWB5+ - M.2 Modules All Technical Drawings 01/25/2021
3D Models - Sterling-LWB5+ - SMT Modules All Technical Drawings 01/25/2021
LWB5+ PCB Footprint (DXF and Altium format) All Technical Drawings 12/22/2021
LWB5+ SCH Symbol (Altium format) All Technical Drawings 12/22/2021
Schematic - Sterling-LWB5+ Modules DVK v3.0 All Technical Drawings 02/05/2021
Schematics - Sterling LWB5+ M.2 Cards & M.2 DVK All Technical Drawings 02/05/2021
Regulatory Information - Sterling LWB5+ All Certification 11/07/2023
Software, Sona IF573 and Sterling-LWBx All Software 03/25/2024
Application Note - PetaLinux Software Integration - 60 Series and LWB Series All Application Note 08/13/2020
ISED ICES-003 Issue 7 Declaration of Compliance All Certification 05/18/2021
Product Brief - Sterling LWB5+ Pluggable USB Adapter All Product Brief 05/23/2024
Datasheet - Sterling LWB5+ USB Dongle All Datasheet 10/21/2024
PCN 10C-2021 - Sterling LWB5+ Series All Documentation 10/13/2021
Regulatory Information Guide - Sterling-LWB5+ USB Adapter All Certification 03/15/2022
AS/NZS Certifications - Sterling-LWB5+ USB Adapter All Certification 03/15/2022
CE Certifications - Sterling-LWB5+ USB Adapter All Certification 09/01/2022
FCC Certifications - Sterling-LWB5+ USB Adapter All Certification 03/15/2022
IC Certifications - Sterling-LWB5+ USB Adapter All Certification 03/15/2022
PCN 5A-2022 - Sterling LWB5+ USB Adapter All Documentation 05/23/2022
NCC Certifications - Sterling-LWB5+ All Certification 06/01/2022
KC Certifications - Sterling-LWB5+ All Certification 09/27/2022
SRRC Certifications - Sterling-LWB5+ All Certification 06/01/2022
Application Note - PSoC6 LWB5+ DVK Setup with ModusToolbox All Application Note 06/07/2022
PCN 6C-2022 - Sterling LWB5+ All Documentation 07/07/2022
Application Note - Supporting WPA3 Personal in LWB/LWB+/LWB5+ All Application Note 11/14/2022
Tutorials - Sterling LWB5+ All Application Note 11/20/2023
Integrating LWB5+ USB dongle onto STM32H747I-DISCO All Documentation 06/17/2024
Integrating LWB+/LWB5+ Future Orion on Nucleo-H723ZG All Documentation 06/17/2024
Sona IF and Sterling LWBx Software Integration Guide All Documentation 11/08/2024

FAQ

Is there a conflict between NotworkManager and systemd-networkd?

Yes, If you decide to use NetworkManager, then systemd-networkd should be removed from the system. We would recommend changing Yocto systemd PACKAGECONFIG to not build it into image.

What are the material used for LWB5+ module that makes contact with my circuit board? What type of gold is it and what is the thickness of it?

FINISH 2-5uIN IMMERSION GOLD PLATING OVER 100-240uIN ELECTROLESS NICKEL (ENIG). PER IPC-4552 (LATEST VERSION), NO EXPOSED BARE COPPER PERMITTED.

Is the I2S/PCM interface supported on LWB5+?

Yes, it is supported. Note that the primary use case is to support offloading Bluetooth Voice audio. The audio stream is used with HFP/HSP. It is not intended for use with A2DP.

How should date code be interpreted?

Date code is usually defined in datasheet. Taking an example below for LWB5, SSYYWWD = Date Code (SS=Manufacturer, YY=Year, WW=Week, D=Day)


     P/N             Date Code
    450-0169    0218365  


Refer to section 30, Device Markings, in https://www.ezurio.com/documentation/datasheet-sterling-lwb5

What is the maximum number of simultaneous Bluetooth connection I can make for LWB5+?

Ideally, you can connect upto 15 BT devices but the constraints are memory limit, connection parameters including connection interval, length of connection event, etc. 
 
For example, if we have multiple LE connections which are all with connection interval of 40ms and each connection's connection event is with 4 pairs of Tx/Rx, i.e. 5ms CE, then the max no. of LE connections will be 40/5=8. If  you need to do something else at the same time, such as maintaining a SCO connection, doing advertisement, etc. then you will definitely have less than 8 even for the LE connection with the same connection parameters. 

How can I achieve the lowest power state using hardware pins with LWB5+?

rfkill should shut off wifi transmission but you will need to disable Bluetooth as well.  

 

bluetoothctl power off  

 
Alternatively, you can blacklist the brcmfmac driver to not load wifi driver and power cycle board.  

 

Or if you have access to BT_REG_ON/WL_REG_ON, drive them low and radio will be held in reset. Then, there should be no transmission from radios for certain.  

There are three devices after insert LWB5+ USB dongle, what are these three devices?

The LWB5+ in USB/USB mode is two separate devices behind an internal hub.  Each of the LWB5+ devices has an interface as below.

ID 04b4:bd30 Cypress Semiconductor Corp.     ###  HUB ###

ID 04b4:640c Cypress Semiconductor Corp.     ###  BT  ###

ID 04b4:bd29 Cypress Semiconductor Corp.     ###  WiFi ###

What is the Mean Time Between Failures (MTBF) value for the Sterling-LWB5+?

The MTBF value for the Sterling-LWB5+ is 4531587.72 hours at 30C (Celsius) and 292581.92 hours at 85C.



How do I read the date code on the metal shield of a Sterling-LWB5+ Wifi Module?

The date code (DC) is read like this:

Example: DC 1122535

11 = internal code

22 = year

53 = week of year

5 = day of week


Is there a way to change the TX power in Infineon modules, IF573, LWB(5) and LWB(5)+ series?

There is no way without custom CLM blob and/or custom NVRAM which would require a custom firmware for individual customer and this is not the part that we will support by standard process.

In order to enable gpioset feature on a Linux platform, which packages need to be added by yocto?

Need to add libgpiod, libgpiod-dev and libgpiod-tools.

libgpiod containing libgpiod.so* files

libgpiod-dev containing /usr/include for the header files and /usr/lib for the shared lib's solink file and corresponding pkgconfig metadata.

libgpiod-tools containing gpiodetect, gpioget, …

Does LWB5+ support ACS (auto channel selection) in AP mode?

ACS requires support for the survey command.  Infineon 4373E radios don’t support this.

What is the ITU code for Wi-Fi with WiFi/BT combo module?

Mode

ITU-Code

2.4-2.4835GHz

-

802.11b_Nss1,(1Mbps)_1TX

12M2G1D

802.11g_Nss1,(6Mbps)_1TX

16M7D1D

802.11n HT20_Nss1,(MCS0)_1TX

17M9D1D

802.11n HT40_Nss1,(MCS0)_1TX

36M6D1D

5.15-5.25GHz

-

802.11a_Nss1,(6Mbps)_1TX

16M4D1D

802.11ac VHT20_Nss1,(MCS0)_1TX

17M6D1D

802.11ac VHT40_Nss1,(MCS0)_1TX

36M2D1D

802.11ac VHT80_Nss1,(MCS0)_1TX

75M7D1D

5.25-5.35GHz

-

802.11a_Nss1,(6Mbps)_1TX

16M4D1D

802.11ac VHT20_Nss1,(MCS0)_1TX

17M6D1D

802.11ac VHT40_Nss1,(MCS0)_1TX

36M2D1D

802.11ac VHT80_Nss1,(MCS0)_1TX

75M7D1D

5.47-5.725GHz

-

802.11a_Nss1,(6Mbps)_1TX

16M4D1D

802.11ac VHT20_Nss1,(MCS0)_1TX

17M7D1D

802.11ac VHT40_Nss1,(MCS0)_1TX

36M2D1D

802.11ac VHT80_Nss1,(MCS0)_1TX

75M8D1D

5.725-5.85GHz

-

802.11a_Nss1,(6Mbps)_1TX

16M4D1D

802.11ac VHT20_Nss1,(MCS0)_1TX

17M7D1D

802.11ac VHT40_Nss1,(MCS0)_1TX

36M2D1D

802.11ac VHT80_Nss1,(MCS0)_1TX

75M7D1D

What is the ITU code for BT with WiFi/BT combo module?

Mode

ITU-Code

2.4-2.4835GHz

-

BT-BR(1Mbps)

889KF1D

BT-EDR(3Mbps)

1M22G1D

BT-LE(1Mbps)

1M05F1D

 

What is the Orion Development Board?

The Orion Development Board is a collaboration between Ezurio and Future Electronics to showcase our Sterling-LWB+ and our Sterling-LWB5+.

There are two variants of the Orion Development Board:

  • FUT-ORION-LWB+ featuring:
    • Ezurio Sterling-LWB+
    • ST Micro Nucleo-144 adaptor to support the STM32 MCUs
    • SPI flash on board
    • MikroBus header for expansion
  • FUT-ORION-LWB5+ featuring:
    • Ezurio Sterling-LWB5+
    • ST Micro Nucleo-144 adaptor to support the STM32 MCUs
    • SPI flash on board
    • MikroBus header for expansion

The Orion boards make application development and evaluation easy. Both boards support the ST Micro Nucleo-144 adaptor for easy evaluation with STM32 MCUs and MikroBus header that enables further expansion. Both modules are supported by Infineon’s STM32 Connectivity Expansion Pack 1.5.1 for STM32CubeMX tool, for ease of application development.

How to activate SDIO on the M2 slot of the i.MX8 LPDDR4 DVK of NXP

After building a default image for the NXP i.MX8 LPDDR4 DVK device tree is such that M2 slot provides PCIe connectivity.

However, SDIO device tree is generated and available in the image.

The parameter "fdtfile=" in U-Boot needs to be changed.

Change "fdtfile=imx8mp-evk-revb4.dtb" to "fdtfile=imx8mp-evk-usdhc1-m2.dtb" by:

u-boot=> setenv fdtfile imx8mp-evk-revb4-usdhc1-m2.dtb
u-boot=> saveenv

Reference:

root@imx8mp-lpddr4-evk:~# ls /dev/mmc*
/dev/mmcblk2       /dev/mmcblk2boot0  /dev/mmcblk2boot1  /dev/mmcblk2p1     /dev/mmcblk2p2     /dev/mmcblk2rpmb
root@imx8mp-lpddr4-evk:~# mount /dev/mmcblk2p1 /media/
root@imx8mp-lpddr4-evk:~# ls /media | grep usdhc
imx8mp-evk-revb4-usdhc1-m2.dtb
imx8mp-evk-usdhc1-m2.dtb

Why am I getting an error in dmesg "brcmfmac: brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50" when trying to start my Sterling-LWB5+ radio?

I am getting an error in dmesg "brcmfmac: brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50" when trying to start my Sterling-LWB5+ radio.

In general, this error occurs when you do not have a 32kHz external oscillator in your design or it is mis-configured. This is required for all of the LWB series radios.

Here is more information about the oscillator:

Do any of your Wi-Fi radios work with ST Microprocessors?

If you are using any of these ST Microprocessors in your application, you can pair either the Sterling-LWB5+ or the Sterling-LWB+ using ST Micro's stm32cubeide.

  • STM32H7xx
  • STM32L5xx
  • STM32U5xx
  • STM32H5xx

Do any of your Wi-Fi radios work with a PSOC6?

If you are using an Infineon PSOC6 Microprocessor in your application you can pair either the Sterling-LWB5+ or the Sterling-LWB+ using Infineon's ModusToolbox software.

Does the LWB5+ work with an RTOS?

While the Sterling-LWB5+ does not have an onboard MCU, if you are using a PSOC6 or certain ST Microprocessors in your application you can use the Sterling-LWB5+.

PSOC6

The Sterling-LWB5+ can be used with the Infineon PSOC6 through use of their ModusToolbox software.

ST Micro

The Sterling-LWB5+ can be used with stm32cubeide on these Microprocessors:

  • STM32H7xx
  • STM32L5xx
  • STM32U5xx
  • STM32H5xx

How do I send a file via Bluetooth on the LWB5+ Dongle?

This is one way to send a file via Bluetooth.

Please Reference this FAQ on what recipies to add to your buiid: Yocto recipie to support Bluetooth

        
# bluetoothctl 
    [bluetooth]# power on 
    [bluetooth]# pairable on 
    [bluetooth]# scan on 
Now, Copy the MAC Address of the device you would like to pair with
    [bluetooth]# scan off 
    [bluetooth]# pair   (You will need to confirm pairing on both devices)
    [bluetooth]# trust  
    [bluetooth]# quit 
# export $(dbus-launch) 
# /usr/libexec/bluetooth/obexd -r /Bluetooth/ -a -d -n & (the -d turns on dubbing, you can remove this)
# obexctl 
    [obex]# connect  
    [obex]# send
    [obex]# quit 
    

Can loopback mode be activated on the LWB5+ Bluetooth module for conducting test operations?

The LWB5+ Bluetooth UART with HCI (Host Controller Interface) supports an internal loopback mode that can be enabled.

There are two loopback modes available for testing purposes: a Local Loopback Mode, and a Remote Loopback Mode.

These modes are defined in the BLUETOOTH CORE SPECIFICATION Version 5.4 | Vol 2, Part F, Section 8

Method: Loopback Test using hcitool to loopback from the Host to the LWB5+ and back to the Host:

To receive a Loopback_Command_Event, you would send an HCI Loopback Command to the Bluetooth device. This command instructs the device to send back a Loopback_Command_Event containing the data from the original command. Here's a generic example using hcitool on Linux:

hcitool -i hci0 cmd 0x03 0x0002 0x01 0x02 0x03 0x04

In this example:

  • hci0 is the device number of the Bluetooth interface. Adjust this to match your interface number.
  • 0x03 is the OGF (Opcode Group Field) for HCI Host Controller & Baseband Commands.
  • 0x0002 is the OCF (Opcode Command Field) for HCI Loopback Command.
  • The remaining bytes 0x01 0x02 0x03 0x04 are the data to be looped back.

This command is not permanent and will only loop back the 4 bytes of data sent with the command. You can manually toggle the RTS or CTS lines to watch the data pause and then resume.

How can RTS/CTS (Hardware Flow Control) be enabled on the Bluetooth /dev/tty* UART port in Linux for a Wi-Fi Module with integrated Bluetooth?

Configure the UART parameters using stty before running btattach. Use the "crtscts" option to enable RTS/CTS.

Note: Here, crtscts is the option to enable RTS/CTS hardware flow control on the serial port, and -crtscts is the option to disable RTS/CTS hardware flow control. Note the hyphen (Enable = crtscts, Disable = -crtscts)

stty -F /dev/ttymxc0 crtscts

(Make sure to change the "/dev/ttymxc0" to your actual device.)

After you have set RTS/CTS flow control, you can check the current settings of your UART device with the stty command to ensure that it is correctly configured:

stty -F /dev/ttymxc0 -a

This command will display all the settings for the specified UART device. Look for crtscts in the output, which indicates that RTS/CTS flow control is enabled.

To disable RTS/CTS hardware flow control on a serial port using the stty command, you can use the -crtscts option (including the hyphen).

stty -F /dev/ttymxc0 -crtscts


I am planning on using kernel 6.1 (mickledore), is there anything I need to be aware of?

There was a change in kernel 5.19 and higher, lrd-11 is built against the kernel 6.1 kernel backports), where there is a requirement to add cfg80211 to your image as a module (m) in the base platform kernel configuration. It must not be left out and must not be included as built-in (y). Networking support->Wireless->cfg80211 - wireless configuration API

Do I need to do anything differently in lrd-11 release?

There was a change in kernel 5.19 and higher, lrd-11 is built against the kernel 6.1 kernel backports), where there is a requirement to add cfg80211 to your image as a module (m) in the base platform kernel configuration. It must not be left out and must not be included as built-in (y).

  • Networking support->Wireless->cfg80211 - wireless configuration API

Why I am seeing an error while trying to build lrd-11 in Yocto?

I am seeing an error: error: 'struct net_device' has no member named 'ieee80211_ptr' while trying to build the lrd-11.0 release in Yocto.

This is due to a change in kernel 5.19 and higher, (lrd-11.0 is built against 6.1 kernel backports), where there is a requirement to add cfg80211 to your image.

To accomplish this:

  1. Edit your kernel configuration by entering
    bitbake -c menuconfig virtual/kernel
  2. Edit Networking support/Wireless and set cfg80211 to "M" for module
  3. Save your changes.
  4. Run your build again.

Do Laird Wifi modules work with OpenWRT?

Yes, Laird Wifi modules can be integrated with OpenWRT like with other Linux operating systems.


See Lairds "Guide" Section for an example:

https://www.ezurio.com/documentation/application-note-how-to-integrate-the-60-series-wifi-module-with-openwrt


Can I use power save mode for AP mode?

PM mode is ignored when operating as an AP.  It is effectively PM=0.

How to support WPA3 Enterprise Suite b 192 by NetworkManager?

The setting would be similar as TLS setup except these two configurations. 

802-11-wireless-security.proto wpa3

 802-11-wireless-security.key-mgmt wpa-eap-eap-suite-b-192

 

For example:

nmcli c add type wifi ifname wlo61s0 con-name 'My Wifi Network' \
  802-11-wireless.ssid 'My Wifi' \
      802-11-wireless-security.key-mgmt wpa-eap-eap-suite-b-192 \

      802-11-wireless-security.proto wpa3 \

      802-1x.eap tls \
      802-1x.identity identity@example.com \
      802-1x.ca-cert /etc/cert/ca.pem \
      802-1x.client-cert /etc/cert/user.pem \
      802-1x.private-key /etc/cert/user.prv \
      802-1x.private-key-password the_password

How to support WPA3 Enterprise Suite b 192 by wpa-supplicant configuration?

If you configure Wi-Fi setting by wpa_supplicant, you will need to setup a configuration file such as "/etc/wpa_supplicant.conf", and then execute wpa_supplicant as below command.

wpa_supplicant -Dnl80211 -c /etc/wpa_supplicant.conf -i wlan0 -B -ddd


Here is the example of wpa_supplicant.conf to setup "WPA3 Enterprise Suite b 192" network.

ctrl_interface=/var/run/wpa_supplicant

#update_config=1

network={

        ssid="Cisco_2802_WPA3_Enterprise"

        proto=WPA3

        key_mgmt=WPA-EAP-SUITE-B-192

        ieee80211w=2

        pairwise=GCMP-256

        group=GCMP-256

        group_mgmt= BIP-GMAC-256

        eap=TLS

identity=xxxx

ca_cert="/etc/cert/ca.pem"

client_cert="/etc/cert/user.pem"

private_key="/etc/cert/user.prv"

private_key_passwd="password"

phase1=”tls_suiteb=1”

}

Is there a way to disable 5GHz on the LWB5+?

You can disable 5GHz on the SDIO version of the LWB5+, by modifying the NVRAM file (i.e. .txt file in /lib/firmware) as follows:

change devid=0x4418 to devid=0x4419

Note: This is currently not possible on the the USB version on the LWB5+ because the NVRAM information is included in the firmware.

What could be a cause for corrupted SCO audio on some smartphones using the Sterling LWB5+ BT radio?

Please check if you have 2EV5, 3EV5 3EV3 frames enabled your in mSBC decoder settings.

Even though it might say those frames are supported, they are actually not.

When send 'Accept Synchronous Connection Request ' set
3-EV5 may NOT be used 1
2-EV5 may NOT be used 1
3-EV3 may NOT be used 1

2EV5, 3EV5 3EV3 frames are not supported in mSBC decoder.

Can I use Laird Wifi modules with USB interface with the Laird SOM8MP System on Module?

Yes, Laird Wifi modules with USB interface can be used instead of or in addition to the SU60 Wifi module that is inegrated on the SOM8MPlus system on module

That requires integration of the driver of the corresponding USB based module into the Yocto build environment for the SOM8MPlus. Please see the Lairds "Guides"section for details: https://lairdcp.github.io/guides/

Laird modules with USB interface are the Sterling-60, Summit-60 and the Sterling-LWB5+.

Do the LWB series radios support Monitor Mode?

The Sterling-LWBSterling-LWB5Sterling-LWB5+ and the Sterling-LWB+ do not support Monitor Mode. As of 3Q-2023, the only Laird Radios that support Monitor mode are the 60-SIPT and the 60-2230C.

How do I determine which LRU installer I need?

In the Regulatory Tools package you receive there are many files. The filename structure is:

{radio-type}-{toolchain}-{version}.tar.bz2

For example, the file mfg60n-arm-eabihf-10.135.0.6.tar.bz2 would be for our 60 Series radio running on a system with a GNU Embedded Application Binary Interface (High Float) running version 10.135.0.6 of the Laird firmware. 

An easy way to determine your toolchain is to use the command:

ls -l /ld-linux*

Where can I find the Regulatory Test tools for Laird's Wi-Fi products?

For Regulatory Testing you will be required to load a special firmware to put the radio into "Test Mode". The code for our Wi-Fi modules is available-by-request by opening a case with our Support Team at https://www.lairdconnect.com/resources/support.

Does the LWB5+ support SoftAP?

Yes, SoftAP does work on the Sterling-LWB5+. It has successfully been tested by Laird FAEs.

If more information is desired, please contact support via the support form for more details and example configurations.

https://www.lairdconnect.com/contact?form_type=Support

Does LWBx series support WPA3 OWE?

No, the LWBx series of WiFi/BT modules do not support WPA3 OWE or SAE-PK (Public Key).

Can I use the LWB5+ module with antenna trace pin with just one antenna/UFL connector?

We advise to use the LWB5+ M.2 card as reference design when using the LWB5+ modulle with antenna trace pin. This uses an antenna switch with two antenna connections (UFL). Deviating from this design might have an impact on the module pre-certification / modular-approval and it might no longer be possible to fully leverage our test reports.

However, if needed it is possible to use just one antenna / UFL connector and it is recommended to use the same antenna matching circuit / components than used on the LWB5+ with integrated UFL connector. See below for schematic and component values.


Component values:

R49=1.0nH (Murata LQP03TN1N0B02)
C9=NOPOP
C1=10pF
R1=1M
D1=NOPOP

In case of questions please contact the Laird technical support.

How can Lairds LWB-series radios be used with Raspberry Pis and Raspberry Pi OS?

The Sterling-LWBx radios can be used with Raspberry Pis running Raspberry Pi OS.

A module parameter (available from release version 10.54.0.13 on) will have to be used to prevent the module from ideling as OS calls from the mmc driver on RPi will not be answered suitably causing the SDIO communication not to function correctly.

Please reference this tutorial for the 60-series radios and contact Laird for the usage of the above mentioned module parameter for the LWB radios.

https://lairdcp.github.io/guides/Sterling-60-Tutorials/1.0/raspberry-pi-wifi-bt.html


Is it mandatory to add the 32.768kHz oscillator (LPO) for SUSCLK to my LWB5+ design?

The external LPO is absolutely required. ​Firmware is configured to expect that, and the radio won't operate without it.

The low power oscillator is not used for just sleeping. It is also typically the clock source for the PMU, which is the first thing that has to be active and handles the reset sequence and other things as well.
 
The name “Low power” just distinguishes it from the “main” clock source, which runs much faster and draws much more power.  The main oscillator can be stopped in various scenarios to conserve power, but there will always be a clock source active to do tasks that are always necessary, and that one will be low power.

To correctly add a suitable LPO please refer to the reference schematics avaílable on the landing page of the Sterling-LWB5+ under "Technical Drawings" and the datasheet available under "Datasheet".

/wireless-modules/wifi-modules-bluetooth/sterling-lwb5-plus-wifi-5-bluetooth-5-module

How can I manipulate the power saving settings for Wifi in my Linux environment?

Wifi adapters by default often come up in a power save mode. That is a mode in which the adapter shuts off the network connection in a state of inactivity.

While this is a good way to achieve additional power savings it of course introduces a delay for re-connecting.

To set the mode on or off:

iw wlan0 set power_save on
iw wlan0 set power_save off

To query the current setting issue:

iw wlan0 get power_save

Some systems might require "sudo" in front of the commands to be exectuted.

Jetson TX2 NX Wi-Fi USB is not showing up after a soft reboot

The Jetson TX2 NX does not act the same as the Jetson Nano when providing power to the m.2 slot. The Jetson Nano will automatically toggle PMU_EN, while the TX2 NX will require a manual toggle of the pin in software.

This applies to USB variants, as PCIe variants have a reset built into the PCIe standard.

unknown symbol in dmesg error

On a linux system if the dmesg is reporting an unknown symbol this is usually due to one of the following:

  1. The backports drivers didn't get compiled against the correct kernel.
  2. WLAN, CONFIG_BT, and WIRELESS were not removed from the kernel menuconfig.
  3. backports was compiled with different flags than how the kernel was compiled.

 

Do your Wi-Fi modules provide a temperature value?

Currently none of our Wi-Fi modules support reading a temperature value.

LWB5+ dongle error Cannot enable. Maybe the USB cable is bad?

If the following error is seen, please upgrade the Sterling-LWB5+ USB dongle to rev2 hardware.

root@imx8mpevk:~#
[ 33.790852] usb usb1-port1: Cannot enable. Maybe the USB cable is bad?
[ 34.694823] usb usb1-port1: Cannot enable. Maybe the USB cable is bad?
[ 34.701488] usb usb1-port1: attempt power cycle
[ 35.678833] usb usb1-port1: Cannot enable. Maybe the USB cable is bad?
[ 36.586530] usb usb1-port1: Cannot enable. Maybe the USB cable is bad?
[ 36.593232] usb usb1-port1: unable to enumerate USB device
[ 40.522838] usb usb1-port1: Cannot enable. Maybe the USB cable is bad?
[ 41.426825] usb usb1-port1: Cannot enable. Maybe the USB cable is bad?
[ 41.433490] usb usb1-port1: attempt power cycle
[ 42.410840] usb usb1-port1: Cannot enable. Maybe the USB cable is bad?
[ 43.314522] usb usb1-port1: Cannot enable. Maybe the USB cable is bad?
[ 43.321193] usb usb1-port1: unable to enumerate USB device

.

When using the lwb5+ in single antenna which antenna port do I use?

When using the Sterling-LWB5+ with firmware for single antenna instead of diversity antenna setup, the antenna port to use will be ANT0.

One important thing to make sure before sending in your device to Laird for country, regulatory or antenna testing.

When you have an agreement with Laird to send in your device for testing of anything around your radio you need to make sure your radio can be set to all necessary test modes.

In order to do that please contact the Laird FAE already known to you or write to Laird at "support@lairdconnect.com" to get in contact with us.

Your FAE will be able to help you determine if your device is fit for testing.

How to wire coax-cable to LWB5+ 453-00045 for conducted measurement?

The below picture shows part of the schematics and indicates where to connect a coax-cable and which components to remove for the measurement. The cable need to be solder at C28 and ground as close as possible.

copper cable soldering

How to setup a peripheral device with ST60/LWB* series with BlueZ in Linux platform?

bluetoothctl 

[bluetooth]#Power on

[bluetooth]#menu advertise

[bluetooth]# manufacturer 0x0077 0x12 0x34

[bluetooth]# name myDevice

[bluetooth]# back

[bluetooth]# advertise on

[bluetooth]# menu gatt 
[bluetooth]# register-service e2d36f99-8909-4136-9a49-d825508b297b

[bluetooth]# yes

[bluetooth]# register-characteristic 0x1234 read

[bluetooth]# 0x12

[bluetooth]# register-characteristic 0x4567 read,write

[bluetooth]# 0x34

[bluetooth]# register-application

While encounter not able to run lru in Ubuntu system with lwb* series, what may need to check first?

1. Make sure to install proper MFG package (the same version or compatible version with the backports) and the lru binary fit to your platform.

You can check by "file /usr/bin/lru" to know what MFG binary you install.

2. Make sure all lib issues has been resolved.
3. Only run one Wi-Fi module in the system

Disable other modules by /etc/modprobe.d/blacklist.conf

4. Make sure lru run with the LWB5+ interface
5. killall wpa_supplicant and NetworkManager
6. Make sure firmware is loaded by MFG firmware, check if firmware is (CY WLTEST) in dmesg

/lib/firmware/brcm/brcmfmac4373.bin -> brcmfmac4373-usb-sa-mfg.bin

"ln -s /lib/firmware/brcm/brcmfmac4373-usb-sa-mfg.bin /lib/firmware/brcm/brcmfmac4373.bin"

7. lru need to root access right, so may need to run "sudo lru"  

How to setup a peripheral device with ST60/LWB* series with BlueZ in Linux platform?

bluetoothctl 

[bluetooth]#Power on

[bluetooth]#menu advertise

[bluetooth]# manufacturer 0x0077 0x12 0x34

[bluetooth]# name myDevice

[bluetooth]# back

[bluetooth]# advertise on

[bluetooth]# menu gatt 
[bluetooth]# register-service e2d36f99-8909-4136-9a49-d825508b297b

[bluetooth]# yes

[bluetooth]# register-characteristic 0x1234 read

[bluetooth]# 0x12

[bluetooth]# register-characteristic 0x4567 read,write

[bluetooth]# 0x34

[bluetooth]# register-application

In LWB5+ certification test report, there is one chapter called power index of test tool, Does this indicate the power table of the module?

No, this is not related to power table but only a test tool verification index power to verify the test tool itself.

How to set regulation domain in LWB/LWB5/LWB5+ with latest release 8.5.0.7 and later release in Linux platform?

(1) By option regdomain

/etc/modprobe.d/brcmfmac.conf

# Sample contents of a brcmfmac.conf file configured for operation in
#  the United States
options brcmfmac regdomain="US"

(2) By device tree

@mmc0 {
  #address-cells = <1>;
  #size-cells = <0>;
  bus-width = <4>;
  non-removable;

  brcmf: wifi@1 {
    reg = <1>;
    compatible = "brcm,bcm4329-fmac";
    laird,regdomain = "US";
  };
};

How will Laird handle the FRAG attack announced by Wi-Fi Alliance in 2021 May?

Please refer this blog as below. Laird are currently investigating these issues internally and investigating with the chipset vendors and our internal QA team to establish test scenarios to evaluate the impacted devices.

/resources/blog/frag-attack-wi-fi-putting-pieces-back-together

How do I make the LWB5+ SDIO 1.8v work with an iMX8M DVK?

If you choose SDIO VDDIO 1.8v mode in the Sterling-LWB5+, you need to make sure that the host platform won’t probe 3.3v.

You need to change the wire of port 1 and 3 in Q1601 in iMX8M DVK, so that it won’t probe 3.3v during SDHC module detection.

Please check the attached schematic file and need this modification.

Why is there no CONFIG_HOST_1 / STRAP_1 on my Sterling-LWB5+ solder down module?

There is only two pins required to choose between the available interface options of USB, SDIO 1.8V and SDIO 3.3V.

Pins accessable are CONFIG_HOST_2 (STRAP_2) and CONFIG_HOST_0 (STRAP_0).

CONFIG_HOST_1 (STRAP_1) is not accessable. It is tied to GND inside of the module.

How long do I have to keep the Sterling-LWB5+ in RESET?

The absolute minimum the Power On Reset shall be asserted is 150ms after the power supply is stable and the WL_REG_ON and/or BT_REG_ON signal are asserted.

However we recommend waiting 250 milliseconds to ensure the internal reset sequence has completed.

Note: The signals WL_REG_ON and BT_REG_ON are pulled high by default internally for the Wi-Fi and Bluetooth radios to be enabled when power is applied.
 

What are all these firmware files for the Sterling-LWB5+?

The Sterling-LWB5+ supports the use of two different antenna configurations. That is single antenna (SA) or antenna diversity (DIV).

It also supports the usage of two interface configurations. That is SDIO for Wifi and UART for Bluetooh on the one hand and USB for both on the other.

For each interface combination there is a possible antenna configuration, hence 4 firmware files.

E.g.:


 

Can I use my Sterling-LWB5+ M2 card with a single antenna instead of using antenna diversity?

Yes, that is possible.

A special firmware has been created for that purpose.
Search for the correct firmware version in the release folder for the Sterling-LWB5+ in Github.

The software woill be named something like this
laird-lwb5plus-sdio-sa-m2-firmware-a.b.c.d
and reflects it usage with the mention of "m2" and "sa" - single antenna.

The active antenna port is ANT0.

How do I set up an open hotspot using Network Manager?

You can use the Network Manager command line interface to create an open hotspot using this command:

nmcli con add con-name open_hotspot ifname wlan0 type wifi ssid yourSSID mode ap wifi.band bg wifi.channel 6 ipv4.method shared

I am getting the message "brcmfmac: brcmf_usb_dl_cmd: usb_submit_urb failed -19" - how bad is that?

During the integration of a Sterling-LWB5+ Wifi module with USB interface often the occurance of message "brcmfmac: brcmf_usb_dl_cmd: usb_submit_urb failed -19" is obeserved.

This by itself is not harmful as it means that a USB transaction did not complete on the USB bus.


It can happen during initialization after the USB firmware has been downloaded and the module is not ready to be polled yet.

It should not be seen as an error but rather as a message.
Normal Wifi operation can still be avaiable.

 

What are some disadvantages of using AP+STA?

The AP and STA are on the same channel potentially causing disconnections if the STA roams to a different AP. The Sterling-70 has the advantage of dual independent radios that can run on different Wi-Fi channels.

What is the MCS index for Wi-Fi?

MCS stands for Modulation Coding Scheme and is an industry metric index based on Wi-Fi connection parameters between a client and wireless access point. These parameters include modulation type, coding rate, spatial streams, channel width, and guard interval.

Can you tell me more about the m.2 connector used on your Wi-Fi modules?

The m.2 used on our Wi-Fi modules is an E-key. Review the PCI Express M.2 Specification from the PCI-SIG website for more information.

  • Here is an Application note on E-Key from NXP
  • When using an m.2 Wi-Fi module ensure your platform supports the interface by the selected m.2 Wi-Fi module. An example is an external sleep clock which is needed by some Ezurio modules.

 

What versions of Android are supported by Laird Wi-Fi modules?

This can be found by reviewing the release notes for the specific product on GitHub.

 

I have a Ubuntu system that has automatic updates will this affect my Wi-Fi?

Yes as new kernels are updated in Ubuntu automatically it will break backports and will need to be reinstalled.

What Bluetooth 5.x features does the LWB5+ support?

The Sterling-LWB5+ is Bluetooth 5.0 qualified with all errata applicable to v4.2 and earlier features as well as all support for optional Bluetooth 4.2 features. If you have specific Bluetooth features that are required please contact support for more information.

Does the LWB5+ require a 32.768kHz clock?

Yes, an external 32.768kHz clock is required by the LWB5+.

Is there a way to disable 5GHz on the LWB5+

You can disable 5GHz on the SDIO version of the LWB5+, by modifying the NVRAM file (i.e. .txt file in /lib/firmware) as follows:

change devid=0x4418 to devid=0x4419

Note: This is currently not possible on the the USB version on the LWB5+ because the NVRAM information is included in the firmware.

Can I use a Laird WiFi module on Ubuntu?

Laird modules can be used on a Ubuntu system with a kernel version that is supported by Laird backports.

To check, find the kernel version of the Ubuntu system and then check the release notes of the products to see if the latest backports supports that kernel.

Sterling-60 Release Notes

Sterling-LWB Release Notes

LWB5+ fails to work after inserting modules manually

When loading backport modules manually the LWB5+ will not have a regulatory domain set. To fix this the brcmfmac.ko module needs to be loaded with a regulatory domain.

Example:

insmod brcmfmac.ko regdomain="US"

 

The Country Code will need to be changed based on country usage. Review the Software Integration Guide (SIG) on Laird's GitHub for more information.

Do I need pull-ups on the SDIO pins of the Sterling-LWB5+?

No, the Sterling-LWB5+ does not require pull-ups. The module is configured with internal pull-ups

I'm using the trace pin version of the LWB5+ (453-00047), what reference design should I follow in order to leverage Laird's certification?

In order to leverage our radio certification, you must follow the layout of the m.2 version of the Sterling-LWB5+.

 

The RF trace must match the layout exactly, and you must use the exact same parts that are on the RF path of the m.2 module (i.e. no part substitution allowed).

Is it Ok to put the chip antenna version (453-00045) of the LWB5+ on the corner of my PCB?

No, the chip antenna version of the Sterling-LWB5+ must NOT be placed on the corner of the PCB.

Ideally, it should be mounted on the middle edge of the board. It can be shifted away from the middle edge in either direction, but it MUST have a minimum 3mm ground plane on both sides of the module, bigger is better.

Can I use a single antenna with a LWB5+ diversity enabled module (Trace and M.2)?

Yes you can, however, to do this you need a specific set of module binary files (NVRAM and CLM).  The combinations required are not currently supported in the released LWB5+ Laird software packages (v8.5.0.7 and earlier).

Please contact  technical support or sales to enable this option.

Is there a way to extend the shelf life of Laird modules?? If the shelf life cannot be extended in any way, what are the consequences of using modules after shelf life?

The shelf life statements are essentially to prevent mishandling of the product and not storing it properly. If the modules are still sealed in the package, stored at the proper temperature and have not been exposed to moisture they should be fine. However, when working with modules beyond their shelf life you MUST bake the modules before populating the them to your board. Failure to bake the modules could result in the yield rate dropping down lower than expectation due to popcorn or de-lamination on the modules. It is recommended that you follow IPC/JEDEC J-STD-033 which is the general standard for the handling, packing, shipping and use of moisture/reflow sensitive surface mount devices.

Our main concern is around the castellation/pads which solder the module to the board. It is imperative those pads do not get tarnished, as this would cause soldering issues. Humidity can affect solderability as well, as if there is any excess moisture in the solder on the module, during reflow of the module to the board, steam balls can essentially explode the solder and sometimes result in an open circuit (or possibly a short circuit).

As long as all of the moisture handling and temperature guidelines are being followed you will likely have no issues. It is further recommended that when you do the build with modules that have exceeded their shelf life that you start with a handful to perform a test run and do a final test to make sure all is working as expected. As long as there are no issues with the initial test run we would expect that you will not experience any problems.

How do I use the LWB5+ DVK with an SDR104 capable external slot?

The LWB5+ is an embedded SDIO module and using an external slot may introduce some challenges. The external slot likely starts at 3.3 VIO and steps down to 1.8 VIO. If this is not the case, the following also addresses fixed VIO for both 1v8 and 3v3. As noted below, the M.2 variant only supports 1.8 VIO.

  1. Run the LWB5+ at 3.3 VIO SD High Speed mode (module only, not M.2)
    1. Configure the LWB5+ DVK for 3.3 VIO via strapping switches (1,0) and VDDIO switched to 3v3
    2. Add no-1-8-v to the SDIO device node in the device tree
    3. Confirm the voltage step-down is disabled on the host
  2. Run the LWB5+ at SDR speed by syncing VIO via jumper wire (module only, not M.2)
    1. If the host board exposes VIO of the external slot, depopulate the VDDIO switch on the LWB5+ DVK and wire the center pin directly to VIO on the host.
      1. An example is TP709 on the i.MX6UL EVK from NXP
    2. The external slot may not be fully capable of SDR104 @200MHz and the bus speed may have to be limited
      1. Example 100MHz device tree property: max-frequency = <100000000>;
  3. Force the host to run at 1.8 VIO all the time (module and M.2)
    1. This requires modification to the host and is up to you to weigh the risk and devise a resolution
    2. The LWB5+ M.2 DVK will not need modification
    3. Configure the LWB5+ module DVK for 1.8 VIO via strapping switches (1,1) and VDDIO switched to 1v8
    4. The slot may not be capable of full 200MHz SDR104 operation, see note above about limiting bus speed

How do I test connecting to a BLE peripheral in Linux?

To activate BT, list controller information and scan for BT/BLE devices:

# bluetoothctl
Agent registered
[bluetooth]# power on
Changing power on succeeded
[bluetooth]# list
Controller C0:EE:40:50:00:00 summit [default]
[bluetooth]# scan on

To connect to a device acting as a peripheral:

[bluetooth]# scan on
Discovery started
[CHG] Controller C0:EE:40:50:00:00 Discovering: yes
[NEW] Device 4C:90:DE:92:00:00 Pixel XL
[CHG] Device 4C:90:DE:92:00:00 RSSI: -68
[CHG] Device 4C:90:DE:92:00:00 RSSI: -58
...
[NEW] Device 4C:90:DE:92:00:00 Pixel XL
[bluetooth]# scan off
Discovery stopped
[CHG] Controller C0:EE:40:50:00:00 Discovering: no
[CHG] Device 4C:90:DE:92:00:00 TxPower is nil
[CHG] Device 4C:90:DE:92:00:00 RSSI is nil
[bluetooth]# pair 4C:90:DE:92:00:00
Attempting to pair with 4C:90:DE:92:00:00
[CHG] Device 4C:90:DE:92:00:00 Connected: yes
[NEW] Primary Service
        /org/bluez/hci0/dev_4C_90_DE_92_00_00/service0001
        00001801-0000-1000-8000-00805f9b34fb
        Generic Attribute Profile
[NEW] Characteristic
        /org/bluez/hci0/dev_4C_90_DE_92_00_00/service0001/char0002
        00002a05-0000-1000-8000-00805f9b34fb
...
[NEW] Characteristic
        /org/bluez/hci0/dev_4C_90_DE_92_00_00/service003a/char003b
        00002a8a-0000-1000-8000-00805f9b34fb
        First Name
[NEW] Characteristic
        /org/bluez/hci0/dev_4C_90_DE_92_00_00/service003a/char003d
        00002a90-0000-1000-8000-00805f9b34fb
        Last Name
[NEW] Characteristic
        /org/bluez/hci0/dev_4C_90_DE_92_00_00/service003a/char003f
        00002a8c-0000-1000-8000-00805f9b34fb
        Gender
...
[CHG] Device 4C:90:DE:92:00:00 UUIDs: 0000181c-0000-1000-8000-00805f9b34fb
[CHG] Device 4C:90:DE:92:00:00 UUIDs: 0000aaa0-0000-1000-8000-aabbccddeeff
[CHG] Device 4C:90:DE:92:00:00 ServicesResolved: yes
Request confirmation
[agent] Confirm passkey 210165 (yes/no): yes
[Pixel XL]# trust 4C:90:DE:92:00:00
[CHG] Device 4C:90:DE:92:00:00 Trusted: yes
Changing 4C:90:DE:92:00:00 trust succeeded

The peripheral device is a Google Pixel XL running Android 10 using Nordic’s nRF app with an advertising profile setup with dummy information. If you pair with a device that does not have some kind of service running, it will disconnect, as BT/BLE has nothing to do.

 

How do I test running a GATT server in Linux?

Using the test scripts provided with BlueZ to setup a GATT server:

cd /lib/bluez/test/
./example-gatt-server &

Power on Bluetooth, start advertising and set to pairable:

# bluetoothctl
Agent registered
[bluetooth]# power on
Changing power on succeeded
[bluetooth]# advertise on
[bluetooth]# pairable on

Connect with Nordic's nRF smartphone app and read the fake battery level.

 

What is the difference between the Sterling supplicant and open-source wpa_supplicant?

The Sterling supplicant is based on the open-source wpa_supplicant and is also provided as an open-source package.

We update the source and patch as needed to make sure we are up to date on the latest CVEs.

It also goes through our QA validation process with each production release of backports and firmware. For more information, see the release notes on GitHub:

How do I confirm WiFi connection status in Linux?

The iw tool can be used to read the status of the device:


# iw dev

phy#0
        Unnamed/non-netdev interface
                wdev 0x2
                addr 7e:4a:78:cc:85:77
                type P2P-device
                txpower 31.00 dBm
        Interface wlan0
                ifindex 7
                wdev 0x1
                addr aa:bb:cc:07:0c:b1
                ssid testAP
                type AP
                channel 11 (2462 MHz), width: 20 MHz, center1: 2462 MHz
                txpower 31.00 dBm

Managed/client mode link information:

# iw wlan0 link

Connected to aa:bb:cc:12:34:56 (on wlan0)
        SSID: testAP
        freq: 2462
        RX: 364 bytes (2 packets)
        TX: 3782 bytes (22 packets)
        signal: -31 dBm
        tx bitrate: 2.0 MBit/s
        bss flags:      short-slot-time
        dtim period:    2
        beacon int:     200

AP mode to read connected client information:

# iw wlan0 station dump

Station aa:bb:cc:8b:6c:fe (on wlan0)
        inactive time:  3000 ms
        rx bytes:       6479
        rx packets:     37
        tx bytes:       9706
        tx packets:     66
        tx failed:      0
        signal:         -44 [-44] dBm
        tx bitrate:     1.0 MBit/s
        rx bitrate:     65.0 MBit/s
        authorized:     yes
        authenticated:  yes
        associated:     yes
        WMM/WME:        yes
        TDLS peer:      no
        DTIM period:    2
        beacon interval:100
        short slot time:yes
        connected time: 20 seconds

 

What are some common wpa_supplicant network block profiles?

Open/unsecured Network:


network={
        ssid="myAP"
        key_mgmt=NONE
        scan_ssid=1
}

 

WPA2-PSK:


network={
        ssid="myAP"
        key_mgmt=WPA-PSK
        psk="password"
        pairwise=CCMP
        group=CCMP
        proto=RSN
        scan_ssid=1
}

 

WPA2-AES with EAP-TLS


network={
    scan_ssid=1
    ssid="myAP"
    pairwise=CCMP
    group=CCMP
    key_mgmt=WPA-EAP
    proto=RSN
    eap=TLS
    identity="user1"
    private_key="/etc/certs/user1.pem"
    private_key_passwd="user1"
    client_cert="/etc/certs/user1.pem"
}

 

WPA-TKIP with PEAP MSCHAPv2:


network={
    scan_ssid=1
    ssid="myAP"
    key_mgmt=WPA-EAP
    eap=PEAP
    identity="user1"
    phase1="peaplabel=auto peapver=0 "
    phase2="auth=MSCHAPV2"
    password="user1"
}

 

For the full documentation provided by the wpa_supplicant maintainers, please visit: https://w1.fi/cgit/hostap/plain/wpa_supplicant/wpa_supplicant.conf

What do I need to consider when desinging in the chip-down/SIPT version so I can leverage your modular certifications?

In order to leverage our modular certifications, you must follow the RF design of the module associated with the chip/SIPT. Design files will be provided upon request so you can reproduce our design on your custom board. We highly suggest you to take advantage of our free design review to prevent any issues when going for certification testing.

Please submit a ticket using our support portal when you are ready to begin the process.

I need the wl tool for certification, how do I gain access?

Per our agreement with Infineon, formally Cypress, we are required to distribute the testing tools package on an individual basis. To request access, please submit a technical support ticket on our support portal

Do the LWB Series radios support worldwide mode?

Unfortunately the LWB Series can only be configured for a static region. We do have options with our other radios, please contact support and we can make a recommendation based on your project's needs.

Can I use the brcmfmac driver that comes with my kernel?

We provide driver support via our fork of the backports package and integrate releases from Cypress/Infineon. Backports replaces the kernel-side Bluetooth stack and Wi-Fi stack including cfg80211 and driver. We regularly perform a kernel rebase to keep up with LTS releases which provides the benefit of running a modern stack on a range of kernels. We perform build verification regression testing including popular silicon vendor kernels such as Xilinx, nVidia, ST Micro, TI and NXP. All releases are QA validated in our automated testing system.

We support our customers integrating backports in different Linux build environments including Yocto, Buildroot and PetaLinux. Please contact support if integration assistance is needed.

Can I use the Broadcom firmware that comes with my kernel?

We provide custom firmware from Cypress that includes power tables that are only for the LWB Series modules. Using firmware that is not provided by us will violate the modular certifications.

How do I know what CVEs/vulnerabilities have been addressed and in which version of code?

CVEs that have been addressed are referenced in our release notes. If there is a new CVE or one that is not listed in our release notes, please submit a ticket using our support portal and we will provide the status.

Radio-specific release notes can be found in the corresponding GitHub repo: https://github.com/LairdCP/Release-Packages

How can Low Power Mode (LPM) be enabled on Laird's Sterling-LWB, Sterling-LWB5 and Sterling-LWB5+ modules?

In order to enable LPM mode on the Sterling-LWB, Sterling-LWB5 and Sterling-LWB5+ modules the options --enable_lpm and --enable_hci need to be added to the patchram command line expression:

# patchram -d --patchram /lib/firmware/brcm/4343w.hcd --enable_lpm --enable_hci --no2bytes  --tosleep 1000 /dev/ttyS1 c1 &

This also enables BT_HOST_WAKE (output) and BT_DEV_WAKE (input).
BT_DEV_WAKE needs to be asserted for the module to respond.

How can the Sterling-LWB5+ support extended temperature range while the data sheet for the chip only shows commercial temperature grade?

For the Sterling-LWB5+ Wifi module, Laird does not use the regular CYW4373 chip from Cypress but a version that supports extended temperature range by the name of CYP4373E.

How do I use your precompiled dynamically linked binaries such as your supplicants or radio testing tools?

If the binary returns "not found" or does not work after confirming the executable bit is set with chmod +x <filename>, then you will need to create a symlink pointing to the system's interpreter. The file tool will show the expected interpreter and architecture of a binary, readelf is a lot more verbose and is used to discover the expected "sonames" of shared libraries. These utilities do not have to be used on the target system and is convenient to use on a common x86 Linux machine. These utilities can be installed on Ubuntu with sudo apt install binutils.

Example output from the file command:
sterling_supplicant-arm-7.0.0.139/usr/sbin$ file wpa_supplicant
wpa_supplicant: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.3, for GNU/Linux 3.0.0, stripped

Example output from the readelf command:
sterling_supplicant-arm-7.0.0.139/usr/sbin$ readelf -ld wpa_supplicant Elf file type is EXEC (Executable file)
Entry point 0xba28
There are 10 program headers, starting at offset 52 Program Headers:
...
<edited>
...
      [Requesting program interpreter: /lib/ld-linux.so.3]
...
<edited>
...
Dynamic section at offset 0x176ee8 contains 30 entries:
  Tag        Type                         Name/Value
 0x00000001 (NEEDED)                     Shared library: [librt.so.1]
 0x00000001 (NEEDED)                     Shared library: [libnl-3.so.200]
 0x00000001 (NEEDED)                     Shared library: [libnl-genl-3.so.200]
 0x00000001 (NEEDED)                     Shared library: [libdl.so.2]
 0x00000001 (NEEDED)                     Shared library: [libdbus-1.so.3]
 0x00000001 (NEEDED)                     Shared library: [libgcc_s.so.1]
 0x00000001 (NEEDED)                     Shared library: [libc.so.6]
...
<edited>
...

To use this binary, we will have to confirm this symlink exists or create a new symlink pointing to the interpreter on the target filesystem:
cd /lib/
ls -l ld-*
-rwxr-xr-x    1 root     root        158772 Dec  2  2019 /lib/ld-2.26.so
ln -sf ld-2.26.so ld-linux.so.3
ls -l ld-*
-rwxr-xr-x    1 root     root        158772 Dec  2  2019 /lib/ld-2.26.so
lrwxrwxrwx    1 root     root            10 Dec 21 18:55 /lib/ld-linux.so.3 -> ld-2.26.so

If the binary now reports that a library is not found when executed, repeat the steps shown above for creating a library symlink/soname pointing to it's real name. This may require you to use the find command to discover the location of the library. Example for libnl-genl-3:
find / -name 'libnl-genl-3*' -exec ls -l {} 2>/dev/null \;
-rwxr-xr-x    1 root     root         18524 Feb 14 23:42 /usr/lib/libnl-genl-3.so.200.26.0
cd /usr/lib/
ln -sf libnl-genl-3.so.200.26.0 libnl-genl-3.so.200
ls -l libnl-genl-3*
-rwxr-xr-x    1 root     root         18524 Feb 14 23:42 /usr/lib/libnl-genl-3.so.200.26.0
lrwxrwxrwx    1 root     root            24 Feb 14 23:37 /usr/lib/libnl-genl-3.so.200 -> libnl-genl-3.so.200.26.0

If the library does not exist, you will have to include that package in your build. For instance if the above example libnl was missing, include the libnl package when building your filesystem.

What is my best chance to use an antenna that is not pre-certified for my wireless module?

To use an antenna that is not listed on your wireless modules datasheet, it must be of the same topology (e.g. dipole, PIFA, etc.), equal or lesser gain, and have the same in-band and out of band characteristics.

Note: Japan (MIC) lists applicable antennas on its certificates. If your antenna is not on the approved list, regardless of whether it is comparative, it must be added to the certificate before it can be used in Japan.

How do I manually cross-compile the Sterling supplicant from source?

It is best practice to include the source in your build system. If using Yocto, our external layer will do this for you.
Here is an example manually compiling using our SOM60 as a target in a Buildroot environment:

 

  1. Download and extract the Sterling supplicant source.
  2. Navigate to the "laird" directory.
  3. Edit the config_laird file:
  4. Find the following line, uncomment and change the path to your "openssl/include" directory:
    original line:
    #CFLAGS += -I/usr/local/openssl/include
    modified line:
    CFLAGS += -I/wb/buildroot/output/som60sd/build/host-libopenssl-1.1.1d/include
  5. Run make with the following flags
    set:
    CC="" for your cross-compile binary
    PKG_CONFIG="" for your pkg-config binary
    PKG_CONFIG_PATH="" for your pkgconfig directory
    OBJCOPY="" for your objcopy binary

 

Note the following example is a single line command:
make CC="/wb/buildroot/output/som60sd/host/bin/arm-buildroot-linux-gnueabihf-gcc" PKG_CONFIG="/wb/buildroot/output/som60sd/host/bin/pkg-config" OBJCOPY="/wb/buildroot/output/som60sd/host/arm-buildroot-linux-gnueabihf/bin/objcopy" PKG_CONFIG_PATH="/wb/buildroot/output/som60sd/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/pkgconfig"

Backports fails to compile with 'refcount_t {aka struct refcount_struct}' has no member named 'counter'

There are certain patch ranges within kernels 4.4 and 4.9 that need a modification so backports can build, the reason why we cannot fix it in backports is that we cannot track and differentiate between patch versions of the same 'major.minor' version of kernel. To fix this issue, move the function kobject_has_children from linux/kobject.h to drivers/base/core.c in your kernel source, rebuild the kernel and then rebuild backports.

How can I receive notifications of the latest updates to the driver and firmware?

Simply log into GitHub, go to the corresponding release packages page and click the "Watch" button (eye icon) in the top right of the page. Some radios (such as the LWB Series) requires you to download firmware separately from the product page; this firmware is updated on the product page in conjunction with GitHub releases.

Release Packages

What are the requirements to be able to leverage "Modular Approval"?

In order to be able to leverage the Modular Approval of a wireless module the following requirements have to be met:

  • The RF circuitry must be shielded
  • The module must have buffered modulation/data inputs. Module must inherently ensure compliance under host fault (watch dog) conditions
  • The module must have a regulated power supply
  • An antenna needs to be attached permanently or a unique antenna connector must be mounted on the module
  • The module must be compliant with the regulations in a stand-alone configuration
  • The module must be labeled with its permanently affixed FCC ID label or use an electronic display
  • A user manual needs to provide comprehensive instructions to explain compliance requirements.
  • The module must comply with RF exposure requirements

How do I test layer 2 Bluetooth stability without setting up a profile on a Linux platform?

In BlueZ, some commands such as l2test or l2ping are able to generate traffic on L2CAP layer. To test performance and reliability, you can use the l2test command:

On the server, run the command:

l2test -I 2000 -r

On the client side, run the command:

l2test -O 2000 -s XX:XX:XX:XX:XX:XX

When I try to get my Bluetooth interface up on the UART using "patchram" I receive the error "can't set line discipline"?

When the error "can't set line discipline" occurs when the patchram tool is used to bring up the Bluetooth HCI-UART device it is very likely that the "Bluetooth HCI UART" driver (or module) is not enabled in the Linux kernel configuration as module.

How to set radio to Soft AP mode?

If you don't want simultaneous ap/sta, you can run the commands:

nmcli conn add type wifi ifname wlan0 con-name softAP autoconnect no ssid softAP

nmcli conn modify softAP 802-11-wireless.mode ap 802-11-wireless.band bg 802-11d

nmcli conn up softAP

You can also do it via wpa_supplicant .conf files if you do not have nmcli.

 

 

How to prepare a Sterling LWB5+ Wi-Fi Module with chip antenna for conducted RF power measurement?

To set up the Sterling LWB5+ Wi-Fi module with chip antenna for conducted RF power measurement, remove C28 then install L20.



After installing L20, there are two options to wire out the RF signal.
1.    Soldering on a suitable SMA cable.

2.    Soldering on a MHF4 connector then use “MHF4 to SMA” cable.


The terminators we usually use are produced by WOKEN.

6GHz 50 ohm Reverse SMA(M) 0.5W Terminator: https://www.woken.com.tw/en/index.php/products/get_product_content/7073

 18GHz 2W SMA(M) 50 ohm Terminator: https://www.woken.com.tw/en/index.php/products/get_product_content/4968


Resource Center

Become an Ezurio Customer to Gain Exclusive Access to Our Design Experts

  • Antenna Scans
  • Antenna selection and placement
  • Custom antenna design
  • Worldwide EMC testing / certifications
  • Embedded RF hardware / firmware design
  • Cloud architecture and integration
  • Mobile application development
  • Product & Industrial Design

Talk to an Expert

Buy Now

Distributor Part In Stock Region Buy
Future Electronics 450-00137 263 North America Buy Now
Mouser 450-00137 56 North America Buy Now
DigiKey 450-00137 40 North America Buy Now
Arrow Electronics 450-00137 17 North America Buy Now
Mouser 450-00137B 182 North America Buy Now
Arrow Electronics 450-00137B 0 North America Buy Now
Future Electronics 450-00137B 0 North America Buy Now
DigiKey 453-00045-K1 18 North America Buy Now
Arrow Electronics 453-00045-K1 13 North America Buy Now
Mouser 453-00045-K1 12 North America Buy Now
Avnet 453-00045-K1 0 North America Buy Now
Farnell 453-00045-K1 0 EMEA Buy Now
Future Electronics 453-00045-K1 0 North America Buy Now
Arrow Electronics 453-00045C 169 North America Buy Now
Farnell 453-00045C 0 EMEA Buy Now
Future Electronics 453-00045C 0 North America Buy Now
Mouser 453-00045C 0 North America Buy Now
DigiKey 453-00045R 2329 North America Buy Now
Mouser 453-00045R 987 North America Buy Now
Arrow Electronics 453-00045R 0 North America Buy Now
Future Electronics 453-00045R 0 North America Buy Now
DigiKey 453-00046-K1 6 North America Buy Now
Farnell 453-00046-K1 2 EMEA Buy Now
Mouser 453-00046-K1 2 North America Buy Now
Avnet 453-00046-K1 0 North America Buy Now
Future Electronics 453-00046-K1 0 North America Buy Now
DigiKey 453-00046C 3317 North America Buy Now
Mouser 453-00046C 823 North America Buy Now
Farnell 453-00046C 140 EMEA Buy Now
Arrow Electronics 453-00046C 0 North America Buy Now
Future Electronics 453-00046C 0 North America Buy Now
DigiKey 453-00046R 925 North America Buy Now
Arrow Electronics 453-00046R 0 North America Buy Now
Future Electronics 453-00046R 0 North America Buy Now
Mouser 453-00046R 0 North America Buy Now
Mouser 453-00047C 800 North America Buy Now
Farnell 453-00047C 169 EMEA Buy Now
DigiKey 453-00047C 13 North America Buy Now
Future Electronics 453-00047C 0 North America Buy Now
DigiKey 453-00047R 779 North America Buy Now
Arrow Electronics 453-00047R 644 North America Buy Now
Future Electronics 453-00047R 0 North America Buy Now
Farnell 453-00048 186 EMEA Buy Now
Mouser 453-00048 145 North America Buy Now
DigiKey 453-00048 99 North America Buy Now
Arrow Electronics 453-00048 89 North America Buy Now
Future Electronics 453-00048 0 North America Buy Now
Mouser 453-00048-K1 14 North America Buy Now
DigiKey 453-00048-K1 3 North America Buy Now
Avnet 453-00048-K1 0 North America Buy Now
Farnell 453-00048-K1 0 EMEA Buy Now
Future Electronics 453-00048-K1 0 North America Buy Now
DigiKey 453-00049 338 North America Buy Now
Mouser 453-00049 294 North America Buy Now
Farnell 453-00049 145 EMEA Buy Now
Arrow Electronics 453-00049 0 North America Buy Now
Future Electronics 453-00049 0 North America Buy Now
Mouser 453-00049-K1 30 North America Buy Now
DigiKey 453-00049-K1 2 North America Buy Now
Avnet 453-00049-K1 0 North America Buy Now
Farnell 453-00049-K1 0 EMEA Buy Now
Future Electronics 453-00049-K1 0 North America Buy Now

Distributors

Distributor Phone Number Region Website
Arrow Electronics 1-855-326-4757
+44 2039 365486
APAC, North America, South America, EMEA Website
Avnet 1-480-643-2000
+44 1628 512900
APAC, North America, South America, EMEA Website
Braemac Australia, New Zealand, South East Asia +61 2 9550 6600
+64 9 477 2148
APAC Website
Cal-Chip Connect 1-215-942-8900
North America Website
DigiKey 1-800-344-4539
North America, South America, APAC, EMEA Website
EBV Elektronik EMEA Website
Farlink Technology China, Hong Kong +86 13266922199
APAC Website
Farnell 1-800-936-198
+44 3447 11 11 22
EMEA Website
Future Electronics 1-800-675-1619
1-514-428-8470
North America, South America, APAC, EMEA Website
Glyn +49-6126-590-0
EMEA Website
Hy-Line Germany Only +49 89 614 503 0
EMEA Website
Jetronic China, Hong Kong and Taiwan 852-27636806 
APAC Website
Laird Connectivity 1-847-839-6925
+44 1628 858941
North America, South America, APAC, EMEA Website
M2M Germany +49-6081-587386-0
EMEA Website
Martinsson +46 8 7440300
EMEA Website
McCoy South East Asia +65 6515 2988
APAC Website
Mouser 1-800-346-6873
+44 1494 427500
North America, South America, APAC, EMEA Website
RS Components +852-2421-9898
+44 3457-201201
North America, South America, APAC, EMEA Website
Ryoyo Japan +81-3-3543-7711
APAC Website
Solsta UK Only +44 (0) 1527 830800
EMEA Website
Supreme Components International India, South East Asia +65 6848-1178
APAC Website
Symmetry Electronics 1-866-506-8829
North America Website
Tekdis Australia and New Zealand +61 3 8669 1210
APAC Website
Telsys +972 3 7657666
EMEA Website
WPG +44 1628 958460
EMEA Website