#include <Arduino.h>
#if defined(ESP32)
#include <WiFi.h>
#elif defined(ESP8266)
#include <ESP8266WiFi.h>
#endif
#include <Firebase_ESP_Client.h>
//Provide the token generation process info.
#include "addons/TokenHelper.h"
//Provide the RTDB payload printing info and other helper functions.
#include "addons/RTDBHelper.h"
const char* password = "";
const char* wid = "Wokwi-GUEST";
bool signupOK = false;
int deger = 0;
unsigned long sendDataPrevMillis = 0;
//#define FIREBASE_HOST "https://denemedurus-default-rtdb.firebaseio.com/"
#define FIREBASE_AUTH "AIzaSyArOBVPi_qR1unQ7AS2BXjHaQWdQ9l3HUE"
#define USER_EMAIL "[email protected]"
#define USER_PASSWORD "1111111"
#define FIREBASE_PROJECT_ID "denemefstore"
FirebaseData firebasedata;
FirebaseAuth auth;
FirebaseConfig config;
void setup() {
// put your setup code here, to run once:
pinMode(17, INPUT);
Serial.begin(115200);
Serial.println("Hello, ESP32-S2!");
WiFi.begin(wid,password);
while (WiFi.status() != WL_CONNECTED)
{
Serial.print(".");
delay(1000);
}
/* Assign the api key (required) */
config.api_key = FIREBASE_AUTH;
//config.project_id = FIREBASE_PROJECT_ID;
auth.user.email = USER_EMAIL;
auth.user.password = USER_PASSWORD;
config.token_status_callback = FirestoreTokenStatusCallback;
// Firebase.begin(&config, &auth);
/* Assign the RTDB URL (required) */
//config.database_url = FIREBASE_HOST;
//if (Firebase.signUp(&config, &auth, "", "")){
//Serial.println("ok");
//signupOK = true;
//}
//else{
//Serial.printf("%s\n", config.signer.signupError.message.c_str());
//}
config.token_status_callback = tokenStatusCallback;
Firebase.reconnectWiFi(true);
Firebase.begin(&config, &auth);
}
void loop() {
delay(3000); // this speeds up the simulation
Serial.println("Atla");
deger = analogRead(17);
Serial.println(deger);
if (deger >= 1000){
firestoreDataUpdate(deger,1);
}
}
void FirestoreTokenStatusCallback(TokenInfo info){
Serial.printf("Token Info: type = %s, status = %s\n", getTokenType(info), getTokenStatus(info));
}
void firestoreDataUpdate(double temp, double humi){
if(WiFi.status() == WL_CONNECTED && Firebase.ready()){
String documentPath = "XXBolum/Makine_sensor_1";
Serial.println(humi);
FirebaseJson content;
content.set("fields/Durum/doubleValue", String(humi).c_str());
content.set("fields/Deger/doubleValue", String(temp).c_str());
Serial.println("Atla 1");
//if(Firebase.Firestore.patchDocument(&firebasedata, FIREBASE_PROJECT_ID, "", documentPath.c_str(), content.raw(), "Durum,Deger")){
// Serial.printf("ok\n%s\n\n", firebasedata.payload().c_str());
//return;
//}else{
// Serial.println(firebasedata.errorReason());
//}
Serial.println("Atla 2");
if(Firebase.Firestore.createDocument(&firebasedata, FIREBASE_PROJECT_ID, "", documentPath.c_str(), content.raw())){
Serial.printf("ok\n%s\n\n", firebasedata.payload().c_str());
return;
}else{
Serial.println(firebasedata.errorReason());
}
Serial.println("Atla 3");
}
}