Knowledge requiredThis tutorial assumes that you’re familiar with building applications for the Himax WE-I Plus. If you’re unfamiliar with either of these you build binaries directly for your development board from the Deployment page in the studio.
Prerequisites
Make sure you’ve followed one of the tutorials and have a trained impulse. Also install the following software:- Edge Impulse CLI - to flash the firmware.
- A build toolchain, either:
- Docker desktop.
- Or, the GNU Toolchain for DesignWare ARC processors, and make sure you have
arc-elf32-gcc
in your PATH (Linux only). - Or, the DesignWare ARC MetaWare Toolkit - including a valid license, and make sure you have
ccac
in your PATH.
Cloning the base repository
We created an example repository which contains a small application for the Himax WE-I Plus, which takes the raw features as an argument, and prints out the final classification. Download the application here, or import this repository using Git:Deploying your impulse
Head over to your Edge Impulse project, and go to Deployment. From here you can create the full library which contains the impulse and all external required libraries. Select C++ library and click Build to create the library. Download the.zip
file and extract the directories in the ‘example-standalone-inferencing-himax’ folder. Make sure to not replace CMakeLists.txt
in this folder. Your final folder structure should look like this:
Running the impulse
With the project ready it’s time to verify that the application works. Head back to the studio and click on Live classification. Then load a validation sample, and click on a row under ‘Detailed result’.
Selecting the row with timestamp '320' under 'Detailed result'.

Copying the raw features.
main.cc
and paste the raw features inside the static const float features[]
definition, for example:
Building the application (Docker)
-
Build the container:
-
Then set up your build environment:
-
And build and link the application:
Building the application (Metaware Toolkit)
-
Create a build directory and initialize CMake:
-
Build and link the application:
Building the application (GNU)
-
Create a build directory and initialize CMake:
-
Build and link the application: