ST X-CUBE-MEMS1 Sensor ma Motion Algorithm Software Expansion

TUSI LELEI

FA'ATAITAI: UM2350

The MotionPW library expands the functionality of the X-CUBE-MEMS1 software by acquiring data from the accelerometer to provide information about the number of steps and cadence performed with the wearable device.

Folasaga

The MotionPW middleware library is part of the X-CUBE-MEMS1 software and runs on STM32 Nucleo. It provides real-time information about the number of steps and cadence which the user just performed with the wearable device (e.g. a smart watch).

O lenei faletusi ua faamoemoe e galulue faatasi ma ST MEMS.
The algorithm is provided in static library format and is designed to be used on STM32 microcontrollers based on the ARM® Cortex®-M3, ARM Cortex®-M33, ARM® Cortex®-M4, ARM® Cortex®-M7 architecture.

O lo'o fausia i luga ole STM32Cube software technology e fa'afaigofie ai le feavea'i ile tele ole STM32 microcontrollers.

O le polokalama e sau ma le sample faʻatinoga o loʻo faʻaogaina i luga ole X-NUCLEO-IKS4A1 poʻo le X-NUCLEO-IKS01A3 faʻalautele laupapa i luga ole NUCLEO-F401RE, NUCLEO-U575ZI-Q poʻo le NUCLEO-L152RE laupapa atinaʻe.

1. Acronyms ma faapuupuuga

Laulau 1. Lisi o acronyms

Acronym Fa'amatalaga
API Fa'aoga polokalame fa'aoga
BSP Fonotaga lagolago a le Komiti
GUI Ata fa'aoga fa'aoga
HAL Fa'apipi'i mea faigaluega
IDE Siosiomaga atina'e tu'ufa'atasi

 

2. MotionPW middleware library in X-CUBE-MEMS1 software expansion for STM32Cube

2.1 MotionPW overview

O le faletusi o le MotionPW e faʻalauteleina le faʻaogaina o le polokalama X-CUBE-MEMS1.

E maua e le faletusi faʻamatalaga mai le accelerometer ma tuʻuina atu faʻamatalaga e uiga i le numera o laʻasaga ma le cadence na faʻaaogaina e le tagata faʻaoga i le masini faʻaogaina.
Ua mamanuina le faletusi mo ST MEMS. O le fa'atinoga ma le fa'atinoga pe a fa'aogaina isi masini MEMS e le'o su'esu'eina ma e mafai ona matua'i ese mai mea o lo'o fa'amatalaina i totonu o le pepa.
A sampe avanoa le faʻatinoga mo laupapa faʻalautele X-NUCLEO-IKS4A1 ma X-NUCLEO-IKS01A3, faʻapipiʻi i luga ole aNUCLEO-F401RE, NUCLEO-U575ZI-Q poʻo NUCLEO-L152RE laupapa atinaʻe.

2.2 MotionPW library

Technical information fully describing the functions and parameters of the MotionPW APIs can be found in the
MotionPW_Package.chm compiled HTML file o lo'o i totonu o le Fa'ailoga Fa'amaumauga.

2.2.1 MotionPW library description

O le faletusi pedometer a MotionPW e fa'atautaia fa'amaumauga na maua mai le fa'avavevave; e iai:

  • avanoa e iloa ai le numera o laasaga, cadence ma le mautinoa
  • fa'ailoga e fa'atatau i fa'amatalaga fa'avavevave
  • fa'amatalaga fa'avavevave mana'omia sampling faatelevave o 50 Hz
  • punaoa mana'omia:
    - Cortex-M3: 3.7 kB o le code ma le 1.8 kB o faʻamaumauga faʻamaumauga
    - Cortex-M33: 3.5 kB o le code ma le 1.8 kB o faʻamaumauga faʻamaumauga
    - Cortex-M4: 3.5 kB o le code ma le 1.8 kB o faʻamaumauga faʻamaumauga
    - Cortex-M7: 3.6 kB o le code ma le 1.8 kB o faʻamaumauga faʻamaumauga
  • avanoa mo ARM® Cortex®-M3, ARM® Cortex®-M33, ARM® Cortex®-M4 ma ARM® Cortex®-M7 fausaga

2.2.2 MotionPW APIs

