ESP32 with MPU 6050 - No data from I2C pins

Hi,

I am trying to fetch Gyro and Accelerometer data from the Gyro MPU6050 into LoRa ESP32 (ESP32 LoRa SX1278 0.96 Inch Blue OLED Display Bluetooth WIFI Lora Kit 32 Module IOT Development Board 433MHz for Arduino) but I am unable to see any data flowing through ESP32 I2C pins. I am getting default values over serial pins, I do not understand what mistake I am doing. I have attached few pics for pin connections.

Pin connections:
MPU VCC = ESP32 VCC 3.3v
MPU GND = ESP32 Gnd
SCL = SCL (Pin 22)
SDA = SDA (Pin 21)

Default Output:
Gyro (deg)X=0.00Y=0.00Z=0.00Accel (g)X=0.00Y=0.00Z=0.000.00

Code:

#include <Wire.h>
HardwareSerial serial(1);

long accelX, accelY, accelZ;
float gForceX, gForceY, gForceZ;

long gyroX, gyroY, gyroZ;
float rotX, rotY, rotZ;

void setup() {
Serial.begin(9600);
Wire.begin();
setupMPU();
}

void loop() {
// put your main code here, to run repeatedly:
recordAccelRegisters();
recordGyroRegisters();
printData();
delay(100);
}

void setupMPU() {

Wire.beginTransmission(0b1101000);//I2C address of the MPU
Serial.println("I2C transmission");
Wire.write(0x6B);//power management
Serial.println("After power management");
Wire.write(0b00000000);//setting sleep register to 0.
Wire.endTransmission();

Wire.beginTransmission(0b1101000);//I2C address of the MPU
Wire.write(0x1B);//accessing the register 1B - gyroscope config
Wire.write(0b00000000);//setting gyro to full scale
Wire.endTransmission();

Wire.beginTransmission(0b1101000);
Wire.write(0x1C);//accessing the register 1C - accelerometer config
Wire.write(0b00000000);//setting the accel to +/-2g
Wire.endTransmission();
}

void recordAccelRegisters() {
Wire.beginTransmission(0b1101000);//I2C address of the MPU
Wire.write(0x3B);//accessing the register for accel reading
Wire.endTransmission();
Wire.requestFrom(0b1101000, 6); //request accel registers (3B - 40)
while (Wire.available() < 6);
accelX = Wire.read() << 8 | Wire.read(); //store firt 2 bytesrecordGyroRegisters
accelY = Wire.read() << 8 | Wire.read(); //store middle 2 bytes
accelZ = Wire.read() << 8 | Wire.read(); //store last 2 bytes
processAccelData();
}

void processAccelData() {
gForceX = accelX / 16384.0;
Serial.print(gForceX);
gForceY = accelY / 16384.0;
gForceZ = accelZ / 16384.0;
}

void recordGyroRegisters() {
Wire.beginTransmission(0b1101000);
Wire.write(0x43);//starting register for Gyro readings
Wire.endTransmission();
Wire.requestFrom(0b1101000, 6); //request Gyro registers (43 - 48)
while (Wire.available() < 6);
gyroX = Wire.read() << 8 | Wire.read(); //store firt 2 bytes
gyroY = Wire.read() << 8 | Wire.read(); //store middle 2 bytes
gyroZ = Wire.read() << 8 | Wire.read(); //store last 2 bytes
processGyroData();
}

void processGyroData() {
rotX = gyroX / 131.0;
rotY = gyroY / 131.0;
rotZ = gyroZ / 131.0;
}

void printData() {
Serial.print("Gyro (deg)");
Serial.print("X=");
Serial.print(rotX);
Serial.print("Y=");
Serial.print(rotY);
Serial.print("Z=");
Serial.print(rotZ);
Serial.print("Accel (g)");
Serial.print("X=");
Serial.print(gForceX);
Serial.print("Y=");
Serial.print(gForceY);
Serial.print("Z=");
Serial.print(gForceZ);
}

I have attached few pics for pin connections.

No, you didn't.

Pin connections:
MPU VCC = ESP32 VCC 3.3v
MPU GND = ESP32 Gnd
SCL = SCL (Pin 22)
SDA = SDA (Pin 21)

What pull-ups are used? Maybe the breakout board includes them but you didn't tell us (link) what board you're using. There are probably several dozens of boards available all using the MPU6060.

You also forgot to use code tags to make your code readable (that's the </> button in the editor).

while (Wire.available() < 6);

Such lines of code are a nightmare to debug. You didn't check the result code of the Wire.requestFrom() call but risk an endless loop if the chip didn't return the 6 bytes you expect it to do. Delete those lines as it only freezes your MCU if there is a problem on the I2C bus but doesn't do any useful task. If Wire.available() is not equal to 6 when you enter that loop, it will never be.