UG160: Wizard Gecko BGTool User's Guide

Similar documents
QSG119: Wizard Gecko WSTK Quick-Start Guide

QSG107: SLWSTK6101A Quick-Start Guide

QSG107: SLWSTK6101A/B Quick-Start Guide

EFM8 Laser Bee Family QSG110: EFM8LB1-SLSTK2030A Quick Start Guide

EFM32 Pearl Gecko Family QSG118: EFM32PG1 SLSTK3401A Quick- Start Guide

QSG107: SLWSTK6101A/B Quick-Start Guide

EFM32 Happy Gecko Family EFM32HG-SLSTK3400A Quick-Start Guide

Bluegiga WF111 Software Driver Release Notes

QSG123: CP2102N Evaluation Kit Quick- Start Guide

EFM8 Busy Bee Family EFM8BB2-SLSTK2021A Quick Start Guide

Software Release Note

QSG144: CP2615-EK2 Quick-Start Guide

EFM8 Universal Bee Family EFM8UB2 Errata

SMBus. Target Bootloader Firmware. Master Programmer Firmware. Figure 1. Firmware Update Setup

UG345: Si72xx Eval Kit User's Guide

QSG155: Using the Silicon Labs Dynamic Multiprotocol Demonstration Applications

QSG114: CPT007B SLEX8007A Kit Quick- Start Guide

UG369: Wireless Xpress BGX13P SLEXP8027A Kit User's Guide

AN888: EZR32 Quick Start Guide

The process also requires the use of the following files found in the Micriµm Quick Start Package for the FRDM-KL46Z:

Date CET Initials Name Justification

AN999: WT32i Current Consumption

UG274: Isolated USB Expansion Board User Guide

QSG159: EFM32TG11-SLSTK3301A Quick- Start Guide

Humidity/Temp/Optical EVB UG

UG254: CP2102N-MINIEK Kit User's Guide

AN1143: Using Micrium OS with Silicon Labs Thread

µc/probe on the Freescale FRDM-KL05Z without an RTOS

UG322: Isolated CAN Expansion Board User Guide

EFM8 Universal Bee Family EFM8UB1 Errata

Date CET Initials Name Justification

AN888: EZR32 Simple TRX Application Quick Start Guide

AN125 INTEGRATING RAISONANCE 8051 TOOLS INTO THE S ILICON LABS IDE. 4. Configure the Tool Chain Integration Dialog. 1. Introduction. 2.

CP2110-EK CP2110 EVALUATION KIT USER S GUIDE. 1. Kit Contents. 2. Relevant Documentation. 3. Software Setup

Si1146 UVIRSlider2EK Demo Kit

AN1023: HTTP SERVER EXAMPLE

AN976: CP2101/2/3/4/9 to CP2102N Porting Guide

AN1160: Project Collaboration with Simplicity Studio

CP2103-EK CP2103 EVALUATION KIT USER S GUIDE. 1. Kit Contents. 2. Relevant Documentation. 3. Software Setup USBXpress Driver Development Kit

AN1117: Migrating the Zigbee HA Profile to Zigbee 3.0

QSG166: WF200 Wi-Fi Development Kit Quick Start Guide

BRD4300B Reference Manual MGM111 Mighty Gecko Module

Figure 1. CP2108 USB-to-Quad UART Bridge Controller Evaluation Board

CP2104-EK CP2104 EVALUATION KIT USER S GUIDE. 1. Kit Contents. 2. Relevant Documentation. 3. Software Setup USBXpress Driver Development Kit

EFM32 EFM32GG11 Giant Gecko Family QSG149: EFM32GG11-SLSTK3701A Quick-Start Guide

UG366: Bluetooth Mesh Node Configuration User s Guide

Date CET Initials Name Justification

CP2114 Family CP2114 Errata

QSG126: Bluetooth Developer Studio Quick-Start Guide

CP2105-EK CP2105 EVALUATION KIT USER S GUIDE. 1. Kit Contents. 2. Relevant Documentation. 3. Software Setup USBXpress Driver Development Kit

AN0059.1: UART Flow Control

USBXpress Family CP2102N Errata

Wizard Gecko WGM110 Wi-Fi Module Radio Board BRD4320A Reference Manual

Translate HCSL to LVPECL, LVDS or CML levels Reduce Power Consumption Simplify BOM AVL. silabs.com Building a more connected world. Rev. 0.

Router-E and Router-E-PA Wireless Router PRODUCT MANUAL

UG313: Thunderboard Sense 2 Bluetooth Low Energy Demo User's Guide

Software Design Specification

Software Design Specification

QSG153: Micrium s μc/probe Tool Quick- Start Guide