O le MotionPW faletusi API o:

  • uint8_t MotionPW_GetLibVersion(char *version)
    – toe aumai le lomiga faletusi
    - *o le fa'aliliuga o se fa'asino ile fa'asologa o mataitusi e 35
    – toe faafoi le numera o mataitusi i le manoa faʻasologa
  • fa'aleaogaina le MotionPW_Initialize(fa'aleaogaina)
    – performs MotionPW library initialization and setup of the internal mechanism including the dynamic memory allocation

Fa'aaliga: E tatau ona vala'au lenei galuega a'o le'i fa'aogaina le faletusi o le malosi ma le CRC module i le STM32 microcontroller (i le RCC peripheral clock enable register) e tatau ona fa'agaoioi.

  •  fa'aleaogaina le MotionPW_Update(MPW_input_t *data_in, MPW_output_t *data_out)
    – executes pedometer for wrist algorithm
    - *data_in parameter o se faʻasino i se fausaga faʻatasi ai ma faʻamatalaga faʻaoga
    – the parameters for the structure type MPW_input_t are:
    ◦ O le AccX o le tau o le masini fa'avavevave ile X axis ile g
    ◦ AccY o le fa'atauva'a fa'atauva'a fa'ailo i le Y axis i le g
    ◦ O le AccZ o le fa'atauga o le masini fa'avavevave i le Z axis i le g
    – CurrentActivity is the enumerated input type MPW_activity_t with the following values:
    ◦ MPW_UNKNOWN_ACTIVITY = 0x00
    ◦ MPW_WALKING = 0x01
    ◦ MPW_FASTWALKING = 0x02
    ◦ MPW_JOGGING = 0x03
    - *data_out parameter o se faʻasino i se fausaga ma faʻamaumauga o galuega
    – the parameters for the structure type MPW_output_t are:
    ◦ Nsteps is number of steps performed by user
    ◦ Cadence is the cadence of user steps
    ◦ Confidence is the confidence of calculated output parameter
  •  fa'aleaogaina MotionPW_ResetPedometerLibrary(fa'aleaogaina)
    – resets the library internal variables and mechanism into default values (including current step count)
  •  fa'aleaogaina le MotionPW_ResetStepCount(fa'aleaogaina)
    – resets the current step count
  •  fa'aleaogaina le MotionPW_UpdateEnergyThreshold(fa'opeopea *energy_threshold)
    – updated energy threshold to fine tune step detection algorithm
    – *energy_threshold parameter is a pointer to energy threshold value

2.2.3 API fa'asolo siata

ST X-CUBE-MEMS1 Sensor ma Motion Algorithm Software Expansion

2.2.4 Fa'ailoga Fa'ailoga
The following demonstration code exampe faitau faʻamatalaga mai le faʻaogaina o le accelerometer, maua le gaioiga o loʻo i ai nei mai le faletusi o le MotionAW ma maua le numera o laasaga, cadence ma le mautinoa mai le faletusi MotionPW.

Fa'alautele

 

Fa'alautele

2.2.5 Algorithm faatinoga
The pedometer for wrist algorithm uses data from the accelerometer only and runs at a low frequency (50 Hz) to reduce power consumption.
When replicating fitness activity with the STM32 Nucleo board, ensure the board is oriented perpendicularly to the forearm, to simulate the wristband position.

Fa'alautele

Fa'alautele

2.3 Sample talosaga

O le MotionPW middleware e mafai ona faigofie ona faʻaogaina e fausia ai faʻaoga faʻaoga.
A sample application is provided in the Application folder. It is designed to run on a NUCLEO-F401RE, NUCLEOU575ZI- Q or NUCLEO-L152RE development board connected to an X-NUCLEO-IKS4A1 or X-NUCLEO-IKS01A3 expansion board.

O le talosaga e iloa ai laasaga, cadence ma le mautinoa i le taimi moni. O faʻamatalaga e mafai ona faʻaalia e ala ile GUI.

Fa'alautele

O le ata o loʻo i luga o loʻo faʻaalia ai le tagata faʻaoga B1 ma le tolu LED o le NUCLEO-F401RE laupapa. O le taimi lava e ola ai le laupapa, o le LED LD3 (PWR) e kilia.
E mana'omia se feso'ota'iga uaea USB e mata'ituina ai fa'amaumauga i taimi tonu. O le laupapa e faʻamalosia e le PC e ala i fesoʻotaʻiga USB. O lenei faiga galue e mafai ai e le tagata faʻaoga ona faʻaalia laasaga ua iloa, cadence ma le mautinoa, faʻamatalaga faʻavavevave, taimi stamp ma mulimuli ane isi faʻamatalaga faʻamatalaga, i le taimi moni, faʻaaoga le MEMS-Studio.

