Open Piero01 opened 3 years ago
Which eeprom version do you have in chip and which version are you looking at in datasheet?
EE_VERSION on chip returns 0x8305. I'm using the datasheet from Melexis website: revision 10 - November 2020.
The iterations usually converge, so from 3 to 5 iterations may be some last digits might change - usually they don't, so for speed-wise 3 iterations are enough. Seems like the datasheet was updated with this in mind. I will check internally about the change.
For the calculations, it indeed seems like we average it once too many. I doubt there is much difference as most values are quite stable - maybe +/- 1 difference, but it indeed seems discrepancy. Will also check about the latest developments in this topic.
Thanks for a detailed review of the implementation.
Hi,
Best regards
Hello, It seems there are some differences regarding the datasheet and the example library:
in the 3rd iteration the end result is obtained
but in the library 5 iterations are made cfr. mlx90632.c lines 403 and 434. How many iterations should be done then? Is there an advantage to make more iterations?mlx90632_preprocess_temp_object()
, line284:return ((((object_new_raw + object_old_raw) / 2) / (MLX90632_REF_12)) / VR_IR) * 524288.0;
it is using object_new_raw = (RAM_4 + RAM_5) / 2 and object_old_raw = (RAM_7 + RAM_8) / 2 (for cycle_pos = 1). What should be done finally? Is the code up-to-date with the datasheet? Should I follow the datasheet or the code?Thanks.