STMicroelectronics’ AlgoBuilder tool takes the coding out of firmware development by letting users build sensor-control algorithms graphically with library modules, ready to compile and run on an STM32 MCU. Created to simplify development of IoT devices containing ST’s MEMS sensors and MCUs, AlgoBuilder helps get a proof-of-concept model up and running. Users can build their algorithms quickly and intuitively by dragging and dropping selected functions, connecting the blocks, and configuring properties.
AlgoBuilder validates all design rules and automatically generates C code based on the graphical design.
Leveraging ST’s broad selection of STM32 microcontrollers and MEMS sensors including motion and environmental sensors and silicon microphones, AlgoBuilder provides libraries such as logic and mathematical operators, signal processing, user inputs, vector operations, and many others.
Turnkey algorithms for commonly used functions such as sensor hub, motion-sensor calibration, activity recognition, motion intensity, and pedometer are included. Users can also add their own custom functions to the AlgoBuilder libraries.
While other MEMS device vendors typically provide software libraries, ST’s AlgoBuilder goes further by providing an environment for connecting them with other logic to create a complete firmware project ready to compile using an STM32 IDE (Integrated Development Environment) such as TrueSTUDIO for STM32, SW4STM32 System Workbench for STM32, IAR-EWARM IAR Embedded Workbench for Arm, and Keil µVision MDK-ARM-STM32.
AlgoBuilder can generate firmware for deployment on various STM32 platforms. These include the NUCLEO-F401RE and NUCLEO-L476RG development boards with the X-NUCLEO-IKS01A2 MEMS-sensor expansion board, and ST’s SensorTile IoT module.
The SensorTile integrates a STM32L476JG ultra-low-power microcontroller, motion and environmental MEMS sensors, and Bluetooth Low Energy (BLE) connectivity.
Users can test their firmware by launching the Unicleo-GUI application from within AlgoBuilder, to display outputs from running firmware. Unicleo-GUI is a dedicated sensor graphical user interface for use with ST’s sensor expansion software packages and X-NUCLEO boards, and lets users visualise sensor data as a time plot, scatter plot, or 3D plot.