How does it work?
WiFi 11 Click is based on the BW16, a low-power dual bands Wireless LAN (WLAN) module from Ai-Thinker. The BW16 module represents a highly integrated WiFi SoC based on the RTL8720DN, a highly integrated Single-Chip with low-power dual bands (2.4GHz and 5GHz), and a Wireless LAN (WLAN). It consists of a high-performance MCU (ARM V8M, Cortex-M4F instruction compatible) named KM4, a low-power MCU (ARM V8M, Cortex-M0 instruction compatible) named KM0, WLAN (802.11 a/b/g/n) MAC, a 1T1R capable WLAN baseband, RF, and other peripherals. The BW16 integrates internal memory for complete WiFi protocol functions. The embedded memory configuration also provides simple application developments.
WiFi 11 Click communicates with the MCU using the UART interface at 57600 bps as its default communication protocol, but the user can also use other interfaces, such as SPI and I2C if he wants to configure the module and write the library himself. A jumper JP1 on this Click board™ also enables the necessary pull-up resistors on the SCL and SDA lines of I2C communication.
NOTE: After the primary module initialization and before uploading any program, the user should write network and TCP server parameters.
Additional functionality, such as the Chip Enable button labeled as RST, used to Enable or put the module in Shut-Down mode, is provided and routed at the EN pin of the mikroBUS™ socket. Alongside this pin, this Click board™ has one general purpose pin GP1 routed at the INT pin of the mikroBUS™ socket, which can be used in various cases like interrupt or some other purposes. WiFi 11 Click also has an additional header with UART RX0 and TX0 module pins and a button labeled LOG_TX, which can be used for Firmware Update or as a low-power mode Wake-Up function.
This Click board™ can be operated only with a 3.3V logic voltage level. The board must perform appropriate logic voltage level conversion before using MCUs with different logic levels. Also, it comes equipped with a library containing functions and an example code that can be used as a reference for further development.
Specifications
Type
WiFi
Applications
Can be used for industrial wireless control, security ID tags, smart home applications, and many more
On-board modules
BW16 – low-power dual bands Wireless LAN (WLAN) SoC module from Ai-Thinker
Key Features
Ultra-low power consumption, support low-power Tx/Rx for short-range applications, supported TrustZone-M and Secure boot, eFuse protection, and more.
Interface
I2C,SPI,UART
Feature
No ClickID
Compatibility
mikroBUS™
Click board size
L (57.15 x 25.4 mm)
Input Voltage
3.3V
Pinout diagram
This table shows how the pinout on WiFi 11 Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Onboard settings and indicators
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | – | Power LED Indicator |
JP1 | – | – | I2C Pull-Up Resistor Selector |
J1 | M1X3 | – | UART FW Update Header |
T1 | LOG_TX | – | FW Update Button |
T2 | RST | – | Chip Enable Button |
WiFi 11 Click electrical specifications
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Supply Voltage | – | 3.3 | – | V |
Frequency Range | 2.412 / 5.180 | – | 2.484 / 5.825 | GHz |
Receiver Sensitivity | – | -92 | – | dBm |
Transmit Power | – | 7±2 | – | dBm |
Software Support
We provide a library for the WiFi 11 Click on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
The library contains a basic functions for using WiFi 11 click.
Key functions:
void wifi11_set_conect_to_ap( char *username, char *password )
– Connect to APvoid wifi11_send_command ( uint8_t *cmd )
– Send command
Examples description
The application is composed of three sections :
- System Initialization – Initializes UART module and all necessary GPIO pins
- Application Initialization – Initializes driver module and stert sends AT comands.
- Example : TCP client – Please, before the uploaded program you should write network parameters and TCP server parameters.
void application_init ( ) { wifi11_uart_driver_init ( ( wifi11_obj_t )&_MIKROBUS1_GPIO, ( wifi11_obj_t )&_MIKROBUS1_UART ); Delay_ms( 200 ); wifi11_reset_device( ); Delay_ms( 5000 ); mikrobus_logWrite( "---- Start test command -----", _LOG_LINE ); wifi11_send_command( &WIFI11_CMD_AT[ 0 ] ); Delay_ms( 200 ); wifi11_send_command( &WIFI11_CMD_ATSV[ 0 ] ); Delay_ms( 200 ); mikrobus_logWrite( "---- WiFi configuration -----", _LOG_LINE ); wifi11_send_command( &WIFI11_CMD_ATPW[ 0 ] ); Delay_ms( 1000 ); wifi11_set_conect_to_ap( &wifi11_net_username[ 0 ], &wifi11_net_password[ 0 ] ); Delay_ms( 10000 ); wifi11_send_command( &WIFI11_CMD_ATW[ 0 ] ); Delay_ms( 1000 ); mikrobus_logWrite( "---- TCP example (Client) -----", _LOG_LINE ); wifi11_send_command( &WIFI11_CMD_ATPC[ 0 ] ); Delay_ms( 10000 ); wifi11_send_command( &WIFI11_CMD_ATPT[ 0 ] ); Delay_ms( 1000 ); wifi11_send_command( &WIFI11_CMD_ATPK[ 0 ] ); Delay_ms( 1000 ); }
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
- UART Library
Additional notes and informations
Depending on the development board you are using, you may need USB UART click, USB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.
mikroSDK
This Click board™ is supported with mikroSDK – MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
For more information about mikroSDK, visit the official page.