Edge Impulse enables developers to create the next generation of intelligent device solutions with embedded machine learning. This repository contains the Edge Impulse firmware for Silicon Labs EFR32xG24 Dev Kit. This device supports all of Edge Impulse's device features, including ingestion, remote management and inferencing.
Note: Do you just want to use this development board to collect data with Edge Impulse? No need to build this firmware. View the getting started guide for a pre-built firmware image and flashing instructions.
This firmware has a BLE capabilities built-in that allow you to start/stop inference and see its results on the mobile phone.
-
If you want to deploy your model (exported as a
Simplicity Studio Component
from Studio), extract the exportedzip
file content into:extension
This repository is a snapshot of the Edge Impulse internal code base, therefore PRs won't be merged. If you find any bugs or want to contribute use our Developer Forum to submit them.
- EFR32xG24 Dev Kit
- (optional) Arducam Mini 2MP PLUS
For a local build using command line tools:
For build using Docker container:
For build using Simplicity Studio v5:
- Simplicity Studio 5 with Gecko SDK 4.0.2
-
Clone the Gecko SDK v.4.0.2
git clone -b v4.0.2 https://github.com/SiliconLabs/gecko_sdk.git
-
Install SLC CLI Tools (see p. 2.1)
-
Configure
SLC CLI
to point the location of theGecko SDK
and sign the SDKslc configuration --sdk /home/user/gecko_sdk/ slc signature trust --sdk /home/user/gecko_sdk/
-
Also configure the default location of your toolchain, eg.
slc configuration --gcc-toolchain /opt/toolchains/gcc-arm-none-eabi-10-2020-q4-major
-
Clone this repository and build
git clone [email protected]:edgeimpulse/firmware-silabs-xg24.git cd firmware-silabs-xg24/ ./build.sh --build
-
Clone this repository
git clone [email protected]:edgeimpulse/firmware-silabs-xg24.git cd firmware-silabs-xg24/
-
Build the container
$ docker build -t edge-impulse-silabs .
-
Build the application
docker run --rm -v $PWD:/app edge-impulse-silabs /bin/bash build.sh --build
-
Install Simplicity Studio v5 and Gecko SDK v4.0.2
-
Clone this repository
-
In the Simplicity Studio, choose
File -> Import
-
Browse to the directory with cloned repository select
firmware-xg24
project and clikNext
-
Check if all imported configurations are correct, especially
Board
,SDK
andToolchain
: -
Choose a project name in your workspace and finish
-
We have to make a few tweaks before building the project. In the
Project Explorer
panel, right click on theextension
directory and chooseDelete
-
Confirm that only workspace link will be removed, the target will remain unchanged
-
Now, double click on the
firmware-xg24.slcp
file to open project configuration -
In the new window choose
Change Targed/SDK/Generators
-
Make sure only
Simplicity IDE Project
generator is selected, REMOVE any other generators. -
Build the project
-
Install Simplicity Commander
-
Connect the board and flash:
$ ./build.sh --flash