blob: 9062b0f6c2db3d5f26cbc8feca3853c19f1664a3 [file] [log] [blame]
.. _efr32_slwstk6061a:
EFR32-SLWSTK6061A
#################
Overview
********
The EFR32 Flex Gecko Wireless Starter Kit SLWSTK6061A contains a Wireless
System-On-Chip from the EFR32FG family built on an ARM® Cortex®-M4F processor
with excellent low power capabilities.
.. figure:: ./efr32_slwstk6061a.png
:width: 375px
:align: center
:alt: EFR32-SLWSTK6061A
EFR32-SLWSTK6061A (image courtesy of Silicon Labs)
Hardware
********
The SLWRB4250B radio board plugs into the Wireless Starter Kit Mainboard BRD4001A.
Wireless Starter Kit Mainboard:
- Advanced Energy Monitoring provides real-time information about the energy
consumption of an application or prototype design.
- Ultra-low power 128x128 pixel memory LCD
- 2 user buttons and 2 LEDs
- Si7021 Humidity and Temperature Sensor
- On-board Segger J-Link USB and Ethernet debugger
Radio Board:
- EFR32FG1P133F256GM48 Flex Gecko SoC
- 8Mbit SPI NOR Flash
For more information about the EFR32FG1 SoC and EFR32-SLWSTK6061A board, refer
to these documents:
- `EFR32FG Website`_
- `EFR32FG1 Datasheet`_
- `EFR32xG1 Reference Manual`_
- `EFR32-SLWSTK6061A Website`_
- `EFR32-SLWSTK6061A User Guide`_
- `WSTK Main Board BRD4001A Schematics`_
- `EFR32FG1-BRD4250B Schematics`_
Supported Features
==================
The efr32_slwstk6061a board configuration supports the following hardware features:
+-----------+------------+-------------------------------------+
| Interface | Controller | Driver/Component |
+===========+============+=====================================+
| NVIC | on-chip | nested vector interrupt controller |
+-----------+------------+-------------------------------------+
| SYSTICK | on-chip | systick |
+-----------+------------+-------------------------------------+
| FLASH | on-chip | flash memory |
+-----------+------------+-------------------------------------+
| GPIO | on-chip | gpio |
+-----------+------------+-------------------------------------+
| UART | on-chip | serial port-polling; |
| | | serial port-interrupt |
+-----------+------------+-------------------------------------+
The default configuration can be found in the defconfig file:
``boards/arm/efr32_slwstk6061a/efr32_slwstk6061a_defconfig``
Other hardware features are currently not supported by the port.
Connections and IOs
===================
The EFR32FG1P SoC has five GPIO controllers (PORTA to PORTD and PORTF). All of
them are enabled for the EFR32-SLWSTK6061A board.
In the following table, the column **Name** contains Pin names. For example, PA2
means Pin number 2 on PORTA, as used in the board's datasheets and manuals.
+-------+-------------+-------------------------------------+
| Name | Function | Usage |
+=======+=============+=====================================+
| PF4 | GPIO | LED0 |
+-------+-------------+-------------------------------------+
| PF5 | GPIO | LED1 |
+-------+-------------+-------------------------------------+
| PF6 | GPIO | Push Button PB0 |
+-------+-------------+-------------------------------------+
| PF7 | GPIO | Push Button PB1 |
+-------+-------------+-------------------------------------+
| PA5 | GPIO | Board Controller Enable |
| | | EFM_BC_EN |
+-------+-------------+-------------------------------------+
| PA0 | USART0_TX | UART Console EFM_BC_TX US0_TX #0 |
+-------+-------------+-------------------------------------+
| PA1 | USART0_RX | UART Console EFM_BC_RX US0_RX #0 |
+-------+-------------+-------------------------------------+
System Clock
============
The EFR32FG1P SoC is configured to use the 38.4 MHz external oscillator on the
board.
Serial Port
===========
The EFR32FG1P SoC has two USARTs and one Low Energy UARTs (LEUART).
USART0 is connected to the board controller and is used for the console.
Programming and Debugging
*************************
.. note::
Before using the kit the first time, you should update the J-Link firmware
from `J-Link-Downloads`_
Flashing
========
The EFR32-SLWSTK6061A includes an `J-Link`_ serial and debug adaptor built into the
board. The adaptor provides:
- A USB connection to the host computer, which exposes a debug interface and a
USB Serial Port.
- A physical UART connection which is relayed over interface USB Serial port.
- An Ethernet connection to support remote debugging.
Flashing an application to EFR32-SLWSTK6061A
--------------------------------------------
The sample application :ref:`hello_world` is used for this example.
Build the Zephyr kernel and application:
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: efr32_slwstk6061a
:goals: build
Connect the EFR32-SLWSTK6061A to your host computer using the USB port and you
should see a USB Serial Port. Use `J-Link`_ or Silicon Labs Simplicity Studio
to flash the generated zephyr.bin. On a Linux host with Zephyr SDK installed you
can run:
.. code-block:: console
ninja flash
The command is using `OpenOCD`_ runner.
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 be able to see on the corresponding Serial Port
the following message:
.. code-block:: console
Hello World! arm
.. _EFR32-SLWSTK6061A Website:
https://www.silabs.com/products/development-tools/wireless/proprietary/slwstk6061a-efr32-flex-gecko-868-mhz-2-4-ghz-and-sub-ghz-starter-kit
.. _EFR32-SLWSTK6061A User Guide:
https://www.silabs.com/documents/public/user-guides/UG182-WSTK6061-User-Guide.pdf
.. _WSTK Main Board BRD4001A Schematics:
https://www.silabs.com/documents/public/schematic-files/WSTK-Main-BRD4001A-A01-schematic.pdf
.. _EFR32FG1-BRD4250B Schematics:
https://www.silabs.com/documents/public/schematic-files/EFR32FG1-BRD4250B-B02-schematic.pdf
.. _EFR32FG Website:
https://www.silabs.com/products/wireless/proprietary/efr32-flex-gecko-2-4-ghz-sub-ghz
.. _EFR32FG1 Datasheet:
https://www.silabs.com/documents/public/data-sheets/efr32fg1-datasheet.pdf
.. _EFR32xG1 Reference Manual:
https://www.silabs.com/documents/public/reference-manuals/efr32xg1-rm.pdf
.. _J-Link:
https://www.segger.com/jlink-debug-probes.html
.. _J-Link-Downloads:
https://www.segger.com/downloads/jlink
.. _OpenOCD:
http://openocd.org/