1.. _efm32gg_slwstk6121a:
2
3WGM160P Starter Kit
4###################
5
6Overview
7********
8
9The WGM160P Starter Kit SLWSTK6121A comes with the BRD4321A radio board.
10This radio boards contains a WGM160P module, which combines the WF200 Wi-Fi
11transceiver with an EFM32GG11 microcontroller.
12
13.. figure:: ./wgm160p-starter-kit.jpg
14   :width: 300px
15   :align: center
16   :alt: SLWSTK6121A
17
18   SLWSTK6121A (image courtesy of Silicon Labs)
19
20Hardware
21********
22
23- Advanced Energy Monitoring provides real-time information about the energy
24  consumption of an application or prototype design.
25- Ultra low power 128x128 pixel color Memory-LCD
26- 2 user buttons and 2 LEDs
27- Si7021 Humidity and Temperature Sensor
28- On-board Segger J-Link USB and Ethernet debugger
29- 10/100Base-TX ethernet PHY and RJ-45 jack (on included expansion board)
30- MicroSD card slot
31- USB Micro-AB connector
32
33For more information about the WGM160P and SLWSTK6121A board:
34
35- `WGM160P Website`_
36- `WGM160P Datasheet`_
37- `SLWSTK6121A Website`_
38- `SLWSTK6121A User Guide`_
39- `EFM32GG11 Datasheet`_
40- `EFM32GG11 Reference Manual`_
41- `WF200 Datasheet`_
42
43Supported Features
44==================
45
46The efm32gg_slwstk6121a board configuration supports the following hardware
47features:
48
49+-----------+------------+-------------------------------------+
50| Interface | Controller | Driver/Component                    |
51+===========+============+=====================================+
52| MPU       | on-chip    | memory protection unit              |
53+-----------+------------+-------------------------------------+
54| COUNTER   | on-chip    | rtcc                                |
55+-----------+------------+-------------------------------------+
56| ETHERNET  | on-chip    | ethernet                            |
57+-----------+------------+-------------------------------------+
58| FLASH     | on-chip    | flash memory                        |
59+-----------+------------+-------------------------------------+
60| GPIO      | on-chip    | gpio                                |
61+-----------+------------+-------------------------------------+
62| I2C       | on-chip    | i2c port-polling                    |
63+-----------+------------+-------------------------------------+
64| NVIC      | on-chip    | nested vector interrupt controller  |
65+-----------+------------+-------------------------------------+
66| SYSTICK   | on-chip    | systick                             |
67+-----------+------------+-------------------------------------+
68| UART      | on-chip    | serial port-polling;                |
69|           |            | serial port-interrupt               |
70+-----------+------------+-------------------------------------+
71
72The default configuration can be found in the defconfig file:
73
74	``boards/arm/efm32gg_slwstk6121a/efm32gg_slwstk6121a_defconfig``
75
76Other hardware features, including the WF200 WiFi transceiver, are
77currently not supported by the port.
78
79Connections and IOs
80===================
81
82The WGM160P's EFM32GG11 SoC has six GPIO controllers (PORTA to PORTF), all of which are
83currently enabled for the SLWSTK6121A board.
84
85In the following table, the column **Name** contains pin names. For example, PE1
86means pin number 1 on PORTE, as used in the board's datasheets and manuals.
87
88+-------+-------------+-------------------------------------+
89| Name  | Function    | Usage                               |
90+=======+=============+=====================================+
91| PA4   | GPIO        | LED0                                |
92+-------+-------------+-------------------------------------+
93| PA5   | GPIO        | LED1                                |
94+-------+-------------+-------------------------------------+
95| PD6   | GPIO        | Push Button PB0                     |
96+-------+-------------+-------------------------------------+
97| PD8   | GPIO        | Push Button PB1                     |
98+-------+-------------+-------------------------------------+
99| PE7   | UART_TX     | UART TX Console VCOM_TX US0_TX #1   |
100+-------+-------------+-------------------------------------+
101| PE6   | UART_RX     | UART RX Console VCOM_RX US0_RX #1   |
102+-------+-------------+-------------------------------------+
103| PB11  | I2C_SDA     | SENSOR_I2C_SDA I2C1_SDA #1          |
104+-------+-------------+-------------------------------------+
105| PB12  | I2C_SCL     | SENSOR_I2C_SCL I2C1_SCL #1          |
106+-------+-------------+-------------------------------------+
107
108
109System Clock
110============
111
112The EFM32GG11 SoC is configured to use the 50 MHz external oscillator on the
113board.
114
115Serial Port
116===========
117
118The EFM32GG11 SoC has four USARTs, two UARTs and two Low Energy UARTs (LEUART).
119USART0 is connected to the board controller and is used for the console.
120
121Programming and Debugging
122*************************
123
124.. note::
125   Before using the kit the first time, you should update the J-Link firmware
126   from `J-Link-Downloads`_
127
128Flashing
129========
130
131The SLWSTK6121A includes an `J-Link`_ serial and debug adaptor built into the
132board. The adaptor provides:
133
134- A USB connection to the host computer
135- A physical UART connection which is relayed over interface USB serial port.
136
137Flashing an application to SLWSTK6121A
138--------------------------------------
139
140Connect the SLWSTK6121A to your host computer using the USB port.
141
142Here is an example to build and flash the :ref:`hello_world` application.
143
144.. zephyr-app-commands::
145   :zephyr-app: samples/hello_world
146   :board: efm32gg_slwstk6121a
147   :goals: flash
148
149Open a serial terminal (minicom, putty, etc.) with the following settings:
150
151- Speed: 115200
152- Data: 8 bits
153- Parity: None
154- Stop bits: 1
155
156Reset the board and you'll see the following message on the corresponding serial port
157terminal session:
158
159.. code-block:: console
160
161   Hello World! efm32gg_slwstk6121a
162
163.. _WGM160P Website:
164   https://www.silabs.com/wireless/wi-fi/wfm160-series-1-modules
165
166.. _WGM160P Datasheet:
167   https://www.silabs.com/documents/public/data-sheets/wgm160p-datasheet.pdf
168
169.. _SLWSTK6121A Website:
170   https://www.silabs.com/development-tools/wireless/wi-fi/wgm160p-wifi-module-starter-kit
171
172.. _SLWSTK6121A User Guide:
173   https://www.silabs.com/documents/public/user-guides/ug351-brd4321a-user-guide.pdf
174
175.. _EFM32GG11 Datasheet:
176   https://www.silabs.com/documents/public/data-sheets/efm32gg11-datasheet.pdf
177
178.. _EFM32GG11 Reference Manual:
179   https://www.silabs.com/documents/public/reference-manuals/efm32gg11-rm.pdf
180
181.. _WF200 Datasheet:
182   https://www.silabs.com/documents/public/data-sheets/wf200-datasheet.pdf
183
184.. _J-Link:
185   https://www.segger.com/jlink-debug-probes.html
186
187.. _J-Link-Downloads:
188   https://www.segger.com/downloads/jlink
189