1.. _efm32gg_sltb009a: 2 3EFM32GG12 Thunderboard (SLTB009A) 4################################# 5 6Overview 7******** 8 9The EFM32GG12 Thunderboard Kit (SLTB009A) is an evaluation platform for the 10EFM32GG12 Giant Gecko Microcontroller, featuring an ARM Cortex-M4 with FPU, 111024kB flash, and 192kB RAM. 12 13.. figure:: sltb009a.jpg 14 :align: center 15 :alt: SLTB009A 16 17 SLTB009A (Credit: Silicon Labs) 18 19Hardware 20******** 21 22- PDM stereo microphones 23- USB connectivity 24- On-board Segger J-Link USB debugger 25- 2 user buttons and 2 LEDs 26- USB C connector 27 28For more information about the WGM160P and SLTB009A board: 29 30- `SLTB009A Website`_ 31- `SLTB009A User Guide`_ 32- `EFM32GG12 Datasheet`_ 33- `EFM32GG12 Reference Manual`_ 34 35Supported Features 36================== 37 38The efm32gg_sltb009a board configuration supports the following hardware 39features: 40 41+-----------+------------+-------------------------------------+ 42| Interface | Controller | Driver/Component | 43+===========+============+=====================================+ 44| MPU | on-chip | memory protection unit | 45+-----------+------------+-------------------------------------+ 46| COUNTER | on-chip | rtcc | 47+-----------+------------+-------------------------------------+ 48| FLASH | on-chip | flash memory | 49+-----------+------------+-------------------------------------+ 50| GPIO | on-chip | gpio | 51+-----------+------------+-------------------------------------+ 52| I2C | on-chip | i2c port-polling | 53+-----------+------------+-------------------------------------+ 54| NVIC | on-chip | nested vector interrupt controller | 55+-----------+------------+-------------------------------------+ 56| UART | on-chip | serial port-polling; | 57| | | serial port-interrupt | 58+-----------+------------+-------------------------------------+ 59 60The default configuration can be found in 61:zephyr_file:`boards/silabs/dev_kits/sltb009a/sltb009a_defconfig` 62 63Connections and IOs 64=================== 65 66The EFM32GG12 MCU has six GPIO controllers (PORTA to PORTF), all of which are 67currently enabled for the SLTB009A board. 68 69In the following table, the column **Name** contains pin names. For example, PE1 70means pin number 1 on PORTE, as used in the board's datasheets and manuals. 71 72+-------+-------------+-------------------------------------+ 73| Name | Function | Usage | 74+=======+=============+=====================================+ 75| PE12 | GPIO | LED0 | 76+-------+-------------+-------------------------------------+ 77| PA13 | GPIO | LED1 | 78+-------+-------------+-------------------------------------+ 79| PD5 | GPIO | Push Button PB0 | 80+-------+-------------+-------------------------------------+ 81| PD8 | GPIO | Push Button PB1 | 82+-------+-------------+-------------------------------------+ 83| PE7 | UART_TX | UART TX Console VCOM_TX US0_TX #1 | 84+-------+-------------+-------------------------------------+ 85| PE6 | UART_RX | UART RX Console VCOM_RX US0_RX #1 | 86+-------+-------------+-------------------------------------+ 87| PC0 | I2C_SDA | SENSOR_I2C_SDA I2C0_SDA #1 | 88+-------+-------------+-------------------------------------+ 89| PC1 | I2C_SCL | SENSOR_I2C_SCL I2C0_SCL #1 | 90+-------+-------------+-------------------------------------+ 91| PC4 | I2C_SDA | SENSOR_I2C_SDA I2C1_SDA #1 | 92+-------+-------------+-------------------------------------+ 93| PC5 | I2C_SCL | SENSOR_I2C_SCL I2C1_SCL #1 | 94+-------+-------------+-------------------------------------+ 95 96 97System Clock 98============ 99 100The EFM32GG12 MCU is configured to work at 72 MHz. 101 102Serial Port 103=========== 104 105The EFM32GG12 SoC has five USARTs, two UARTs and two Low Energy UARTs (LEUART). 106USART0 is connected to the board controller and is used for the console. 107 108Programming and Debugging 109************************* 110 111.. note:: 112 Before using the kit the first time, you should update the J-Link firmware 113 from `J-Link-Downloads`_ 114 115Flashing 116======== 117 118The SLTB009A includes an `J-Link`_ serial and debug adaptor built into the 119board. The adaptor provides: 120 121- A USB connection to the host computer 122- A physical UART connection which is relayed over interface USB serial port. 123 124Flashing an application to SLTB009A 125----------------------------------- 126 127Connect the SLTB009A to your host computer using the USB port. 128 129Here is an example to build and flash the :ref:`hello_world` application. 130 131.. zephyr-app-commands:: 132 :zephyr-app: samples/hello_world 133 :board: sltb009a 134 :goals: flash 135 136Open a serial terminal (minicom, putty, etc.) with the following settings: 137 138- Speed: 115200 139- Data: 8 bits 140- Parity: None 141- Stop bits: 1 142 143Reset the board and you'll see the following message on the corresponding serial port 144terminal session: 145 146.. code-block:: console 147 148 Hello World! sltb009a 149 150.. _SLTB009A Website: 151 https://www.silabs.com/development-tools/thunderboard/thunderboard-gg12-kit 152 153.. _SLTB009A User Guide: 154 https://www.silabs.com/documents/public/user-guides/ug371-sltb009a-user-guide.pdf 155 156.. _EFM32GG12 Datasheet: 157 https://www.silabs.com/documents/public/data-sheets/efm32gg12-datasheet.pdf 158 159.. _EFM32GG12 Reference Manual: 160 https://www.silabs.com/documents/public/reference-manuals/efm32gg12-rm.pdf 161 162.. _J-Link: 163 https://www.segger.com/jlink-debug-probes.html 164 165.. _J-Link-Downloads: 166 https://www.segger.com/downloads/jlink 167