AN1095: What to Do When the I2C Master Does Not Support Clock Stretching

Si1140-DK. Si1140 DEVELOPMENT KIT USER S GUIDE. 1. Kit Contents. Figure 1. Si1143 Evaluation Board

AN1053: Bluetooth Device Firmware Update over UART for EFR32xG1 and BGM11x Series Products

UG271: CP2615-EK2 User's Guide

ETRX3DVK Development Kit Quick-Start Guide

EFR32MG13, EFR32BG13 & EFR32FG13 Revision C and Data Sheet Revision 1.0

EFM8 Busy Bee EFM8BB1 Errata

WT12 EVALUATION KIT DATA SHEET. Monday, 09 September Version 1.7

AN1083: Creating and Using a Secure CoAP Connection with ARM s mbed TLS

EFR32 Mighty Gecko Family EFR32MG1 with Integrated Serial Flash Errata History

8-Bit MCU C8051F85x/86x Errata

Wireless Development Suite (WDS) is a software utility used to configure and test the Silicon Labs line of ISM band RFICs.

AN324 ADVANCED ENCRYPTION STANDARD RELEVANT DEVICES. 1. Introduction. 2. Implementation Potential Applications Firmware Organization

AN719 PRECISION32 IDE AND APPBUILDER DETAILED TUTORIAL AND WALKTHROUGH. 1. Introduction. Figure 1. Precision32 IDE and AppBuilder Walkthrough Overview

USB Debug Adapter. Power USB DEBUG ADAPTER. Silicon Laboratories. Stop. Run. Figure 1. Hardware Setup using a USB Debug Adapter

UG103.13: Application Development Fundamentals: RAIL

UG294: CPT213B SLEXP8019A Kit User's Guide

UG370: Wireless Xpress AMW007 Kit User's Guide

UG365: GATT Configurator User s Guide

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

AN1139: CP2615 I/O Protocol

Figure 1. Precision32 AppBuilder

USB Debug Adapter. Power USB DEBUG ADAPTER. Silicon Laboratories. Stop. Run. Figure 1. Hardware Setup Using a USB Debug Adapter

EFM32 Zero Gecko EFM32ZG Errata

AN0059.0: UART Flow Control

AN1083: Creating and Using a Secure CoAP Connection with ARM s mbed TLS

USB Debug Adapter. Power USB DEBUG ADAPTER. Silicon Laboratories. Stop. Run. Figure 1. Hardware Setup Using a USB Debug Adapter

AN706: EZSP-UART Host Interfacing Guide

UG352: Si5391A-A Evaluation Board User's Guide

AN1106: Optimizing Jitter in 10G/40G Data Center Applications

UG103.7: Tokens Fundamentals

Si7005USB-DONGLE. EVALUATION DONGLE KIT FOR THE Si7005 TEMPERATURE AND HUMIDITY SENSOR. 1. Introduction. 2. Evaluation Kit Description

Software Design Specification

EFM32 Pearl Gecko Family EFM32PG1 Errata

C8051F411-EK C8051F411 EVALUATION KIT USER S GUIDE. 1. Kit Contents. 2. Kit Overview. 3. Evaluation Board Interface LCD User Interface

USB Debug Adapter. Power USB DEBUG ADAPTER. Silicon Laboratories. Stop. Run. Figure 1. Hardware Setup using a USB Debug Adapter

μc/probe on the element14 BeagleBone Black

Bluegiga Wi-Fi Software Release Notes

UG232: Si88xxxISO-EVB User's Guide

USB Debug Adapter. Power USB DEBUG ADAPTER. Silicon Laboratories. Stop. Run. Figure 1. Hardware Setup Using a USB Debug Adapter

C8051F36x-DK. C8051F36x DEVELOPMENT KIT USER S GUIDE. 1. Relevant Devices. 2. Kit Contents. 3. Hardware Setup Using a USB Debug Adapter

Transcription:

UG160: Wizard Gecko BGTool User's Guide This user's guide walks you through the basic uses of the BGTool. This tool allows the developer to quickly test and evaluate Silicon Lab s Wizard Gecko Wi-Fi Module and its features. KEY POINTS Setting up BGTool BGTool walkthrough Practical configuration examples silabs.com Building a more connected world. Rev. 1.2

