News

Intuitive Firmware-Development Tool Accelerates IoT Sensor Design

June 18, 2018 by Paul Shepard

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 microcontroller (MCU).

Created to simplify development of IoT devices containing ST's MEMS sensors and MCUs, AlgoBuilder helps quickly 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 visualize sensor data as a time plot, scatter plot, or 3D plot.

Summary of features:

  • Simple graphical design of algorithms (drag and drop, connect, set properties, build, upload)
  • Wide range of function blocks available in libraries, including motion sensor algorithms (sensor fusion, gyroscope, magnetometer calibration and pedometer, for example)
  • Building function blocks
  • Automatic validation of design rules
  • C code generation from the graphical design
  • Use of external compilers (System Workbench for STM32, IAR EWARM, Keil µVision®)
  • Generated firmware output displayed through Unicleo-GUI
  • Open XML format for function blocks and design storage
  • Support for NUCLEO-F401RE or NUCLEO-L476RG with connected XNUCLEO-IKS01A2 expansion board
  • Network updates with automatic notification of new releases
  • Free user-friendly licensing terms

AlgoBuilder is available now, and free to download.