Esp32-s3-zero and BNO085

Hello,
Please help me as i am newbie in Arduino world.
Recently i bought an Esp32 S3 zero controller and a bno085 sensor (the chinese one)
I tried to connect and test using the code from library but unfortunately something is bad with connections. I reviewed the BNO085 documentation but it seems that the one i have has different pin names, searching in forums i have found different options and now im quite confused.

Can someone give me the proper hardware connection?

Thanks

Please read the pinned post re 'How to get the most from the forum' paying special attention to wiring diagrams and code posting.

they all are chinese, which one?

what code?

so post scheme how they are done

Are you sure that the library that you're using supports the ESP32-S3? Since S3 is a relatively new, not all libraries support it.

Hello again,

Thank you for your time.. here some more details.

I am trying to establish an SPI connection.

Here what i've tried..

Vcc -> 3.3v
Gnd -> Gnd
SCL -> pin7
SDA -> pin8
AD0 -> pin9
CS -> pin10
INT -> pin11
RST -> pin12
PS1 -> Gnd
PS0 -> Gnd

Code..

#include <SPI.h>
#include <SparkFun_BNO08x_Arduino_Library.h>

#define BNO08X_SCK  7    // SCL -> SCK
#define BNO08X_MOSI 8    // SDA -> MOSI
#define BNO08X_MISO 9    // AD0 -> MISO
#define BNO08X_CS   10   // CS Pin
#define BNO08X_INT  11   // Interrupt 
#define BNO08X_RST  12   // Reset

SPIClass mySPI(HSPI);  
BNO08x myIMU(BNO08X_CS);

void setup() {
  Serial.begin(115200);
  
  mySPI.begin(BNO08X_SCK, BNO08X_MISO, BNO08X_MOSI, BNO08X_CS);
  
  if (myIMU.beginSPI(BNO08X_CS, BNO08X_INT, &mySPI) == false) {
    Serial.println("BNO08x not detected over SPI. Check wiring.");
    while (1);
  }
  
  Serial.println("BNO08x connected over SPI!");

  myIMU.enableRotationVector(50);  // 50ms updates = 20Hz
}

void loop() {
  if (myIMU.dataAvailable()) {
    float roll  = myIMU.getRoll();
    float pitch = myIMU.getPitch();
    float yaw   = myIMU.getYaw();

    Serial.print("Roll: ");
    Serial.print(roll, 2);
    Serial.print("°, Pitch: ");
    Serial.print(pitch, 2);
    Serial.print("°, Yaw: ");
    Serial.print(yaw, 2);
    Serial.println("°");
  }

  delay(10);  // Small delay to keep loop stable
}

The code give a fault message..
"No matching function for call to bno08x::bno08x(int)"

:person_shrugging:

Exactly the same fault if i use Adafruit BNO08x library.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.