ivyknob / bno055_stm32 Goto Github PK
View Code? Open in Web Editor NEWBNO055 library to use with STM32 HAL
License: MIT License
BNO055 library to use with STM32 HAL
License: MIT License
When I tried to get angles as euler form just you did Euler_X is perfectly correct but euler_y and euler_z are not correct. Suddenly they jump to high degrees. What is the problem, thanks.
Why adding 30 ms in bno055_setOperationMode() ?
The datasheet is stating: 19 ms to BNO055_OPERATION_MODE_CONFIG and 7 ms to all others. Did you had issues with those values ?
Hi,
There is something I do not understand. There is a scaling made here for the accelerometer but it is just a divider by 100 instead values given in the datasheet.
1 LSB = 3.91 mg (2-g range)
1 LSB = 7.81 mg (4-g range)
1 LSB = 15.63 mg (8-g range)
1 LSB = 31.25 mg (16-g range)
Is it intended ? I am in the process of implementing it for the interrupts, should I put the right scale here too ? From my point of view it will be much cleaner but it is also a breaking change.
Code seems not to work, board STM32F4Discovery, BNO055 GY-955.
After initialization and reading value to a vector, vector is empty.
Is the current version operating?
bno055_assignI2C(&hi2c2);
bno055_setup();
bno055_setOperationModeNDOF();
bno055_vector_t v = bno055_getVectorEuler();
why is v.y is just between 90 and -90?
I do not have time to create a proper PR for now, but if it can help someone I implemented lot of functions related to low power and deep sleep in this branch
The key for deep sleep is to set the chip in configuration mode before, which is not written in the datasheet but in the example code from Bosh
Hello,
I followed the steps in the readme, created a new project with I2C in fastmode using CubeMX and edited the code according to the readme as well.
During build, I receive the following error:
10:58:01 **** Incremental Build of configuration Debug for project BNO055_Test ****
make -j11 all
arm-none-eabi-gcc "../Src/app_ble.c" -mcpu=cortex-m4 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DDEBUG -DSTM32WB55xx -c -I../Middlewares/ST/STM32_WPAN/ble/core/template -I../tiny_lpm -I../Middlewares/ST/STM32_WPAN/ble/core -I../Utilities/lpm/tiny_lpm -I../Middlewares/ST/STM32_WPAN/ble/svc/Inc -I../Middlewares/ST/STM32_WPAN/ble -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl -I../Inc -I../Drivers/CMSIS/Include -I../Middlewares/ST/STM32_WPAN/ble/core/auto -I../Utilities/sequencer -I../Middlewares/ST/STM32_WPAN/ble/svc/Src -I../Drivers/STM32WBxx_HAL_Driver/Inc -I../Middlewares/ST/STM32_WPAN/utilities -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/shci -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread -I../Middlewares/ST/STM32_WPAN -I../Drivers/STM32WBxx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32WBxx/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Src/app_ble.d" -MT"Src/app_ble.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Src/app_ble.o"
arm-none-eabi-gcc "../Src/app_entry.c" -mcpu=cortex-m4 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DDEBUG -DSTM32WB55xx -c -I../Middlewares/ST/STM32_WPAN/ble/core/template -I../tiny_lpm -I../Middlewares/ST/STM32_WPAN/ble/core -I../Utilities/lpm/tiny_lpm -I../Middlewares/ST/STM32_WPAN/ble/svc/Inc -I../Middlewares/ST/STM32_WPAN/ble -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl -I../Inc -I../Drivers/CMSIS/Include -I../Middlewares/ST/STM32_WPAN/ble/core/auto -I../Utilities/sequencer -I../Middlewares/ST/STM32_WPAN/ble/svc/Src -I../Drivers/STM32WBxx_HAL_Driver/Inc -I../Middlewares/ST/STM32_WPAN/utilities -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/shci -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread -I../Middlewares/ST/STM32_WPAN -I../Drivers/STM32WBxx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32WBxx/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Src/app_entry.d" -MT"Src/app_entry.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Src/app_entry.o"
arm-none-eabi-gcc "../Src/main.c" -mcpu=cortex-m4 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DDEBUG -DSTM32WB55xx -c -I../Middlewares/ST/STM32_WPAN/ble/core/template -I../tiny_lpm -I../Middlewares/ST/STM32_WPAN/ble/core -I../Utilities/lpm/tiny_lpm -I../Middlewares/ST/STM32_WPAN/ble/svc/Inc -I../Middlewares/ST/STM32_WPAN/ble -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl -I../Inc -I../Drivers/CMSIS/Include -I../Middlewares/ST/STM32_WPAN/ble/core/auto -I../Utilities/sequencer -I../Middlewares/ST/STM32_WPAN/ble/svc/Src -I../Drivers/STM32WBxx_HAL_Driver/Inc -I../Middlewares/ST/STM32_WPAN/utilities -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/shci -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread -I../Middlewares/ST/STM32_WPAN -I../Drivers/STM32WBxx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32WBxx/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Src/main.d" -MT"Src/main.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Src/main.o"
arm-none-eabi-gcc "../Src/p2p_server_app.c" -mcpu=cortex-m4 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DDEBUG -DSTM32WB55xx -c -I../Middlewares/ST/STM32_WPAN/ble/core/template -I../tiny_lpm -I../Middlewares/ST/STM32_WPAN/ble/core -I../Utilities/lpm/tiny_lpm -I../Middlewares/ST/STM32_WPAN/ble/svc/Inc -I../Middlewares/ST/STM32_WPAN/ble -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl -I../Inc -I../Drivers/CMSIS/Include -I../Middlewares/ST/STM32_WPAN/ble/core/auto -I../Utilities/sequencer -I../Middlewares/ST/STM32_WPAN/ble/svc/Src -I../Drivers/STM32WBxx_HAL_Driver/Inc -I../Middlewares/ST/STM32_WPAN/utilities -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/shci -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread -I../Middlewares/ST/STM32_WPAN -I../Drivers/STM32WBxx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32WBxx/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Src/p2p_server_app.d" -MT"Src/p2p_server_app.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Src/p2p_server_app.o"
arm-none-eabi-gcc "../Src/stm32wbxx_hal_msp.c" -mcpu=cortex-m4 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DDEBUG -DSTM32WB55xx -c -I../Middlewares/ST/STM32_WPAN/ble/core/template -I../tiny_lpm -I../Middlewares/ST/STM32_WPAN/ble/core -I../Utilities/lpm/tiny_lpm -I../Middlewares/ST/STM32_WPAN/ble/svc/Inc -I../Middlewares/ST/STM32_WPAN/ble -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl -I../Inc -I../Drivers/CMSIS/Include -I../Middlewares/ST/STM32_WPAN/ble/core/auto -I../Utilities/sequencer -I../Middlewares/ST/STM32_WPAN/ble/svc/Src -I../Drivers/STM32WBxx_HAL_Driver/Inc -I../Middlewares/ST/STM32_WPAN/utilities -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/shci -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread -I../Middlewares/ST/STM32_WPAN -I../Drivers/STM32WBxx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32WBxx/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Src/stm32wbxx_hal_msp.d" -MT"Src/stm32wbxx_hal_msp.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Src/stm32wbxx_hal_msp.o"
arm-none-eabi-gcc "../Src/stm32wbxx_it.c" -mcpu=cortex-m4 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DDEBUG -DSTM32WB55xx -c -I../Middlewares/ST/STM32_WPAN/ble/core/template -I../tiny_lpm -I../Middlewares/ST/STM32_WPAN/ble/core -I../Utilities/lpm/tiny_lpm -I../Middlewares/ST/STM32_WPAN/ble/svc/Inc -I../Middlewares/ST/STM32_WPAN/ble -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl -I../Inc -I../Drivers/CMSIS/Include -I../Middlewares/ST/STM32_WPAN/ble/core/auto -I../Utilities/sequencer -I../Middlewares/ST/STM32_WPAN/ble/svc/Src -I../Drivers/STM32WBxx_HAL_Driver/Inc -I../Middlewares/ST/STM32_WPAN/utilities -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/shci -I../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread -I../Middlewares/ST/STM32_WPAN -I../Drivers/STM32WBxx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32WBxx/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Src/stm32wbxx_it.d" -MT"Src/stm32wbxx_it.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Src/stm32wbxx_it.o"
In file included from ../Src/main.c:28:0:
../Inc/bno055_stm32.h:8:10: fatal error: i2c.h: No such file or directory
#include "i2c.h"
^~~~~~~
compilation terminated.
make: *** [Src/subdir.mk:69: Src/main.o] Error 1
make: *** Waiting for unfinished jobs....
"make -j11 all" terminated with exit code 2. Build might be incomplete.
10:58:01 Build Failed. 3 errors, 0 warnings. (took 564ms)
Has the name of the header-file been changed lately, or do I have do add a i2c.h manually?
Thanks
We should be able to set every mode and read every vector
What is the difference between this library and the one provided by BOSCH sensortec? https://github.com/BoschSensortec/BNO055_driver
Best,
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.