Skip to content

Commit c5a699b

Browse files
authored
Merge pull request #47 from sparkfun/release_candidate
Update DMP.md
2 parents 508e609 + 7bc7601 commit c5a699b

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

DMP.md

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,9 @@ It does however support:
2525
- Raw and calibrated accelerometer, gyro and compass data and accuracy
2626
- 6-axis and 9-axis Quaternion data (including Game Rotation Vector data)
2727
- Geomagnetic Rotation Vector data
28+
- and [more...](#which-dmp-features-are-currently-supported)
2829

29-
We have added [three new examples](https://github.com/sparkfun/SparkFun_ICM-20948_ArduinoLibrary/tree/master/examples/Arduino) to show how to configure the DMP and read:
30+
We have added [five new examples](https://github.com/sparkfun/SparkFun_ICM-20948_ArduinoLibrary/tree/master/examples/Arduino) to show how to configure the DMP and read:
3031
9-axis Quaternion data; 6-axis Quaternion converted to Euler angles (roll, pitch & yaw); raw accelerometer data.
3132

3233
## Is DMP support enabled by default?
@@ -127,15 +128,19 @@ You will find the definitions in ```ICM_20948_DMP.h```.
127128

128129
That file also includes the definition for the ```icm_20948_DMP_data_t``` struct which is loaded with DMP data from the FIFO.
129130

131+
```const int``` declarations (including the DMP firmware image) are in ```ICM_20948_C.c```
132+
130133
## Can the DMP generate interrupts?
131134

132135
Yes it can, but you might find that they are not fully supported as we have not tested them. The main functions you will need to experiment with are ```intEnableDMP``` and ```enableDMPSensorInt```.
133136

134137
## How is the DMP data rate set?
135138

136-
We don't know the complete answer to this. As we understand it, it is a _combination_ of the raw sensor rate (set by ```setSampleRate```) and the multiple DMP Output Data Rate (ODR) registers
137-
(set by ```setDMPODRrate```). The documentation says that the "DMP is capable of outputting multiple sensor data at different rates to FIFO". So, in theory, you can have (e.g.) raw accelerometer
138-
data and Quaternion data arriving at different rates, but we have not tested that.
139+
It is a _combination_ of the raw sensor rate (set by ```setSampleRate```) and the multiple DMP Output Data Rate (ODR) registers
140+
(set by ```setDMPODRrate```). There are other settings that need to be changed to match the sample rate too.
141+
Please see [examples 9 & 10](https://github.com/sparkfun/SparkFun_ICM-20948_ArduinoLibrary/tree/master/examples/Arduino) for more details.
142+
143+
The DMP is capable of outputting multiple sensor data at different rates to the FIFO.
139144

140145
## Can I contribute to this library?
141146

0 commit comments

Comments
 (0)