2.4 MEMS Studio talosaga

O le sampLe talosaga e faʻaaoga le MEMS-Studio talosaga, lea e mafai ona sii mai www.st.com.

Laasaga 1. Ia mautinoa o loʻo faʻapipiʻiina avetaavale manaʻomia ma le STM32 Nucleo laupapa faʻatasi ai ma le laupapa faʻalautele talafeagai e fesoʻotaʻi i le PC.

Laasaga 2. Tatala le talosaga MEMS-Studio e tatala ai le faamalama autu o talosaga.

Afai o se STM32 Nucleo laupapa ma firmware lagolago e fesoʻotaʻi i le PC, e otometi lava ona iloa.
Press the [Connect] button to establish connection to the evaluation board

Fa'alautele

Laasaga 3. Pe a fa'afeso'ota'i i le STM32 Nucleo laupapa fa'atasi ai ma firmware lagolago [Su'esu'ega o Faletusi] e tatalaina.

Ina ia amata ma taofi le tafeina o faʻamatalaga, kili le [Amata] talafeagai AMATA  pe [Taofi] TUMAU fa'amau i luga o le pito i fafo o mea faigaluega pa.

O faʻamatalaga e sau mai le masini fesoʻotaʻi e mafai ona viewed i le filifilia o le [Fuafa'amatalaga Fa'amatalaga] fa'amau i luga o le pito i totonu o le mea faigaluega tu'usa'o.

Fa'alautele

Laasaga 4. Click on the [Pedometer] to open the dedicated application window.

Fa'alautele

Laasaga 5. Kiliki i le [Save To File] e tatala ai le faʻamalama faʻasologa o faʻamaumauga. Filifili le faʻamatalaga ma le pedometer e teu i le file. E mafai ona e amata pe taofi sefe i le kiliki i luga o le ki fetaui.

Fa'alautele

Laasaga 6. E mafai ona fa'aogaina le fa'aogaina o fa'amaumauga e tu'uina atu ai fa'amatalaga na maua muamua i le faletusi ma maua ai le taunu'uga. Filifili le [Data Injection] tab i luga o le pa o meafaigaluega e tatala ai le tuuto view mo lenei galuega

Fa'alautele

Laasaga 7. Kiliki i le [Browse] button e filifili ai le file fa'atasi ai ma fa'amaumauga na pu'eina muamua ile CSV fa'atulagaina.

O faʻamatalaga o le a faʻapipiʻiina i le laulau i le taimi nei view.

O isi faamau o le a ola. E mafai ona e kiliki i luga:
– [Offline Mode] button to switch the firmware offline mode on/off (mode utilizing the previously captured data).
– [Amata]/[Taofi]/[Laasaga]/[Toe] faamau e pulea ai le fafaga o faamatalaga mai le MEMS-Studio i le faletusi.

3. Fa'amatalaga

O punaoa uma nei e maua fua ile www.st.com.

1. UM1859: Getting started with the X-CUBE-MEMS1 motion MEMS and environmental sensor software expansion for STM32Cube
2. UM1724: STM32 Nucleo-64 boards (MB1136)
3. UM3233: Getting started with MEMS-Studio

Toe iloilo tala'aga

Laulau 4. Tala'aga o le toe iloiloga o pepa

Aso  Fa'aliliuga  Suiga
24-Ian-18 1 Fa'asalalauga muamua.
21-Mat-18 2 Updated Introduction and Section 2.1 MotionPW overview.
20-Feb-19 3 Updated Section 2.2.5: Algorithm performance and Figure 3. STM32 Nucleo: LEDs, button, jumper.
Faʻaopoopo le X-NUCLEO-IKS01A3 faʻamatalaga fesoʻotaʻiga laupapa faʻalautele.
20-Me-25 4 Fa'afou Fa'atomuaga Vaega, Vaega 2.1: Fa'amaloPWview, Section 2.2.1: MotionPW library description, Section 2.2.2: MotionPW APIs, Section 2.2.4: Demo code, Section 2.2.5: Algorithm performance, Section 2.3: Sample application, Section 2.4: MEMS Studio applica

 

FA'AALIGA TAUA – FAITAU MA LE FA'AMANATU

