- Fixed IMU calibration function bugs

- Fixed IMU data processing bugs
- Fixed madgwick init bug
- Inverted magn axis relative to IMU (180 degree rotation) in madgwick
- Acc bias currently set to 0 and 1 for gravity
- Gyro values now rad/s instead of deg/s as madgwick requires
This commit is contained in:
pima committed 2026-10-04 18:03:02 +02:00
1 parent 1409bad40b
commit 570f0c12f9
19 files changed
+45215 -45317

No files matched your search

+18 -18
View File
@@ -3,21 +3,21 @@
../Drivers/STM32WBxx_HAL_Driver/Inc/stm32wbxx_ll_bus.h:364:22:LL_AHB1_GRP1_EnableClock 1
../Drivers/STM32WBxx_HAL_Driver/Inc/stm32wbxx_ll_bus.h:539:22:LL_AHB2_GRP1_EnableClock 1
../Drivers/STM32WBxx_HAL_Driver/Inc/stm32wbxx_ll_hsem.h:233:26:LL_HSEM_1StepLock 2
../Core/Src/main.c:138:5:_write 2
../Core/Src/main.c:151:5:main 2
../Core/Src/main.c:266:6:SystemClock_Config 3
../Core/Src/main.c:332:6:PeriphCommonClock_Config 2
../Core/Src/main.c:357:13:MX_I2C1_Init 4
../Core/Src/main.c:405:13:MX_IPCC_Init 2
../Core/Src/main.c:431:13:MX_RF_Init 1
../Core/Src/main.c:452:13:MX_RTC_Init 3
../Core/Src/main.c:495:13:MX_SPI1_Init 2
../Core/Src/main.c:535:13:MX_SPI2_Init 2
../Core/Src/main.c:575:13:MX_TIM2_Init 6
../Core/Src/main.c:630:13:MX_DMA_Init 1
../Core/Src/main.c:658:13:MX_GPIO_Init 1
../Core/Src/main.c:725:6:Start_DataAnalysis 1
../Core/Src/main.c:808:6:Start_ICM45686 4
../Core/Src/main.c:896:6:Start_BMM350 4
../Core/Src/main.c:943:6:HAL_TIM_PeriodElapsedCallback 2
../Core/Src/main.c:961:6:Error_Handler 1
../Core/Src/main.c:139:5:_write 2
../Core/Src/main.c:152:5:main 2
../Core/Src/main.c:267:6:SystemClock_Config 3
../Core/Src/main.c:333:6:PeriphCommonClock_Config 2
../Core/Src/main.c:358:13:MX_I2C1_Init 4
../Core/Src/main.c:406:13:MX_IPCC_Init 2
../Core/Src/main.c:432:13:MX_RF_Init 1
../Core/Src/main.c:453:13:MX_RTC_Init 3
../Core/Src/main.c:496:13:MX_SPI1_Init 2
../Core/Src/main.c:536:13:MX_SPI2_Init 2
../Core/Src/main.c:576:13:MX_TIM2_Init 6
../Core/Src/main.c:631:13:MX_DMA_Init 1
../Core/Src/main.c:659:13:MX_GPIO_Init 1
../Core/Src/main.c:726:6:Start_DataAnalysis 1
../Core/Src/main.c:824:6:Start_ICM45686 4
../Core/Src/main.c:904:6:Start_BMM350 4
../Core/Src/main.c:945:6:HAL_TIM_PeriodElapsedCallback 2
../Core/Src/main.c:963:6:Error_Handler 1
+2 -1
View File
@@ -76,7 +76,7 @@ Core/Src/main.o: ../Core/Src/main.c ../Core/Inc/main.h \
../Core/Src/bmm350_oor.h \
../Middlewares/Third_Party/FreeRTOS/Source/include/task.h \
../Middlewares/Third_Party/FreeRTOS/Source/include/list.h \
../USB_Device/App/usbd_cdc_if.h \
../Core/Src/trinity_helperlib.h ../USB_Device/App/usbd_cdc_if.h \
../Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc/usbd_cdc.h \
../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ioreq.h \
../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h \
@@ -167,6 +167,7 @@ Core/Src/main.o: ../Core/Src/main.c ../Core/Inc/main.h \
../Core/Src/bmm350_oor.h:
../Middlewares/Third_Party/FreeRTOS/Source/include/task.h:
../Middlewares/Third_Party/FreeRTOS/Source/include/list.h:
../Core/Src/trinity_helperlib.h:
../USB_Device/App/usbd_cdc_if.h:
../Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc/usbd_cdc.h:
../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ioreq.h:
Binary file not shown.
+18 -18
View File
@@ -3,21 +3,21 @@
../Drivers/STM32WBxx_HAL_Driver/Inc/stm32wbxx_ll_bus.h:364:22:LL_AHB1_GRP1_EnableClock 24 static
../Drivers/STM32WBxx_HAL_Driver/Inc/stm32wbxx_ll_bus.h:539:22:LL_AHB2_GRP1_EnableClock 24 static
../Drivers/STM32WBxx_HAL_Driver/Inc/stm32wbxx_ll_hsem.h:233:26:LL_HSEM_1StepLock 16 static
../Core/Src/main.c:138:5:_write 32 static
../Core/Src/main.c:151:5:main 8 static
../Core/Src/main.c:266:6:SystemClock_Config 112 static
../Core/Src/main.c:332:6:PeriphCommonClock_Config 88 static
../Core/Src/main.c:357:13:MX_I2C1_Init 8 static
../Core/Src/main.c:405:13:MX_IPCC_Init 8 static
../Core/Src/main.c:431:13:MX_RF_Init 4 static
../Core/Src/main.c:452:13:MX_RTC_Init 8 static
../Core/Src/main.c:495:13:MX_SPI1_Init 8 static
../Core/Src/main.c:535:13:MX_SPI2_Init 8 static
../Core/Src/main.c:575:13:MX_TIM2_Init 48 static
../Core/Src/main.c:630:13:MX_DMA_Init 8 static
../Core/Src/main.c:658:13:MX_GPIO_Init 32 static
../Core/Src/main.c:725:6:Start_DataAnalysis 80 static
../Core/Src/main.c:808:6:Start_ICM45686 152 static
../Core/Src/main.c:896:6:Start_BMM350 216 static
../Core/Src/main.c:943:6:HAL_TIM_PeriodElapsedCallback 16 static
../Core/Src/main.c:961:6:Error_Handler 4 static,ignoring_inline_asm
../Core/Src/main.c:139:5:_write 32 static
../Core/Src/main.c:152:5:main 8 static
../Core/Src/main.c:267:6:SystemClock_Config 112 static
../Core/Src/main.c:333:6:PeriphCommonClock_Config 88 static
../Core/Src/main.c:358:13:MX_I2C1_Init 8 static
../Core/Src/main.c:406:13:MX_IPCC_Init 8 static
../Core/Src/main.c:432:13:MX_RF_Init 4 static
../Core/Src/main.c:453:13:MX_RTC_Init 8 static
../Core/Src/main.c:496:13:MX_SPI1_Init 8 static
../Core/Src/main.c:536:13:MX_SPI2_Init 8 static
../Core/Src/main.c:576:13:MX_TIM2_Init 48 static
../Core/Src/main.c:631:13:MX_DMA_Init 8 static
../Core/Src/main.c:659:13:MX_GPIO_Init 32 static
../Core/Src/main.c:726:6:Start_DataAnalysis 80 static
../Core/Src/main.c:824:6:Start_ICM45686 152 static
../Core/Src/main.c:904:6:Start_BMM350 216 static
../Core/Src/main.c:945:6:HAL_TIM_PeriodElapsedCallback 16 static
../Core/Src/main.c:963:6:Error_Handler 4 static,ignoring_inline_asm
+17 -17
View File
@@ -1,17 +1,17 @@
../Core/Src/sensors.c:18:6:HAL_SPI_TxRxCpltCallback 4
../Core/Src/sensors.c:27:6:HAL_I2C_MemRxCpltCallback 4
../Core/Src/sensors.c:36:6:HAL_I2C_MemTxCpltCallback 4
../Core/Src/sensors.c:45:6:HAL_I2C_ErrorCallback 4
../Core/Src/sensors.c:55:6:HAL_GPIO_EXTI_Callback 6
../Core/Src/sensors.c:70:19:read_icm 1
../Core/Src/sensors.c:77:19:read_icm_dma 1
../Core/Src/sensors.c:83:19:write_icm 1
../Core/Src/sensors.c:90:6:init_icm 8
../Core/Src/sensors.c:160:6:calibrate_icm 4
../Core/Src/sensors.c:228:6:configure_and_enable_int_icm 7
../Core/Src/sensors.c:284:6:bmm_init_DWT 1
../Core/Src/sensors.c:295:22:bmm350_i2c_read 3
../Core/Src/sensors.c:327:22:bmm350_i2c_write 3
../Core/Src/sensors.c:355:6:bmm350_delay 2
../Core/Src/sensors.c:366:8:init_bmm 2
../Core/Src/sensors.c:405:8:bmm_configure_interrupt 1
../Core/Src/sensors.c:15:6:HAL_SPI_TxRxCpltCallback 4
../Core/Src/sensors.c:24:6:HAL_I2C_MemRxCpltCallback 4
../Core/Src/sensors.c:33:6:HAL_I2C_MemTxCpltCallback 4
../Core/Src/sensors.c:41:6:HAL_I2C_ErrorCallback 4
../Core/Src/sensors.c:50:6:HAL_GPIO_EXTI_Callback 6
../Core/Src/sensors.c:62:19:read_icm 1
../Core/Src/sensors.c:69:19:read_icm_dma 1
../Core/Src/sensors.c:75:19:write_icm 1
../Core/Src/sensors.c:82:6:init_icm 8
../Core/Src/sensors.c:152:6:calibrate_icm 4
../Core/Src/sensors.c:204:6:configure_and_enable_int_icm 7
../Core/Src/sensors.c:260:6:bmm_init_DWT 1
../Core/Src/sensors.c:269:22:bmm350_i2c_read 3
../Core/Src/sensors.c:282:22:bmm350_i2c_write 3
../Core/Src/sensors.c:292:6:bmm350_delay 2
../Core/Src/sensors.c:302:8:init_bmm 2
../Core/Src/sensors.c:333:8:bmm_configure_interrupt 1
+2
View File
@@ -70,6 +70,7 @@ Core/Src/sensors.o: ../Core/Src/sensors.c ../Core/Inc/main.h \
../Middlewares/Third_Party/FreeRTOS/Source/include/mpu_wrappers.h \
../Middlewares/Third_Party/FreeRTOS/Source/include/newlib-freertos.h \
../Drivers/CMSIS/RTOS2/Include/cmsis_os2.h \
../Core/Src/trinity_helperlib.h \
../Middlewares/Third_Party/FreeRTOS/Source/include/task.h \
../Middlewares/Third_Party/FreeRTOS/Source/include/list.h
../Core/Inc/main.h:
@@ -150,5 +151,6 @@ Core/Src/sensors.o: ../Core/Src/sensors.c ../Core/Inc/main.h \
../Middlewares/Third_Party/FreeRTOS/Source/include/mpu_wrappers.h:
../Middlewares/Third_Party/FreeRTOS/Source/include/newlib-freertos.h:
../Drivers/CMSIS/RTOS2/Include/cmsis_os2.h:
../Core/Src/trinity_helperlib.h:
../Middlewares/Third_Party/FreeRTOS/Source/include/task.h:
../Middlewares/Third_Party/FreeRTOS/Source/include/list.h:
Binary file not shown.
+17 -17
View File
@@ -1,17 +1,17 @@
../Core/Src/sensors.c:18:6:HAL_SPI_TxRxCpltCallback 24 static,ignoring_inline_asm
../Core/Src/sensors.c:27:6:HAL_I2C_MemRxCpltCallback 24 static,ignoring_inline_asm
../Core/Src/sensors.c:36:6:HAL_I2C_MemTxCpltCallback 24 static,ignoring_inline_asm
../Core/Src/sensors.c:45:6:HAL_I2C_ErrorCallback 24 static,ignoring_inline_asm
../Core/Src/sensors.c:55:6:HAL_GPIO_EXTI_Callback 24 static,ignoring_inline_asm
../Core/Src/sensors.c:70:19:read_icm 40 static
../Core/Src/sensors.c:77:19:read_icm_dma 32 static
../Core/Src/sensors.c:83:19:write_icm 32 static
../Core/Src/sensors.c:90:6:init_icm 24 static
../Core/Src/sensors.c:160:6:calibrate_icm 168 static
../Core/Src/sensors.c:228:6:configure_and_enable_int_icm 24 static
../Core/Src/sensors.c:284:6:bmm_init_DWT 4 static
../Core/Src/sensors.c:295:22:bmm350_i2c_read 40 static
../Core/Src/sensors.c:327:22:bmm350_i2c_write 40 static
../Core/Src/sensors.c:355:6:bmm350_delay 24 static
../Core/Src/sensors.c:366:8:init_bmm 24 static
../Core/Src/sensors.c:405:8:bmm_configure_interrupt 32 static
../Core/Src/sensors.c:15:6:HAL_SPI_TxRxCpltCallback 24 static,ignoring_inline_asm
../Core/Src/sensors.c:24:6:HAL_I2C_MemRxCpltCallback 24 static,ignoring_inline_asm
../Core/Src/sensors.c:33:6:HAL_I2C_MemTxCpltCallback 24 static,ignoring_inline_asm
../Core/Src/sensors.c:41:6:HAL_I2C_ErrorCallback 24 static,ignoring_inline_asm
../Core/Src/sensors.c:50:6:HAL_GPIO_EXTI_Callback 24 static,ignoring_inline_asm
../Core/Src/sensors.c:62:19:read_icm 40 static
../Core/Src/sensors.c:69:19:read_icm_dma 32 static
../Core/Src/sensors.c:75:19:write_icm 32 static
../Core/Src/sensors.c:82:6:init_icm 24 static
../Core/Src/sensors.c:152:6:calibrate_icm 208 static
../Core/Src/sensors.c:204:6:configure_and_enable_int_icm 24 static
../Core/Src/sensors.c:260:6:bmm_init_DWT 4 static
../Core/Src/sensors.c:269:22:bmm350_i2c_read 40 static
../Core/Src/sensors.c:282:22:bmm350_i2c_write 40 static
../Core/Src/sensors.c:292:6:bmm350_delay 24 static
../Core/Src/sensors.c:302:8:init_bmm 24 static
../Core/Src/sensors.c:333:8:bmm_configure_interrupt 32 static
+1
View File
@@ -0,0 +1 @@
../Core/Src/trinity_helperlib.c:3:6:convert_rad_to_deg 2
Binary file not shown.
+1
View File
@@ -0,0 +1 @@
../Core/Src/trinity_helperlib.c:3:6:convert_rad_to_deg 24 static