Infineon PSoC™ 6

The PSoC™ 6 family is built on an ultra-low-power architecture, and the MCUs feature low-power design techniques that are ideal for battery powered applications. The dual-core Arm® Cortex®-M4 and Cortex-M0+ architecture lets designers optimize for power and performance simultaneously. Using its dual cores combined with configurable memory and peripheral protection units, the PSoC™ 6 MCU delivers the highest level of protection defined by the Platform Security Architecture (PSA) from Arm.

SensiML supports the Infineon PSoC 62S2 Wi-Fi BT Pioneer Kit with the IoT sense expansion kit

This guide will go over how to setup the PSoC™ 6 firmware for data collection or recognition. Once your device is setup, you can find a tutorial on how to use the SensiML Toolkit software in the Getting Started Tutorial.

PSoC 62S2 Wi-Fi BT Pioneer Kit (CY8CKIT-062S2-43012) & IoT sense expansion kit (CY8CKIT-028-SENSE)

Connecting the Board

Connect the IoT sense expansion kit (CY8CKIT-028-SENSE) to the PSoC 62S2 Wi-Fi BT Pioneer Kit (CY8CKIT-062S2-43012) in order to use the IMU and Microphone sensors.

PSoC 62S2 Wi-Fi BT Pioneer Kit (CY8CKIT-062S2-43012) and IoT sense expansion kit (CY8CKIT-028-SENSE)

Building & Flashing Firmware

In order to build firmware for the PSoC 62S2 kit, you will need ModusToolbox from Infineon, available here: https://softwaretools.infineon.com/tools/com.ifx.tb.tool.modustoolbox

The firmware source code is hosted by SensiML on GitHub: https://github.com/sensiml/psoc6-template-fw

This project can be manually imported into ModusToolbox or created as a new application in Eclipse.

To create a new application with the SensiML Template, first select a New Application in the Eclipse for ModusToolbox window:

ModusToolbox Create new Application

Then, find CY8CKIT-062S2-43012 for the board support package, and click next:

Selecting BSP in ModusToolbox Project Creator

Then, select the SensiML Template Application, and give your project a name:

Select template and name your project.

For data collection, set the #define APPLICATION_RUNNING_MODE in app_config.h to

#define APPLICATION_RUNNING_MODE DATA_CAPTURE_RUNNING_MODE

To build and flash the application, open the terminal and run the command.

make program TARGET=CY8CKIT-062S2-43012 TOOLCHAIN=GCC\_ARM

Connecting to the Data Capture Lab

After the board has been flashed with the data collection firmware you can start using it in the Data Capture Lab. By default, the Data Capture Lab supports data collection for the Accelerometer, Gyroscope, and Microphone sensors. If you want add new sensors see the Adding Custom Device Firmware Documentation for more information.

Download/Flash Model Firmware

In the Analytics Studio, download the Knowledge Pack Library.

../../_images/download-library1.png

Extract the downloaded file, and inside you will see a knowlegepack_project and sensiml folders.

../../_images/extract-files.png

You will want to copy all of the files in senisml/lib and sensiml/inc over to the source/lib folder in your ModusToolbox template project.

../../_images/copy-lib-source-files.png

The knowledgepack_project folder will contain the app_config.h for your project. You can copy it to the source folder of your ModusToolbox template project.

Click the build icon button or run the following command in the terminal:

make program TARGET=CY8CKIT-062S2-43012 TOOLCHAIN=GCC\_ARM
../../_images/modus-toolbox-project.png

This will build and flash the PSoC 6 with firmware to perform local inference.