Table of Contents 1. Introduction................................ 1 1.1 Compatible Products........................... 1 1.2 Notations Used in This Guide........................ 1 2. Preparations............................... 2 2.1 Preparing the Wizard Gecko Module Wireless Starter Kit (WSTK)............ 2 2.2 Installing the Driver............................ 3 3............................ 4 3.1 Connection Setup View........................... 4 3.2 Log View............................... 5 3.3 Device Details View............................ 6 3.4 Network View.............................. 7 3.4.1 Network View - Access Point Mode (AP).................... 8 3.4.2 Network View - Station Mode (STA)......................10 3.4.3 Certificate Management..........................11 3.5 Data Routing View............................12 3.5.1 DNS Look-up.............................12 3.5.2 Add Endpoints.............................13 3.5.3 Data View..............................14 3.6 mdns View..............................14 3.7 Persistent Store View...........................15 3.8 I/O Ports View..............................16 3.9 Peripherals View.............................18 3.10 Firmware Update View..........................19 4. Examples................................ 21 4.1 Starting the Module in Wi-Fi Access Point Mode..................21 4.2 Turning on the LEDs in WGM110 WSTK.....................21 4.3 Capturing Button Clicks on the WGM110 WSTK..................23 4.4 TCP Server Example...........................23 4.4.1 Creating a Wi-Fi Access Point........................23 4.4.2 Creating a TCP Server..........................24 4.4.3 Creating a TCP Connection........................24 4.4.4 Checking the TCP Connection Status.....................24 4.4.5 Transmitting Data............................25 5. Revision History............................. 26 5.1 Revision 1.2..............................26 5.2 Revision 1.1..............................26 5.3 Revision 1.0..............................26 silabs.com Building a more connected world. Rev. 1.2

Introduction 1. Introduction BGTool is a simple terminal type user interface application that allows a developer to quickly test and evaluate Silicon Lab s Wizard Gecko Wi-Fi Module. The main purpose of the BGTool is to hide the complexity of the BGAPI TM binary protocol used by the host to control the Wi-Fi software running on the WGM110 Module. It offers a more user-friendly approach to the BGAPI protocol. BGTool can also be used effectively for quick prototyping and debugging of Wi-Fi applications. This user's guide walks you through the basic uses of BGTool. The BGTool user interface philosophy is to allow the developer to reproduce and trigger the individual BGAPI defined protocol commands, results, and events. BGTool includes the most essential BGAPI functions. This tool does not in itself validate the rationale or correctness of the sequence of BGAPI commands input by the user. It sends the commands to the WGM110 and displays the events received back. This gives the developer total freedom to play around with the BGAPI commands. Figure 1.1. BGTool Application 1.1 Compatible Products BGTool can currently be used with Silicon Labs' latest Wizard Gecko WGM110 Wi-Fi Devices. BGTool application requires Windows 7 or later OS release. 1.2 Notations Used in This Guide The following notations are used to distinguish between clicking or pressing buttons and selecting values. Clicking a button in the graphical user interface: [Set], [Cancel], [Open] etc. Selecting a value or setting: "Input Disabled", "Without pull-up", "Not enabled" etc. Names of UI windows, screens, views and tabs: Connect to Module, Network View, Persistent Store View. Commands written into the Log view BGAPI commands entry field: "wifi_cmd_sme_start_scan(0, 0103)". Events displayed in the Log view: wifi_evt_sme_wifi_is_on. Names or suffix of configuration files: "project.xml", ".bin" etc. References to other manuals and guides: Name of Manual or Guide. silabs.com Building a more connected world. Rev. 1.2 1

Preparations 2. Preparations If you have not used BGTool before, some preparations are required. 2.1 Preparing the Wizard Gecko Module Wireless Starter Kit (WSTK) To prepare the WSTK, do the following (refer to the figure below): 1. Connect the WSTK Expansion Board to the WSTK Main Board as shown. 2. Connect the WSTK WGM110 Wi-Fi Module Radio Board to the WSTK Main board as shown. 3. Turn the power switch marked [BAT USB AEM] of the WSTK Main Board to "AEM" position. 4. Connect the WSTK to a PC using the supplied mini USB cable. Verify the following: 1. That the USB Connection Indicator (blue LED) marked "SEGGER" on the Main Board turns on or starts blinking. 2. That the LCD display turns on and shows the Silicon Labs logo. Figure 2.1. WGM110 Setup for BGTool Connection silabs.com Building a more connected world. Rev. 1.2 2

Preparations 2.2 Installing the Driver 1. Download the latest Wi-Fi software from Silicon Labs website: http://www.silabs.com/start-wgm. 2. Install the Wi-Fi software to your PC according to the on-screen instructions. 3. If not already done, download and install the latest "J-Link debugger" drivers from https://www.segger.com/jlink-software.html. 4. Once you connect the Wireless Starter Kit to the PC, the kit should be recognized as a J-link device. 5. To verify that everything was installed correctly, you should see JLink CDC UART and J-Link driver devices as shown in the figure below. Figure 2.2. Windows Device Manager The CDC UART Port is used for communication between the WGM110 and BGTool, and the J-Link for uploading new firmware into the WGM110 Module. silabs.com Building a more connected world. Rev. 1.2 3

