#include <Adafruit_MPU6050.h>
#include <Adafruit_Sensor.h>
#include <Wire.h>
Adafruit_MPU6050 mpu;
#define BLYNK_PRINT Serial
#define BLYNK_TEMPLATE_ID "TMPLrzHeyZ5v"
#define BLYNK_DEVICE_NAME "ResponsiMIOT"
#include <BlynkSimpleEsp32.h>//library blynk untuk esp32
char auth[] = "uGaZdnk4TyQbGt8xhMy5EtzKrYLfx3N4";//token blynk
BlynkTimer timer;
double x,y,z;
void send(){
Blynk.virtualWrite(V0, x);
Blynk.virtualWrite(V1, y);
Blynk.virtualWrite(V2, z);
}
void setup() {
Serial.begin(115200);
while (!Serial)
delay(10);
Serial.println("Adafruit MPU6050 test!");
if (!mpu.begin()) {
Serial.println("Failed to find MPU6050 chip");
while (1) {
delay(10);
}
}
pinMode(18,OUTPUT);
mpu.setAccelerometerRange(MPU6050_RANGE_16_G);
mpu.setGyroRange(MPU6050_RANGE_250_DEG);
mpu.setFilterBandwidth(MPU6050_BAND_21_HZ);
Serial.println("");
delay(100);
timer.setInterval(1000L, send);
Blynk.begin(auth, "Wokwi-GUEST", "");
}
void loop() {
delay(10);
sensors_event_t a, g, temp;
mpu.getEvent(&a, &g, &temp);
delay(10);
Serial.print(" ,");
Serial.print(a.acceleration.x);
Serial.print(" ,");
Serial.print(a.acceleration.y);
Serial.print(" ,");
Serial.println(a.acceleration.z);
delay(200);
x = a.acceleration.x;
y = a.acceleration.y;
z= a.acceleration.z;
Blynk.run();
timer.run();
gempa();
}
void gempa (){
if(x == 0 && y == 0){
Serial.print("Aman :)");
}
else {
Serial.print ("Hati - Hati Gempa!");
tone(18, 262, 1000);
delay(50);
noTone(18);
delay(50);
}
}