Feather M0 RFM95 not detecting a BNO085 over UART

General project help for Adafruit customers

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Post Reply
User avatar
SpearFlight
 
Posts: 3
Joined: Mon Aug 12, 2024 11:14 pm

Feather M0 RFM95 not detecting a BNO085 over UART

Post by SpearFlight »

Hey all I'm fairly new to this but I believe I am following all instructions correctly, beginning to suspect a faulty sensor.

I am trying to read rotation data from a BNO085 breakout using the RadioFruit RFM95. I believe I have connected them correctly; Solder bridge over PS1, SCL to Tx, SDA to Rx, GND to GND, and 3v to Vin.

I am using PlatformIO as my IDE, and I successfully installed the Adafruit unified sensor, BusIO, and BNO08x libraries. I have my baud rate set to 115200, and I am attempting to use the rotation_vector example from the BNO library. I have commented out the I2C line and un-commented the UART line. (I also had to add a function prototype for setReports() as the original example was attempting to use the function without declaring it). The program uploads without issue, but always returns "Failed to find BNO08x chip" in the serial monitor.

In the past I have successfully used a different BNO085 module for another project also using PlatformIO, but unfortunately I gave that project to someone else so I cannot troubleshoot with a known good sensor.

I have also tried to run the sensor in SPI and I2C modes (with proper wiring and mode select jumpers soldered) to no avail. Any help at this point would be massively appreciated.

User avatar
adafruit_support_carter
 
Posts: 31710
Joined: Tue Nov 29, 2016 2:45 pm

Re: Feather M0 RFM95 not detecting a BNO085 over UART

Post by adafruit_support_carter »

Solder bridge over PS1
That is correct for setting UART mode (not UART RVC).
https://learn.adafruit.com/adafruit-9-d ... ns-3072339
So that seems OK.
SCL to Tx, SDA to Rx, GND to GND, and 3v to Vin.
This also seems correct per the pinout page:
https://learn.adafruit.com/adafruit-9-d ... ns-3072625
I also had to add a function prototype for setReports() as the original example was attempting to use the function without declaring it
This might be a platformio thing. Arduino generally takes care of the prototypes as part of its automagic stuff.
The program uploads without issue, but always returns "Failed to find BNO08x chip" in the serial monitor.
Might be a connection issue of some kind. Please post a photo of the setup showing how everything is connected.

User avatar
SpearFlight
 
Posts: 3
Joined: Mon Aug 12, 2024 11:14 pm

Re: Feather M0 RFM95 not detecting a BNO085 over UART

Post by SpearFlight »

Here are photos of the front and back showing wire connections and solder bridges. Also shows BNO is properly receiving power (green LED)

Thanks for the lightning response!
Attachments
IMG_1632.jpeg
IMG_1632.jpeg (482.65 KiB) Viewed 36 times
IMG_1634.jpeg
IMG_1634.jpeg (442.56 KiB) Viewed 36 times

User avatar
adafruit_support_carter
 
Posts: 31710
Joined: Tue Nov 29, 2016 2:45 pm

Re: Feather M0 RFM95 not detecting a BNO085 over UART

Post by adafruit_support_carter »

The serial mode on the BNO085 has a weird baud rate requirement. It looks like this known and it may not work with UART on everything:
https://github.com/adafruit/Adafruit_BNO08x/issues/8

Were you attempting UART as a backup to I2C and/or SPI?

If you want to stick with UART, there's also the RVC mode:
https://learn.adafruit.com/adafruit-9-d ... or-arduino
which operates at a more standard 115200 baud. But it only provides a subset of the total sensor information:
rvc.png
rvc.png (54.46 KiB) Viewed 28 times

User avatar
SpearFlight
 
Posts: 3
Joined: Mon Aug 12, 2024 11:14 pm

Re: Feather M0 RFM95 not detecting a BNO085 over UART

Post by SpearFlight »

Not as a backup no, I wanted to avoid using SPI to keep my wiring simple, and there is something on the BNO product page that states it does not operate well over I2C with certain MCUs, so I generally try to avoid I2C for this sensor.

I just tried setting baud rates to 3000000 as suggested, still no dice.

I have managed to get it to work over I2C, so it looks like we’re going with that for now. The BNO product page says I2C works OK with SAMD51 MCUs, any insight on the reliability with M0’s SAMD21 MCU?

Post Reply
Please be positive and constructive with your questions and comments.

Return to “General Project help”