3. This section contains brief step-by-step instructions on how to use the BGTool software. After starting BGTool, the first task is to connect the Wizard Gecko Wi-Fi Module Wireless Starter Kit SLWSTK6120A to your PC. This is done through the Connect to Module UI pop-up window. Once you are connected, BGTool moves into the Interactive user interface mode from where you can control and try out various Wizard Gecko Module features. This is the main part of the tool. It provides a versatile graphical user interface (GUI) which can be used to configure and issue commands to the connected Wizard Gecko Wi-Fi Module. Included in the GUI is an embedded Log View, which shows the commands, responses, and events generated over the connection interface between the Wi-Fi Module and the PC. From the BGTool top row View tab, you can move into the Upload Tool with which you can compile and flash new firmware images to the connected Wizard Gecko Wi-Fi Module. 3.1 Connection Setup View This view simply shows the available COM ports on the PC and allows you to open the COM port to which the WGM110 Wi-Fi Module is connected. Figure 3.1. Connection Setup View Controls Connect with Baud rate Select from the drop down list the correct COM port having the "Jlink CDC UART". Select from the drop down list the correct baud rate. Default value: 115200 Open Press to connect with the Wireless Starter Kit on the selected COM port. To get connected, choose the "JLink" connection from the drop-down list and use the default baud rate of "115200". To establish the connection from your PC to the WGM110 Module, click the [Open] button. silabs.com Building a more connected world. Rev. 1.2 4

3.2 Log View The bottom part of each screen contains the Log View, used for displaying BGAPI events, commands, and responses and for entering BGAPI commands by using the BGAPI commands field. Figure 3.2. Log View Controls Log view BGAPI commands Shows the user BGAPI commands sent by BGTool to the WGM110 Module and also the BGAPI responses and events the WGM110 Module sends back to BGTool, displayed in human readable format. This input field can be used to send commands manually to WGM110 Module. Commands can be sent in the following formats: <command>(parameter1, parameter2,...) ASCII format wifi_cmd_sme_start_scan(0, 0103) Send Settings Save Clear Clicking the Send button will result in the BGAPI command being sent to the connected Wi-Fi Module. This drop-down list allows you to affect which elements are printed in the log window and whether the log is scrolling or not. Saves the BGAPI log to a user defined file. Clears the BGAPI log. silabs.com Building a more connected world. Rev. 1.2 5

3.3 Device Details View This view can be opened by clicking the [Device Details] button in the bottom part of BGTool. From this view, you can set the MAC address of the Module and retrieve the Modules hardware and software details. Figure 3.3. Device Details View Controls Get mac Set mac Reset device Retrieves the current set MAC address from the device. Configures a new MAC address to the device. Resets the device and retrieves the hardware and software details to the UI. silabs.com Building a more connected world. Rev. 1.2 6

3.4 Network View This view provides basic control of the WGM110 network. For example, from this view the user can turn the Wi-Fi radio of the WGM110 Module on or off, scan and connect to Access Points, and configure the IP address. Figure 3.4. Network View Controls Wi-Fi on/off Operating mode Retrieve info Get Auto-check Enables or disables the Wi-Fi radio in the WGM110 Module. Configure the Wi-Fi Module either into Wi-Fi Station (STA) or Access Point (AP) mode. Retrieve attributes stored in the WGM110 Module into BGTool UI. When in Station Mode: pressing the [Get] button retrieves the current RSSI value for the connected Wi-Fi Access Point. When in Station mode: checking the Auto-check box will make the UI periodically refresh and show the RSSI value for the the connected Wi-Fi Access Point. The refresh interval can be set manually. silabs.com Building a more connected world. Rev. 1.2 7

3.4.1 Network View - Access Point Mode (AP) Selecting the Network Operating mode as "AP Mode" enables the control of WGM110 Module parameters as a Wi-Fi Access Point. To read current settings from the Module, click the [Retrieve info] button. Figure 3.5. Network View with AP Mode Access Point Mode Controls Visibility Security Toggles Access Point visibility between hidden and visible. Changes the security mode and indicates which security mode is currently in use: Options: No security WPA2 WPA WEP SSID Channel Password HTTP Server on DHCP Server on DNS Server on DHCP First Address DHCP Server Netmask DHCP Server Lease Time Defines the AP SSID name. Defines the AP Channel. Define password for the Wi-Fi AP. Enables or disables the built-in HTTP server. Enables or disables the built-in DHCP server. Enables or disables the built-in DNS server. Defines first address of DHCP server address pool Defines DHCP server netmask Defines DHCP server address lease timeout in seconds silabs.com Building a more connected world. Rev. 1.2 8

