Skip to content

SiliconLabs/peripheral_examples_simplicity_sdk

Repository files navigation

Simplicity SDK
32-bit MCU Peripheral Examples

EFM32 32-bit Microcontrollers

This repo contains simple peripheral examples based on emlib in Simplicity SDK for Series 2 devices.

Supported Series 2 Radio Boards and Devices

Board ID Device
BRD4181AEFR32MG21
BRD4184BEFR32BG22
BRD4182AEFR32MG22
BRD4204DEFR32ZG23
BRD4186CEFR32MG24
BRD4270BEFR32FG25
BRD4117AEFR32MG26
BRD4111AEFR32BG27
BRD2602AEFR32BG27
BRD4194AEFR32MG27
BRD4400CEFR32ZG28
BRD4420AEFR32BG29
BRD4412AEFR32MG29

Supported Series 3 Radio Board and Device

Board ID Device
BRD4407ASiMG301

Requirements

  1. A compatible Silicon Labs Starter Kit
  2. Simplicity Studio 5
  3. Simplicity SDK (match the SDK version noted in the commit tag)
  4. Clone this repository into the Simplicity SDK extension directory:C:\Users\<username>\SimplicityStudio\SDKs\simplicity_sdk\extension

Importing Examples into Simplicity Studio 5

  1. Launch Simplicity Studio 5.
  2. Select your development board using either:
    • the My Products tab, or
    • the Adapter tab
  3. In the Launcher perspective, click Manage SDKs under Preferred SDKs and enable the SDK where the examples are installed as an extension.
  4. To browse available examples:
    • choose Create New Project from the Overview tab, or
    • open the Examples and Demos tab
  5. Apply the filter: 32-bit MCU
  6. Select an example and click Create to import it into your workspace.

Adding Support for a New Board

These peripheral examples use the peripheral_examples_evaluation_templates.xml file along with a custom component that provides dedicated Pin Configuration headers to support multiple development boards. To add support for a new board:

1. Update Compatibility Metadata

Modify the partCompatibility and boardCompatibility entries for the example inside: peripheral_examples_evaluation_templates.xml

2. Add a Pin Configuration File

Create a new pin_config.h file for your board and place it under the appropriate kit directory, following the structure used by existing boards. Example: series2/kit/EFR32MG21_BRD4181A/pin_config.h

3. Update silabs_bsp.slcc

Append the new pin configuration path:

- override:
    component: "%extension-peripheral_examples%silabs_bsp"
- path: series2/kit/EFR32MG21_BRD4181A/pin_config.h
  condition: [brd4181a]

4. Refresh the SDK

After installing the extension:

  1. Open Window → Preferences
  2. Navigate to Simplicity Studio → SDKs
  3. Click Refresh

⚠️ Compatibility Warning

SiXG301 is not supported when using the IAR toolchain v9.40.1, which is the latest version officially supported by the Simplicity SDK noted in this repository's commit tag. Refer to the Simplicity SDK release notes for more information.

Reporting Bugs/Issues and Posting Questions and Comments

All examples in this repo is are considered EVALUATION QUALITY, meaning this code has been minimally tested to ensure that it builds with the specified dependencies and is suitable as a demonstration for evaluation purposes only. This code will be maintained at the sole discretion of Silicon Labs.

To report bugs in the peripheral example projects, please create a new "Issue" in the "Issues" section of this repo. Please reference the board, project, and source files associated with the bug, and reference line numbers. If you are proposing a fix, also include information on the proposed fix. Silicon Labs engineers will address bugs and push them to the public repository periodically.

Questions and comments related to the peripheral examples should be made by creating a new "Issue" in the "Issues" section of this repo.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages