1.. zephyr:board:: xg27_dk2602a
2
3Silicon Labs xG27-DK2602A is a Dev Kit using the EFR32BG27 SoC. The kit
4consists of the EFR32BG27 +8 dBm Dev Kit Board (BRD2602A).
5
6Hardware
7********
8
9- EFR32BG27 Blue Gecko Wireless SoC with up to 76.8 MHz operating frequency
10- ARM® Cortex® M33 core with 64 kB RAM and 768 kB Flash
11- Macronix ultra low power 8-Mbit SPI flash (MX25R8035F)
12- 2.4 GHz ceramic antenna for wireless transmission
13- Silicon Labs Si7021 relative humidity and temperature sensor
14- Vishay VEML6035 low power, high sensitivity ambient light Sensor
15- Silicon Labs Si7210 hall effect sensor
16- TDK InvenSense ICM-20689 6-axis inertial sensor
17- Pair of PDM microphones
18- One LED and one push button
19- Power enable signals and isolation switches for ultra low power operation
20- On-board SEGGER J-Link debugger for easy programming and debugging, which
21  includes a USB virtual COM port and Packet Trace Interface (PTI)
22- Mini Simplicity connector for access to energy profiling and advanced wireless
23  network debugging
24- Breakout pads for GPIO access and connection to external hardware
25- Reset button
26- CR2032 coin cell holder and external battery connector
27
28For more information, refer to these documents:
29
30- `xG27 Dev Kit User's Guide`_
31
32Supported Features
33==================
34
35The xg27_dk2602a board configuration supports the following hardware features:
36
37+-----------+------------+-------------------------------------+
38| Interface | Controller | Driver/Component                    |
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                              |
49+-----------+------------+-------------------------------------+
50| DMA       | on-chip    | ldma                                |
51+-----------+------------+-------------------------------------+
52
53Flashing
54========
55
56The xG27 Dev Kit includes an embedded `J-Link`_ adapter built around
57EFM32GG12 microcontroller (not user-programmable).
58The adapter provides:
59
60- SWD interface to EFR32BG27 for flashing and debugging.
61- SWO trace interface to EFR32BG27 for tracing.
62- UART interface to EFR32BG27 for console access.
63- A USB connection to the host computer, which exposes CDC-ACM Serial Port
64  endpoints for access to the console UART interface and proprietary J-Link
65  endpoints for access to the SWD and SWO interfaces.
66
67UART functionality of the adapter is accessible via standard CDC-ACM USB driver
68present in most desktop operating systems and any standard serial port terminal
69program e.g. `picocom`_.
70
71SWD and SWO functionality is accessible via `Simplicity Commander`_.
72
73The simplest way to flash the board is by using West, which runs Simplicity
74Commander in unattended mode and passes all the necessary arguments to it.
75
76- If Simplicity Commander is installed in the system and the directory in
77  which ``commander`` executable is located is present in the :envvar:`PATH` environment
78  variable:
79
80  .. code-block:: console
81
82   west flash
83
84- Otherwise, one should specify full path to the ``commander`` executable:
85
86  .. code-block:: console
87
88   west flash --commander <path_to_commander_directory>/commander
89
90- In case several J-Link adapters are connected, you must specify serial number
91  of the adapter which should be used for flashing:
92
93  .. code-block:: console
94
95   west flash --dev-id <J-Link serial number>
96
97Programming and Debugging
98=========================
99
100The sample application :zephyr:code-sample:`hello_world` is used for this example.
101Build the Zephyr kernel and application:
102
103.. zephyr-app-commands::
104   :zephyr-app: samples/hello_world
105   :board: xg27_dk2602a
106   :goals: build
107
108Connect your device to your host computer using the USB port and you
109should see a USB connection. Use ``west``'s flash command
110
111Open a serial terminal (minicom, putty, etc.) with the following settings:
112
113- Speed: 115200
114- Data: 8 bits
115- Parity: None
116- Stop bits: 1
117
118Reset the board and you should be able to see on the corresponding Serial Port
119the following message:
120
121.. code-block:: console
122
123   Hello World! xg27_dk2602a
124
125.. _picocom:
126   https://github.com/npat-efault/picocom
127
128.. _J-Link:
129   https://www.segger.com/jlink-debug-probes.html
130
131.. _Simplicity Commander:
132   https://www.silabs.com/developers/mcu-programming-options
133
134.. _xG27 Dev Kit User's Guide:
135   https://www.silabs.com/documents/public/user-guides/ug554-brd2602a-user-guide.pdf
136