Access Point Mode Controls Device + Path Defines the HTTP server root location for the specified resource path. Example: 192.168.1.1/logs can be configured to use the built-in microsd card slot on the WGM110 Radio Board as its root destination. silabs.com Building a more connected world. Rev. 1.2 9

3.4.2 Network View - Station Mode (STA) Selecting the Network Operating mode as "STA mode" enables the control of WGM110 Module parameters as a Wi-Fi client. To read current settings from the Module, click the [Retrieve info] button. The [Open WPA settings] button will open a user interface allowing you to manage security certificates and WPA settings. Figure 3.6. Network View with Station Mode Station Mode controls IP-address Netmask Gateway DNS 0 DNS 1 Scan SSID Scan Access Points Listing Displays the current IP address, change by typing over the displayed value. Displays the current IP netmask, change by typing over the displayed value. Displays the current IP gateway, change by typing over the displayed value. Displays the current primary DNS gateway address, change by typing over the displayed value. Displays the current secondary DNS gateway address, change by typing over the displayed value. Start or stop the passive network scan for available Wi-Fi Access Points. Start or stop the active network scan for available Wi-Fi Access Points. Displays a list of discovered Wi-Fi Access Points, sorted according to RSSI value. To connect to a Wi-Fi network, enter the password and click the respective [SSID] button. When connected, the [SSID] and [BSSID] buttons are replaced with a [Disconnect] button. To disconnect from a Wi-Fi network, click on the green icon. silabs.com Building a more connected world. Rev. 1.2 10

3.4.3 Certificate Management Connecting to WPA Enterprise networks requires the right certificates to be provisioned on the client side. From the Certificates view you can manage the Wi-Fi module certificates storage. From the WPA settings view you can configure the needed parameters to allow the Wi-Fi module to take part in a WPA Enterprise protected wireless network. Press [Done] to close the window. Remember to set all values before closing the window. Figure 3.7. Certificate and WPA Settings View Certificates management Refresh Reset store Add certificate Add private key Press [Refresh] to update the list of Wi-Fi module stored certificates. Press [Reset store] to erase all installed certificates. Select the destination (Flash or RAM) memory where to add the certificate. Browse for the certificate file and press [Add] to store the file. Browse for the private key file, select the certificate the key belongs to, enter the decryption password if the file is encrypted and press [Add] to store the private key. silabs.com Building a more connected world. Rev. 1.2 11

WPA settings EAP type CA certificate User certificate Server common name User name Password Select the EAP type, enter the Network Access Identifier (NAI) used during authentication and press [Set EAP configuration]. Select the CA certificate used to verify the authentication server certificate during authentication and press [Set CA certificate]. Select the user certificate submitted to the authentication server during authentication and press [Set user certificate]. Enter the Common Name that the authentication server certificate must contain and press [Set user common name]. Enter the user name used during authentication and press [Set user name]. Enter the password used during authentication and press [Set password]. 3.5 Data Routing View This view exposes the IP stack controls and allows you to create TCP/UDP clients or servers. The view also exposes the endpoint configuration controls and displays the sent and received data. Figure 3.8. Data Routing View 3.5.1 DNS Look-up The DNS look-up part allows you to try out the DNS client functionality. DNS Look-up Get host by name Type in the host name and click the [Get host by name] button to do a DNS lookup and show the resolved IP address. silabs.com Building a more connected world. Rev. 1.2 12

3.5.2 Add Endpoints This section discusses how to create TCP and UDP clients and servers. Table 3.1. TCP/UDP Server Settings End point details Type: TCP or UDP Server Route Local port Add Endpoint button Defines the type of the endpoint. The target destination for data. Can be any of the available endpoint IDs. Local TCP or UDP port. Creates the endpoint and adds it to the list of available endpoints. Table 3.2. TCP/UDP Client Settings End point details Type: TCP or UDP client Route Defines the type of the endpoint. The target destination for data. Can be any of the available endpoint IDs. Remote IP Remote Port Add endpoint Remote IP address. Remote TCP or UDP port. Creates the endpoint and adds it to the list of available endpoints. Table 3.3. TLS Client Settings End point details TLS client Route Defines the type of the endpoint The target destination for data. Can be any of the avilable endpoint IDs. Remote IP Remote port Auth mode Remote IP address. Remote TCP or UDP port. Select the authentication mode. Options: None Optional Mandatory Set mode Add endpoint Enforce the TLS settings by clicking [Set mode] button Creates the endpoint and adds it to the list of available endpoints. silabs.com Building a more connected world. Rev. 1.2 13

