cancel
Showing results for 
Search instead for 
Did you mean: 

ASM330LHH Frequency Measurement using the mother UNICO-GUI

imuguy2022
Associate II

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 

1 ACCEPTED SOLUTION

Accepted Solutions
Federica Bossi
ST Employee

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 

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

View solution in original post

7 REPLIES 7
Federica Bossi
ST Employee

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 

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
imuguy2022
Associate II

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

Federica Bossi
ST Employee

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)

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

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

 

Federica Bossi
ST Employee

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.

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
imuguy2022
Associate II

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

Hi @imuguy2022 ,

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

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.