1.. zephyr:board:: efm32wg_stk3800
2
3Overview
4********
5
6The EFM32 Wonder Gecko Starter Kit EFM32WG-STK3800 contains a MCU from the
7EFM32WG family built on ARM® Cortex®-M4F processor with excellent low
8power capabilities.
9
10Hardware
11********
12
13- Advanced Energy Monitoring provides real-time information about the energy
14  consumption of an application or prototype design.
15- 32MByte parallel NAND Flash
16- 160 segment Energy Micro LCD
17- 2 user buttons, 2 LEDs and a touch slider
18- Ambient Light Sensor and Inductive-capacitive metal sensor
19- On-board Segger J-Link USB debugger
20
21For more information about the EFM32WG SoC and EFM32WG-STK3800 board:
22
23- `EFM32WG Website`_
24- `EFM32WG Datasheet`_
25- `EFM32WG Reference Manual`_
26- `EFM32WG-STK3800 Website`_
27- `EFM32WG-STK3800 User Guide`_
28- `EFM32WG-STK3800 Schematics`_
29
30Supported Features
31==================
32
33The efm32wg_stk3800 board configuration supports the following hardware features:
34
35+-----------+------------+-------------------------------------+
36| Interface | Controller | Driver/Component                    |
37+===========+============+=====================================+
38| MPU       | on-chip    | memory protection unit              |
39+-----------+------------+-------------------------------------+
40| NVIC      | on-chip    | nested vector interrupt controller  |
41+-----------+------------+-------------------------------------+
42| SYSTICK   | on-chip    | systick                             |
43+-----------+------------+-------------------------------------+
44| FLASH     | on-chip    | flash memory                        |
45+-----------+------------+-------------------------------------+
46| GPIO      | on-chip    | gpio                                |
47+-----------+------------+-------------------------------------+
48| UART      | on-chip    | serial port-polling;                |
49|           |            | serial port-interrupt               |
50+-----------+------------+-------------------------------------+
51
52The default configuration can be found in
53:zephyr_file:`boards/silabs/starter_kits/efm32wg_stk3800/efm32wg_stk3800_defconfig`
54
55Other hardware features are currently not supported by the port.
56
57Connections and IOs
58===================
59
60The EFM32WG SoC has six gpio controllers (PORTA to PORTF), but only three are
61currently enabled (PORTB, PORTE and PORTF) for the EFM32WG-STK3800 board.
62
63In the following table, the column Name contains Pin names. For example, PE2
64means Pin number 2 on PORTE, as used in the board's datasheets and manuals.
65
66+-------+-------------+-------------------------------------+
67| Name  | Function    | Usage                               |
68+=======+=============+=====================================+
69| PE2   | GPIO        | LED0                                |
70+-------+-------------+-------------------------------------+
71| PE3   | GPIO        | LED1                                |
72+-------+-------------+-------------------------------------+
73| PB9   | GPIO        | Push Button PB0                     |
74+-------+-------------+-------------------------------------+
75| PB10  | GPIO        | Push Button PB1                     |
76+-------+-------------+-------------------------------------+
77| PF7   | GPIO        | Board Controller Enable             |
78|       |             | EFM_BC_EN                           |
79+-------+-------------+-------------------------------------+
80| PE0   | UART0_TX    | UART Console EFM_BC_TX U0_TX #1     |
81+-------+-------------+-------------------------------------+
82| PE1   | UART0_RX    | UART Console EFM_BC_RX U0_RX #1     |
83+-------+-------------+-------------------------------------+
84
85System Clock
86============
87
88The EFM32WG SoC is configured to use the 48 MHz external oscillator on the
89board.
90
91Serial Port
92===========
93
94The EFM32WG SoC has three USARTs, two UARTs and two Low Energy UARTs (LEUART).
95UART0 is connected to the board controller and is used for the console.
96
97Programming and Debugging
98*************************
99
100.. note::
101   Before using the kit the first time, you should update the J-Link firmware
102   in Simplicity Studio.
103
104Flashing
105========
106
107The EFM32WG-STK3800 includes an `J-Link`_ serial and debug adaptor built into the
108board. The adaptor provides:
109
110- A USB connection to the host computer, which exposes a Mass Storage and a
111  USB Serial Port.
112- A Serial Flash device, which implements the USB flash disk file storage.
113- A physical UART connection which is relayed over interface USB Serial port.
114
115Flashing an application to EFM32-STK3800
116----------------------------------------
117
118The sample application :zephyr:code-sample:`hello_world` is used for this example.
119Build the Zephyr kernel and application:
120
121.. zephyr-app-commands::
122   :zephyr-app: samples/hello_world
123   :board: efm32wg_stk3800
124   :goals: build
125
126Connect the EFM32WG-STK3800 to your host computer using the USB port and you
127should see a USB connection which exposes a Mass Storage (STK3800) and a
128USB Serial Port. Copy the generated zephyr.bin in the STK3800 drive.
129
130Open a serial terminal (minicom, putty, etc.) with the following settings:
131
132- Speed: 115200
133- Data: 8 bits
134- Parity: None
135- Stop bits: 1
136
137Reset the board and you should be able to see on the corresponding Serial Port
138the following message:
139
140.. code-block:: console
141
142   Hello World! efm32wg_stk3800
143
144
145.. _EFM32WG-STK3800 Website:
146   http://www.silabs.com/products/development-tools/mcu/32-bit/efm32-wonder-gecko-starter-kit
147
148.. _EFM32WG-STK3800 User Guide:
149   http://www.silabs.com/documents/public/user-guides/efm32wg-stk3800-ug.pdf
150
151.. _EFM32WG-STK3800 Schematics:
152   http://www.silabs.com/documents/public/schematic-files/BRD2400A_A00.pdf
153
154.. _EFM32WG Website:
155   http://www.silabs.com/products/mcu/32-bit/efm32-wonder-gecko
156
157.. _EFM32WG Datasheet:
158   http://www.silabs.com/documents/public/data-sheets/EFM32WG990.pdf
159
160.. _EFM32WG Reference Manual:
161   http://www.silabs.com/documents/public/reference-manuals/EFM32WG-RM.pdf
162
163.. _J-Link:
164   https://www.segger.com/jlink-debug-probes.html
165