Releases: wollewald/ICM20948_WE
Release list
New FIFO examples
Further amandment of Readme
I had some typos in readme and have corrected an unclear statement.
Some additional hints in readme
I added some comments in readme on modules calledd ICM20948v2 oder ICM20948 version 2.0. No cange to the code.
Additional example sketches, improved init()
I have added two additional example sketches, 17 and 18.
I have further improved the init() function to avoid failing.
Changes to readme and example circuit diagrams
No change to the code. But I have updated the example circuit diagrams. Cheap boards have VDD internally connected to VDDIO which voltage range is from 1.71 to 1.95 volts. So, these boards have to be operated within this range.
Changing SPI pins on STM32 boards
The library now supports changing SPI pins on STM32 boards. See example sketch 15.
I also did some slight changes to ensure better compatibility with STM32 boards in general. A short delay of few microseconds were needed after writing into registers of the ICM20948.
Furthermore, I have corrected dew typos.
Change of SPI pins restricted to ESP32
In version 1.2.2 I had introduced a method to change the SPI pins. It worked fine on an ESP32. The problem is that not all MCUs do know the function SPI.begin(...changed pins...). I have now restricted the use to ESP32 boards using #ifdefined (ESP32).
Correct way of handling xyzFloat structures
Version 1.2.2 is not fully compatible with former versions. Many functions like getGValues() returned xyzFloat structures. To be exact, the functions did return pointers to the structures which were created by library functions. But after returning from the functions the memory space where the structures were located can be overwritten. I have changed that by passing the xyzFloat variables by reference. See also readme.
Moreover, I have added the option to change SPI pins in case your MCU board allows that. You can pass the SPI pins when creating your ICM20948_WE object.
Further improvement of magnetometer detection
Further improvement of magnetometer detection. With release 1.2.1 some users still had problems to detect the magnetometer.
Connection issue solved
My library caused sporadic connection issues after re-powering. This has been solved by setting up the magnetometer as SLV4. The magnetometer data reading is still done using the magnetometer as SLV0.