STMicroelectronics NV ma ona lala ("ST") fa'aagaga le aia e fai ai suiga, fa'asa'oga, fa'aleleia, fa'aleleia, ma fa'aleleia atili i oloa ST ma/po'o lenei pepa i so'o se taimi e aunoa ma se fa'aaliga. E tatau i tagata fa'atau ona maua fa'amatalaga talafeagai lata mai i oloa ST a'o le'i tu'uina atu oka. O oloa ST o lo'o fa'atau atu e tusa ai ma tu'utu'uga ma aiaiga a le ST o lo'o fa'atau atu i le taimi e fa'ailoa ai le oka.
E na'o le au fa'atau le filifiliga, filifiliga, ma le fa'aogaina o oloa ST ma e leai se noataga a le ST mo fesoasoani talosaga po'o le mamanu o oloa a tagata fa'atau.

Leai se laisene, fa'aalia pe fa'aalia, i so'o se aia tatau tau le atamai ua fa'atagaina e ST i totonu.
Toe fa'atauina atu oloa ST ma aiaiga e ese mai fa'amatalaga o lo'o fa'ailoa mai i inei e tatau ona fa'aleaogaina ai so'o se fa'ataga na tu'uina atu e ST mo ia oloa.
ST ma le logo ST o fa'ailoga fa'ailoga a ST. Mo fa'amatalaga fa'aopoopo e uiga i fa'ailoga fa'ailoga ST, va'ai ile www.st.com/trademarks. O isi igoa uma o oloa po'o auaunaga o le meatotino a latou lava tagata.

O fa'amatalaga i totonu o lenei pepa e suitulaga ma suia fa'amatalaga na tu'uina atu muamua i so'o se lomiga muamua o lenei pepa.

© 2025 STMicroelectronics – Ua taofia aia tatau uma

Fa'atinoga

A sample implementation is available for X-NUCLEO-IKS4A1 and X-NUCLEO-IKS01A3 expansion boards mounted on specified development boards.

Fa'amatalaga Fa'atekinisi

For detailed functions and parameters of the MotionPW APIs, refer to the MotionPW_Package.chm compiled HTML file o lo'o i totonu o le Fa'ailoga Fa'amaumauga.

API

  • MotionPW_GetLibVersion(char *version)
  • MotionPW_Initialize(valea)
  • MotionPW_Update(MPW_input_t *data_in, MPW_output_t *data_out)
  • MotionPW_ResetPedometerLibrary(valea)
  • MotionPW_ResetStepCount(valea)
  • MotionPW_UpdateEnergyThreshold(opeopea *energy_threshold)

Fa'amatalaga

  • Igoa Oloa: MotionPW Moni-Taimi Pedometer
  • Fesoʻotaʻiga: X-CUBE-MEMS1 faʻalauteleina mo STM32Cube
  • Tufuga: STMicroelectronics
  • Faletusi: MotionPW Middleware Library
  • Mauaina o Faamatalaga: Accelerometer
  • Sampling Saosaoa: 50 Hz

Fesili e Fai soo (FAQ)

Q: E mafai ona ou fa'aogaina le faletusi o le MotionPW i masini e le o ni ST MEMS?

A: O le faletusi ua fuafuaina mo ST MEMS sensors na'o.
O le fetaui ma isi masini MEMS e le faʻamaonia.

Q: O le a le faʻamatalaga faʻavavevave manaʻomia sampling frequency?

A: O le mana'omia sampling frequency is 50 Hz for accurate detection of steps and cadence.

F: E fa'afefea ona ou amataina le faletusi o le MotionPW?

A: Call the MotionPW_Initialize() function before using the fitness activity library. Ensure the CRC module in the STM32 microcontroller is enabled.

Pepa / Punaoa

ST X-CUBE-MEMS1 Sensor ma Motion Algorithm Software Expansion [pdf] Tusi Taiala
STM32 Nucleo, X-NUCLEO-IKS4A1, X-NUCLEO-IKS01A3, X-CUBE-MEMS1 Sensor ma Motion Algorithm Software Expansion, X-CUBE-MEMS1, Sensor and Motion Algorithm Software Expansion, Motion Algorithm Software Expansion, Algorithm Software Expansion

Fa'asinomaga

Tuu se faamatalaga

E le fa'asalalauina lau tuatusi imeli. Fa'ailogaina fanua mana'omia *