Hello,
I am new to sensor programming. I am using the ICM-20602 and want to read data over SPI on an Arduino.
I already can read registers but now have difficulties to understand, what information exactly I can find in the registers.
Example:
Gyro X has a high and low register, so I assume that the result is
(high << 8) | low
But what datatype is the information? signed/unsigned int? Something else?
The result should be in dps, so I have to use the range of another register somehow:
value * range
I get really high acceleration values even lying on the table, so something seems to be wrong with my thinking.
I tried to implement the self test, but that did not work as well.
Example:
activate self test for all gyro and accel directions.
read gyro x test (interpretation?)
wait 1 second
deactivate self test for all gyro and accel directions
read gyro x (interpreation?)
test result = (gyro x test) - (gyro x)
Now I should compare the test result to the content of the appropriate self test register. But they are totally different.
Could anyone please explain to me what I am doing wrong?
Your help would be really appreciated