Skip to main content
Explorer
January 29, 2024
Solved

ASM330LHH Frequency Measurement using the mother UNICO-GUI

  • January 29, 2024
  • 5 replies
  • 2144 views

Hi there,

We are testing the ASM330LHH with the motherboard STEVAL-MKI193V1 and use Unico-GUI to collect data.  ODR was set to be 6667 Hz and easy configuration was used. The excitation was a 1kHz sin wave but the data saved using Unico-GUI showed a frequency of ~967 Hz. would really appreciate any help to trouble shoot? 

 

Thanks 

    This topic has been closed for replies.
    Best answer by Federica Bossi

    Hi @imuguy2022 ,

    Please, check the INTERNAL_FREQ_FINE register (63h) to see if the difference in real ODR can be a cause of this issue.

    It is possible to get the actual timestamp resolution value through the FREQ_FINE[7:0] bits of the
    INTERNAL_FREQ_FINE register, which contains the difference in percentage of the actual ODR (and timestamp
    rate) with respect to the nominal value: ODRactual Hz = (6667 + 0.0015 ⋅ FREQ_FINE ⋅ 6667)/ODRcoeff 

    5 replies

    Technical Moderator
    January 30, 2024

    Hi @imuguy2022 ,

    Please, check the INTERNAL_FREQ_FINE register (63h) to see if the difference in real ODR can be a cause of this issue.

    It is possible to get the actual timestamp resolution value through the FREQ_FINE[7:0] bits of the
    INTERNAL_FREQ_FINE register, which contains the difference in percentage of the actual ODR (and timestamp
    rate) with respect to the nominal value: ODRactual Hz = (6667 + 0.0015 ⋅ FREQ_FINE ⋅ 6667)/ODRcoeff 

    Explorer
    January 31, 2024

    Hi Federica, 

     

    Thanks for the prompt reply. The value of register 63h is 31h (49 in decimal), which makes the ODR higher than what it is supposed to be (7157 vs 6900 to match the shaker frequency). Any thoughts on that?

    Also what could effect the actual ODR? Does the value in register 63h (%) change with ODR settings? 

     

    Thanks

    Technical Moderator
    February 1, 2024

    Hi @imuguy2022 ,

    The fine tuning discrepancy percentage of the ODR is higher than the output data rate that you mentioned, so I think it can be conducted to that.

    If you need the precise frequency, you could activate a timer on the microcontroller, and fine tune that frequency, then you can use the timer to read data, but keep in mind that it will be asynchronous, so you could loose some data (if you are interested in the data at the exact frequency it will not be a problem)

    Explorer
    February 1, 2024

    Hi Federica, 

    Thanks for the prompt reply. Just would like to confirm that it is not a surprise that a difference could exist between the actual ODR and ODR calculated using the value from register 63h, correct?

     

    Does this frequency difference (in %) change with settings (like from ODR 6667 -> 3333 Hz)? Also does it change with other conditions like temperature? 

     

    Thanks

     

    Technical Moderator
    February 5, 2024

    Hi @imuguy2022 ,

    Yes it is totally expected, register 63h is to have the difference in percentage of the effective ODR (and timestamp rate) with respect to the typical.

    Yes, the difference can change with the settings and the temperature.

    Explorer
    February 7, 2024

    Hi Federica,

    Just would like to make sure I was understood. Even using the value from register 63h, we still could not get the exact ODR as the reference sensor/shaker shows. Is that right? 
    Thanks

    Technical Moderator
    February 8, 2024

    Hi @imuguy2022 ,

    Yes, it's correct. It could be slightly different.