Generating a Knowledge Pack¶
In the Download Model tab we are going to generate a SensiML Knowledge Pack. A Knowledge Pack takes the event detection model you generated in the pipeline and transforms it into a binary or library file that can be run on your hardware device at the edge. Once the Knowledge Pack is on your hardware device, it starts outputting classification IDs that correspond to your events of interest.
Next, we are going to select our target hardware that we will want to flash our Knowledge Pack to. Let’s look at a screenshot and dive a little deeper.
SensiML Knowledge Packs are not locked to any specific hardware platform. This feature allows you to choose the platform where you will deploy your Knowledge Pack. Some fields (Processor, Float Options, Compiler) get default values that depend on the selected HW platform.
Select the Hardware Platform and Version of the device you wish to target
Select a Processor - Processor is set by default, but can be changed
Select a Float Option - Float Option is set by default, but can be changed
ARM/GCC Compilers produces binaries with options in regards to floating-point operations:
-mfloat-abi=softFull software floating-point. The compiler will not generate any FPU instructions and the
-mfpu=option is ignored. Function calls are generated by passing floating-point arguments in integer registers.
Soft FP -
-mfloat-abi=softfpHardware floating-point using the soft floating-point ABI. The compiler will generate FPU instructions according to the -mfpu= option. Function calls are generated by passing floating-point arguments in integer registers. This means
softfpmay be intermixed.
Hard FP -
-mfloat-abi=hardFull hardware floating-point. The compiler will generate FPU instructions according to the
-mfpu=option. Function calls are generated by passing floating-point arguments in FPU registers. This means hard and softfp cannot be intermixed; neither can hard and soft.
Select the Data Source. Data Source is the Sensor Configuration profile that was created in the Data Capture Lab during Capturing Sensor Data
We provide three formats for your Knowledge Pack: Binary, Library, and Source. The binary format will build a package that is ready to flash to your device and includes the predefined output methods listed in the widget.
Set the Format to Binary
More on Library and Source formats: If you have your own application and want to integrate a Knowledge Pack to build application specific non-AI features (LEDS, GPIO, ADC, DAC), then download the library or source format. This allows you to make calls directly to the Knowledge Pack API from your application. We will not be going into this during the quick start guide, but if you want to know more about library or source formats see the tutorial: Building a Knowledge Pack Library.
Application - Application is the example application for supported platforms that allows an example binary to be built for testing. Take a look at the description in the Knowledge Pack information section
Select an Application option
Output - Output corresponds to how your events get broadcasted from the hardware device. BLE sends the events over Bluetooth Low Energy, LED will blink the LED light on the device a different color for each event, and serial allows you to plug your device into your PC over serial connection to send the events.
Select an Output option
Click Download to build your Knowledge Pack and download it to your computer