1.. zephyr:board:: slstk3701a
2
3Overview
4********
5
6The EFM32 Giant Gecko Starter Kit SLSTK3701A contains an MCU from the
7EFM32GG Series 1 family built on an ARM® Cortex®-M4F processor with excellent
8low power 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- Ultra low power 128x128 pixel color Memory-LCD
16- 2 user buttons, 2 LEDs and a touch slider
17- Relative humidity, magnetic Hall Effect and inductive-capacitive metal sensor
18- USB interface for Host/Device/OTG
19- 32 Mb Quad-SPI Flash memory
20- SD card slot
21- RJ-45 Ethernet jack
22- 2 digital microphones
23- On-board Segger J-Link USB debugger
24
25For more information about the EFM32GG11 SoC and SLSTK3701A board:
26
27- `EFM32GG Series 1 Website`_
28- `EFM32GG11 Datasheet`_
29- `EFM32GG11 Reference Manual`_
30- `SLSTK3701A Website`_
31- `SLSTK3701A User Guide`_
32- `SLSTK3701A Schematics`_
33
34Supported Features
35==================
36
37The slstk3701a board configuration supports the following hardware
38features:
39
40+-----------+------------+-------------------------------------+
41| Interface | Controller | Driver/Component                    |
42+===========+============+=====================================+
43| MPU       | on-chip    | memory protection unit              |
44+-----------+------------+-------------------------------------+
45| COUNTER   | on-chip    | rtcc                                |
46+-----------+------------+-------------------------------------+
47| ETHERNET  | on-chip    | ethernet                            |
48+-----------+------------+-------------------------------------+
49| FLASH     | on-chip    | flash memory                        |
50+-----------+------------+-------------------------------------+
51| GPIO      | on-chip    | gpio                                |
52+-----------+------------+-------------------------------------+
53| I2C       | on-chip    | i2c port-polling                    |
54+-----------+------------+-------------------------------------+
55| NVIC      | on-chip    | nested vector interrupt controller  |
56+-----------+------------+-------------------------------------+
57| SYSTICK   | on-chip    | systick                             |
58+-----------+------------+-------------------------------------+
59| UART      | on-chip    | serial port-polling;                |
60|           |            | serial port-interrupt               |
61+-----------+------------+-------------------------------------+
62
63The default configuration can be found in
64:zephyr_file:`boards/silabs/starter_kits/slstk3701a/slstk3701a_defconfig`
65
66Other hardware features are currently not supported by the port.
67
68Connections and IOs
69===================
70
71The EFM32GG11 SoC has nine GPIO controllers (PORTA to PORTI), all of which are
72currently enabled for the SLSTK3701A board.
73
74In the following table, the column **Name** contains pin names. For example, PE1
75means pin number 1 on PORTE, as used in the board's datasheets and manuals.
76
77+-------+-------------+-------------------------------------+
78| Name  | Function    | Usage                               |
79+=======+=============+=====================================+
80| PH10  | GPIO        | LED0 red                            |
81+-------+-------------+-------------------------------------+
82| PH11  | GPIO        | LED0 green                          |
83+-------+-------------+-------------------------------------+
84| PH12  | GPIO        | LED0 blue                           |
85+-------+-------------+-------------------------------------+
86| PH13  | GPIO        | LED1 red                            |
87+-------+-------------+-------------------------------------+
88| PH14  | GPIO        | LED1 green                          |
89+-------+-------------+-------------------------------------+
90| PH15  | GPIO        | LED1 blue                           |
91+-------+-------------+-------------------------------------+
92| PC8   | GPIO        | Push Button PB0                     |
93+-------+-------------+-------------------------------------+
94| PC9   | GPIO        | Push Button PB1                     |
95+-------+-------------+-------------------------------------+
96| PE1   | GPIO        | Board Controller Enable             |
97|       |             | EFM_BC_EN                           |
98+-------+-------------+-------------------------------------+
99| PH4   | UART_TX     | UART TX Console VCOM_TX US0_TX #4   |
100+-------+-------------+-------------------------------------+
101| PH5   | UART_RX     | UART RX Console VCOM_RX US0_RX #4   |
102+-------+-------------+-------------------------------------+
103| PI4   | I2C_SDA     | SENSOR_I2C_SDA I2C2_SDA #7          |
104+-------+-------------+-------------------------------------+
105| PI5   | I2C_SCL     | SENSOR_I2C_SCL I2C2_SCL #7          |
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 six USARTs, two UARTs and two Low Energy UARTs (LEUART).
119USART4 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   in Simplicity Studio.
127
128Flashing
129========
130
131The SLSTK3701A includes an `J-Link`_ serial and debug adaptor built into the
132board. The adaptor provides:
133
134- A USB connection to the host computer, which exposes a mass storage device and a
135  USB serial port.
136- A serial flash device, which implements the USB flash disk file storage.
137- A physical UART connection which is relayed over interface USB serial port.
138
139Flashing an application to SLSTK3701A
140-------------------------------------
141
142The sample application :zephyr:code-sample:`hello_world` is used for this example.
143Build the Zephyr kernel and application:
144
145.. zephyr-app-commands::
146   :zephyr-app: samples/hello_world
147   :board: slstk3701a
148   :goals: build
149
150Connect the SLSTK3701A to your host computer using the USB port and you
151should see a USB connection which exposes a mass storage device(STK3701A) and
152a USB Serial Port. Copy the generated zephyr.bin to the STK3701A drive.
153
154Open a serial terminal (minicom, putty, etc.) with the following settings:
155
156- Speed: 115200
157- Data: 8 bits
158- Parity: None
159- Stop bits: 1
160
161Reset the board and you'll see the following message on the corresponding serial port
162terminal session:
163
164.. code-block:: console
165
166   Hello World! slstk3701a
167
168
169.. _SLSTK3701A Website:
170   https://www.silabs.com/products/development-tools/mcu/32-bit/efm32-giant-gecko-gg11-starter-kit
171
172.. _SLSTK3701A User Guide:
173   https://www.silabs.com/documents/public/user-guides/ug287-stk3701.pdf
174
175.. _SLSTK3701A Schematics:
176   https://www.silabs.com/documents/public/schematic-files/BRD2204A-B00-schematic.pdf
177
178.. _EFM32GG Series 1 Website:
179   https://www.silabs.com/products/mcu/32-bit/efm32-giant-gecko-s1
180
181.. _EFM32GG11 Datasheet:
182   https://www.silabs.com/documents/public/data-sheets/efm32gg11-datasheet.pdf
183
184.. _EFM32GG11 Reference Manual:
185   https://www.silabs.com/documents/public/reference-manuals/efm32gg11-rm.pdf
186
187.. _J-Link:
188   https://www.segger.com/jlink-debug-probes.html
189