3.5.3 Data View This view is used to send data to an endpoint, and it also shows data received from the BGAPI endpoint. To send data to an endpoint: Select the endpoint ID to which you want to send the data. Type the data into the following field. Click [Enter] to send the data. Received data is shown in the field below the endpoint selection dropbox. 3.6 mdns View This view provides a user interface that is used to define the services which are announced in the local network. Figure 3.9. mdns View mdns View Set mdns hostname mdns host name of the device without the suffix.local Start mdns Add service Start or stop the mdns server. Name: The service name identifies what the DNS-SD service does Protocol: TCP or UDP Instance name: The service instance name, identifies an instance of a particular DNS-SD service. Attribute: Optional key/value pair valid for a particular type of DNS-SD service. Attribute field format: <Key>=<Value> silabs.com Building a more connected world. Rev. 1.2 14

3.7 Persistent Store View Persistent Store view can be used to access the local PS key store and to retrieve and store keys and their values. Figure 3.10. PS Store View Persistent Store View Refresh Add new Retrieves the WGM110 stored PS key values. Allows you to create a new PS key. Note: Remember to click the [Diskette] (save) button to actually store the entered value to the WGM110 Module. Save and Delete functions Values can be saved or deleted from the WGM110 Module. To save press the [Diskette] icon, to delete click the [X] icon. Note: The [Diskette] button (icon) appears only after you have first entered some text in the input field. silabs.com Building a more connected world. Rev. 1.2 15

3.8 I/O Ports View This view allows you to view and configure the I/O ports of your WGM110 Module. You can configure whether the ports are inputs or outputs, change the state of outputs, and also enable and configure interrupts. BGTool does not have the capability to read the current GPIO configuration from the connected Module. BGTool is always started with the default pin configuration shown in the UI. This might not be in sync with the current settings of the Module. You should always set the pin configuration manually to ensure the correctness of the I/O configuration. Clicking the [Read All] command only reads the value (as indicated in the "Value" column) of each pin but does NOT update the GPIO Module settings. Figure 3.11. I/O Ports View silabs.com Building a more connected world. Rev. 1.2 16

I/O Ports View GPIO mode There are two columns in this part. They are used to define settings as follows: Left column Defines pin state. Options are: Input disabled Input Input pull Input pull filter Output Output Push-Pull Right column Defines further settings for inputs, or for outputs defines the "default" output state of the pin. Options are: Without pull-up With pull-up Without glitch filter With glitch filter Glitch filter & pull-down Glitch filter & pull-up High (for outputs) Low (for outputs) Note: Changing of settings does not have effect on the Module pin configuration until the [Set] button for each relevant pin has been clicked. Value Displays the state of the pin at the time of the latest clicking of the [Read All] button. Note: The state values are not updated dynamically, the user must click the [Read All] button to update the values. Read Write Interrupt Each pin configured as an input will display the [Read] button. Clicking this button will update the "Value" field of the corresponding pin. Each pin configured as an output will display the [Write] button. Clicking this button will output the state defined in the "Value" field of the corresponding pin. Used to enable or disable a pin as an interrupt. When configured as an interrupt, the drop-down menu enables selection of either falling, rising, or both edges. Options are: Not enabled Rising Falling Both Note: Changing of settings does not have effect on the Module pin configuration until the [Set] button for each relevant pin has been clicked. silabs.com Building a more connected world. Rev. 1.2 17

I/O Ports View Read All Reads the current state of all pins configured as either inputs or outputs from the Module and updates these values into the "Value" column. Note: This command does not read the current pin configuration settings from the Module, but only reads the output state of the pins (0 or 1). The pin configurations must be manually set through the I/O Ports View. They cannot be retrieved from the Module. 3.9 Peripherals View This view allows you to configure the output compare pins and read the ADC values. This view also allows you to select which power saving states the Module is allowed to go into. Figure 3.12. Peripherals View Peripherals View Maximum allowed power saving Read ADC Timers This setting defines the Wi-Fi Modules highest possible allowed power saving mode (whether the Module is allowed to go to deep sleep mode or not). For details about the various Power save modes refer to the WGM110 API Reference Manual. Read analog input values. Set timer related parameters. silabs.com Building a more connected world. Rev. 1.2 18

