0
\$\begingroup\$

I'm trying to use the BNO055 sensor in my project. It's hard for me to get the sensor as a seperate IC so I buy BNO055 modules and take the ICs from the modules by heating with hot air.

enter image description here

In my designs I follow the Bosch BNO055 datasheet, so the schematic of the BNO055 part of my board is the same as in the picture below:

enter image description here

I have successfully soldered the BNO055 IC with solder paste (cream solder?) and hot air multiple times now. And got it to work with the STM32F446RET6 microcontroller on my board.

Now I will talk about 3 seperate BNO055 sensors that caused trouble for me.

This first sensor worked for a couple of weeks but recently has stopped working due to a short circuit on the board (I assume). The cause of the short circuit was the microcontroller on the board. Only reason I can think for the microcontroller to break is dust.

On this board I had I2C pull-up resistors connected to 3.3 V for the BNO055. The sensor had seperate I2C connections from the other sensors on the board.

I took the sensor out and soldered it back to the purple module board and with the Arduino I2C scanner I could find the I2C address, but when I uploaded example code for sensor data it didn't work. But for now let's forget about this one. As I mentioned, the board this was working on had a short circuit.

On another board I had a 3.3 V pull-up and a 5 V pull-up on the same I2C lines at the same time. This was a board for the ATmega2560 (5 V logic level). I soldered the BNO055 and the address could be found, but no sensor data again. I took out the 5 V pull-ups but it still didn't work.

On yet another board I had 5 V and 3.3 V pull-ups at the same time again on the same I2C line again, but the sensor didn't work at all with a 3.3 V logic microcontroller. I took out the sensor and soldered it to the module board and it works completely fine.

I thought the 2nd sensor stopped working because of the 5 V and 3 V pull-up sensors existing at the same time but the 3rd sensor didn't do the same.

I'm so confused. Why do my sensors work and not work at the same time?

How can I find the address but read no data?

Sorry if my explanation was too much but I tried to give as much detail because usually people complain that I don't give enough detail in the posts.

\$\endgroup\$
3
  • 1
    \$\begingroup\$ Can you show us pics of the soldered sensor on your boards? I suspect you didnt clean your boards well (with isopropanol) after soldering, and there was flux leftovers everywhere. This causes pins to short. \$\endgroup\$ Commented Aug 18, 2021 at 12:24
  • \$\begingroup\$ Nope It's not about cleaning. I do know about isopropanol and I do clean my board afrer soldering. \$\endgroup\$
    – Exclose
    Commented Aug 18, 2021 at 12:37
  • 3
    \$\begingroup\$ "In my designs I follow the BOSCH BNO055 datasheet. So the schematic of the BNO055 part of my board is the same as in the picture" Please show your actual schematic, as the one provided has some key 'optional' connections that may affect it's operation. The statement "The cause of the short circuit was the microcontroller on the board. Only reason I can think for the microcontroller to break is dust." is concerning, and points to unreliable solder connections, perhaps cold solder joints that fail after a bit of flexing or thermal cycles.. \$\endgroup\$ Commented Aug 18, 2021 at 13:27

1 Answer 1

1
\$\begingroup\$

The BNO055 was originally embedded to our PCB with STM32F446RET6.

Apparently my friend which was responsible for software forgot to change the output voltage of the pin that was connected to RESET of BNO055.

By default the pin is set to LOW voltage by the IDE. So we were constantly giving LOW voltage to RESET pin of BNO055 so it didn't work when we tried to use the embedded sensor on the PCB.

When we changed it to HIGH the problem was fixed.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.