.. _efr32_radio_brd4170a:

EFR32 BRD4170A (SLWRB4170A)
###########################

Overview
********

The EFR32MG12 Mighty Gecko Radio Board contains a Wireless System-On-Chip
from the EFR32MG12 family built on an ARM Cortex®-M4F processor with excellent
low power capabilities.

.. figure:: efr32mg12-slwrb4170a.jpg
   :align: center
   :alt: SLWRB4170A Mighty Gecko Radio Board

   SLWRB4170A (image courtesy of Silicon Labs)

The BRD4170A a.k.a. SLWRB4170A radio board plugs into the Wireless Starter Kit
Mainboard BRD4001A and is supported as one of :ref:`efr32_radio`.

Hardware
********

- EFR32MG12P433F1024GM68 Mighty Gecko SoC
- CPU core: ARM Cortex®-M4 with FPU
- Flash memory: 1024 kB
- RAM: 256 kB
- Transmit power: up to +19 dBm
- Operation frequency: 2.4 GHz and Sub-Ghz
- Crystals for LFXO (32.768 kHz) and HFXO (38.4 MHz).

For more information about the EFR32MG12 SoC and BRD4170A board, refer to these
documents:

- `EFR32MG12 Website`_
- `EFR32MG12 Datasheet`_
- `EFR32xG12 Reference Manual`_
- `BRD4170A User Guide`_

Supported Features
==================

Please refer to
:ref:`EFR32 Radio Board Supported Features <efr32_radio_supported_features>`
for details of the configuration and common features supported by the
efr32_radio_brd4170a board.

The default configuration can be found in the defconfig file:

	``boards/arm/efr32_radio/efr32_radio_brd4170a_defconfig``

System Clock
============

The EFR32MG12P SoC is configured to use the 38.4 MHz external oscillator on the
board.

Serial Port
===========

The EFR32MG12P SoC has four USARTs and one Low Energy UARTs (LEUART).
USART0 is connected to the board controller and is used for the console.

Programming and Debugging
*************************

Please refer to
:ref:`Programming and Debugging EFR32 Radio Board <efr32_radio_programming>`
for details on the supported debug interfaces.

Flashing
========

Connect the BRD4001A board with a mounted BRD4170A radio module to your host
computer using the USB port.

Here is an example for the :ref:`hello_world` application.

.. zephyr-app-commands::
   :zephyr-app: samples/hello_world
   :board: efr32_radio_brd4170a
   :goals: flash

Open a serial terminal (minicom, putty, etc.) with the following settings:

- Speed: 115200
- Data: 8 bits
- Parity: None
- Stop bits: 1

Reset the board and you should see the following message in the terminal:

.. code-block:: console

   Hello World! efr32_radio_brd4170a


.. _EFR32MG12 Website:
   https://www.silabs.com/wireless/zigbee/efr32mg12-series-1-socs

.. _EFR32MG12 Datasheet:
   https://www.silabs.com/documents/public/data-sheets/efr32mg12-datasheet.pdf

.. _EFR32xG12 Reference Manual:
   https://www.silabs.com/documents/public/reference-manuals/efr32xg12-rm.pdf

.. _BRD4170A User Guide:
   https://www.silabs.com/documents/public/user-guides/ug342-brd4170a-user-guide.pdf