3.10 Firmware Update View The firmware update view can be used to build the.bin file and to perform a DFU update for your local device. If you have a.bin file already available, you do not need to build it again, and you can directly proceed to the DFU update part. Note: BGTool also automatically checks the version of the connected Wireless Starter Kit firmware. If there is a more recent firmware version available for the WSTK firmware in the WGM110 SDK, the WSTK firmware will be automatically updated. This update is normally not needed and the update process is transparent to the user. The WGM110 Module firmware update will be automatically done after the WSTK firmware update has finished (if done). To build an image file perform these steps: 1. Click [Upload tool] button from the top menu bar. 2. Select the project.xml file you want to use to build your image. 3. Click the [Build] button. 4. Wait for the.bin image file build to finish. To perform a DFU update follow one of two scenarios: J-Link Upload (WSTK fimware check performed): 1. Select Upload Method: J-Link Upload (default selection). 2. Select the.bin file you want to upload to the device. 3. Click the [Upload] button. 4. Wait for the update to finish. Figure 3.13. DFU Firmware Update (J-Link Upload) UART DFU Upload (WSTK firmware check not performed): 1. Select Upload Method: UART DFU Upload. 2. Select the.bin file you want to upload to the device. 3. Select COM port. 4. Select baud rate. 5. Optional: Select No Rts/Cts. 6. Click the [UART DFU Upload] button. silabs.com Building a more connected world. Rev. 1.2 19

7. Wait for the update to finish. Figure 3.14. DFU Firmware Update (UART DFU Upload) silabs.com Building a more connected world. Rev. 1.2 20

Examples 4. Examples This section contains several examples showing how BGTool is used together with the WGM110 Wireless Starter Kit (WSTK). Note: Always remember to RESET the WGM110 Module before trying out any of the examples to ensure you have a clean starting point. 4.1 Starting the Module in Wi-Fi Access Point Mode To start the Module in Wi-Fi Access Point mode, follow these steps: 1. Go to the Network View and AP Mode section. 2. Select "AP mode" and click the [Set mode] button to initialize the AP mode configuration. 3. Set Wi-Fi "On". 4. Click the [Set status] button. 5. Wait for the event wifi_evt_sme_wifi_is_on to appear in the Log View. 6. Select the desired Security mode. 7. Enter the desired "SSID" and "Password" using the corresponding entry fields and select the desired "Channel" from the dropdown list. 8. Click the [Set Password] button. 9. Click the [Start AP Mode] button to start the Wi-Fi Access Point mode, and wait for the commands to be executed. 10. Wait for the event wifi_evt_sme_interface_status to appear in the Log View. 11. Enable the DHCP server by checking the "DHCP" box and by clicking the [Set] button. You should now be able to discover and connect to the WGM110 Module running in AP mode with your PC. In Windows: 1. Discover the available wireless networks. 2. Select the "Access Point" that runs on the WGM110 Wi-Fi Module. 3. Connect with the selected Access Point and use the security settings you have configured. 4. Once the connection is successful, you should see a new MAC address appear in the BGTool UI indicating that the connection has now been established. You can also disconnect the clients (STAs), by selecting a client and clicking the [Disconnect] button. Note: Some clients (like Windows 7) will reconnect to the AP again immediately. 4.2 Turning on the LEDs in WGM110 WSTK In the I/O Ports View, perform the following configurations: Figure 4.1. I/O Port Configuration for LED Control silabs.com Building a more connected world. Rev. 1.2 21

Examples 1. Configure WSTK PIN PC0 (LED0) and WSTK PIN PC1 (LED1) as "Output Push-Pull", and for both pins save the configuration by clicking the [Set] button. 2. Make sure they are configured as "Output Push-Pull" I/Os. 3. Change the set values of the configured pins from "0" to "1", and for both pins click the [Write] button to actually change the states of the pins (the figure above shows this step). 4. Verify that both LED0 and LED1 on the WGM110 WSTK now turn on. Figure 4.2. WSTK LED0 and LED1 silabs.com Building a more connected world. Rev. 1.2 22

Examples 4.3 Capturing Button Clicks on the WGM110 WSTK In the I/O Ports View, perform the following configurations: Figure 4.3. I/O Port Configuration for Button Click Event 1. Configure the WSTK PINS PA2 (Push button PB0), PA6 (Push button PB1), PE14 (Push button BTN2) and PD5 (Push button BTN3) as "Input", and save the configuration for each pin individually by clicking the [Set] button. Note: The above configures the two push buttons on the WSTK Main Board (PB0 and PB1) and the two buttons on the Expansion Board (BTN2 and BTN3). See the push button placement figure at the end of this sub-section. 2. Enable interrupts on ports PA2, PA6, PE14, and PD5 by selecting "Rising" and save the configuration for each pin individually by clicking the [Set] button. 3. Test the functionality of the buttons on the WSTK Main Board and the Expansion Board by pressing them and by monitoring for the API events in the BGTool Log View. An example of a button event is shown in the Log View screenshot below. Figure 4.4. BGTool Log View Showing a Generated Button Click Event The four user configurable push buttons are shown in the figure below. Figure 4.5. WSTK and Expansion Board Push Buttons 4.4 TCP Server Example This section contains several sub-sections all related to TCP Server. 4.4.1 Creating a Wi-Fi Access Point Create a Wi-Fi Access Point as shown in 4.1 Starting the Module in Wi-Fi Access Point Mode. silabs.com Building a more connected world. Rev. 1.2 23

Examples 4.4.2 Creating a TCP Server To create a TCP Server, go to the Data Routing View in BGTool. Figure 4.6. Creating a New Endpoint 1. To create a TCP Server, select "TCP server" from the Add endpoint tool. 2. Type in a local TCP port number in the "Local port:" field (e.g. "5001"). 3. Select the streaming route in "Route" to "-1". 4. Create the endpoint by clicking the [Add] button. 4.4.3 Creating a TCP Connection To create a TCP client connection you need a TCP client software like Putty or Tera Term. 1. Create a TCP Server (4.4.2 Creating a TCP Server). 2. Open a TCP client software available on your PC. 3. Create a TCP client connection to the IP address of your WGM110 Module AP and the TCP Port you have created. Example In the figure below configuration is based on host address "192.168.1.1" and TCP Port "5001" Figure 4.7. Connecting to the TCP Server 4.4.4 Checking the TCP Connection Status Once the TCP connection has been established the Endpoint View shows a new endpoint for each TCP client connection. In the example below, the TCP client connection received a new endpoint with "ID 3". Figure 4.8. New TCP Client Connected silabs.com Building a more connected world. Rev. 1.2 24

Examples 4.4.5 Transmitting Data To send data to the TCP client, perform the following steps: 1. Change the destination endpoint ID in the "Destination endpoint:" field of Data View to "3". 2. Type in the data you want to send into the entry field (in the example below "Hello World"). 3. Send the data by clicking the [Enter] button. 4. Check that you have received the data at the TCP client. Figure 4.9. "Hello World" Sent from the Server Side Figure 4.10. "Hello World" Received on the Client Side silabs.com Building a more connected world. Rev. 1.2 25

Revision History 5. Revision History 5.1 Revision 1.2 March 31st, 2017 Changes: Network View with AP Mode figure updated Added: DHCP server settings to Access Point Mode Controls table Firmware Update View paragraph updated 5.2 Revision 1.1 May 23rd, 2016 Changes: Figures updated Added: BGTool application requires Windows 7 or later OS Added: Certificate Management screenshot with explanations listed in table 5.3 Revision 1.0 February 22nd, 2016 Initial release. silabs.com Building a more connected world. Rev. 1.2 26

Smart. Connected. Energy-Friendly. Products www.silabs.com/products Quality www.silabs.com/quality Support and Community community.silabs.com Disclaimer Silicon Labs intends to provide customers with the latest, accurate, and in-depth documentation of all peripherals and modules available for system and software implementers using or intending to use the Silicon Labs products. Characterization data, available modules and peripherals, memory sizes and memory addresses refer to each specific device, and "Typical" parameters provided can and do vary in different applications. Application examples described herein are for illustrative purposes only. Silicon Labs reserves the right to make changes without further notice and limitation to product information, specifications, and descriptions herein, and does not give warranties as to the accuracy or completeness of the included information. Silicon Labs shall have no liability for the consequences of use of the information supplied herein. This document does not imply or express copyright licenses granted hereunder to design or fabricate any integrated circuits. The products are not designed or authorized to be used within any Life Support System without the specific written consent of Silicon Labs. A "Life Support System" is any product or system intended to support or sustain life and/or health, which, if it fails, can be reasonably expected to result in significant personal injury or death. Silicon Labs products are not designed or authorized for military applications. Silicon Labs products shall under no circumstances be used in weapons of mass destruction including (but not limited to) nuclear, biological or chemical weapons, or missiles capable of delivering such weapons. Trademark Information Silicon Laboratories Inc., Silicon Laboratories, Silicon Labs, SiLabs and the Silicon Labs logo, Bluegiga, Bluegiga Logo, Clockbuilder, CMEMS, DSPLL, EFM, EFM32, EFR, Ember, Energy Micro, Energy Micro logo and combinations thereof, "the world s most energy friendly microcontrollers", Ember, EZLink, EZRadio, EZRadioPRO, Gecko, ISOmodem, Precision32, ProSLIC, Simplicity Studio, SiPHY, Telegesis, the Telegesis Logo, USBXpress and others are trademarks or registered trademarks of Silicon Labs. ARM, CORTEX, Cortex-M3 and THUMB are trademarks or registered trademarks of ARM Holdings. Keil is a registered trademark of ARM Limited. All other products or brand names mentioned herein are trademarks of their respective holders. Silicon Laboratories Inc. 400 West Cesar Chavez Austin, TX 78701 USA http://www.silabs.com