Hello everyone, I have a question, I need to create a slot in firebase called " status" and I need to do an if else statement in Arduino that changes the value based on the measurement, this is my code
const int trigPin = 5;
const int echoPin = 4;
long duration;
int distance;
char Str4[] = "Yes";
char Str5[] = "No";
#include "FirebaseESP8266.h" // Install Firebase ESP8266 library
#include <ESP8266WiFi.h>
#define FIREBASE_HOST "toimon-fade7.firebaseio.com"
#define FIREBASE_AUTH "XYGE87yYdvfX4aHviADlrco37lceiSXIWBO4BIMX"
#define WIFI_SSID "WaitForTheQ"
#define WIFI_PASSWORD "oneincontrol"
FirebaseData firebaseData;
FirebaseJson json;
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
Serial.begin(9600);
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.reconnectWiFi(true);
// connect to wifi.
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print("connecting");
while (WiFi.status() != WL_CONNECTED) {
Serial.print(".");
delay(500);
}
Serial.println();
Serial.print("connected: ");
Serial.println(WiFi.localIP());
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = duration * 0.034 / 2;
Serial.print("Distance:");
Serial.print(distance);
Serial.print("CM");
Serial.println();
if (distance <= 1){
}
else if (distance > 1){
}
Firebase.setString(firebaseData,"/DB_NAME/FIELD_NAME",String(distance));
delay(1000);
}
I am not sure how the statement within the if/ else if should!
Could anyone please help
This is what I thought of doing
if (distance <= 1){
Firebase.setString(firebaseData,"/DB_NAME/Status",String(Str5[]));
}
else if (distance > 1){
Firebase.setString(firebaseData,"/DB_NAME/Status",String(Str4[]));
}
But I get this kind of error
Arduino: 1.8.13 (Windows 10), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Legacy (new can return nullptr), All SSL ciphers (most compatible), 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Only Sketch, 115200"
C:\Users\AL-Faisal\Desktop\sketch_dec20a\sketch_dec20a.ino: In function 'void loop()':
sketch_dec20a:66:59: error: expected primary-expression before '(' token
Firebase.setString(firebaseData,"/DB_NAME/Status",String(Str5[]));
^
sketch_dec20a:66:65: error: expected primary-expression before ']' token
Firebase.setString(firebaseData,"/DB_NAME/Status",String(Str5[]));
^
sketch_dec20a:68:20: error: expected ';' before '{' token
else if (distance > 1){
^
Multiple libraries were found for "SD.h"
Used: C:\Users\AL-Faisal\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.7.4\libraries\SD
Not used: C:\Users\AL-Faisal\Desktop\arduino-1.8.13\libraries\SD
exit status 1
expected primary-expression before '(' token
C:\Users\AL-Faisal\Desktop\sketch_dec20a\sketch_dec20a.ino: In function 'void loop()':
sketch_dec20a:66:59: error: expected primary-expression before '(' token
Firebase.setString(firebaseData,"/DB_NAME/Status",String(Str5[]));
^
sketch_dec20a:66:65: error: expected primary-expression before ']' token
Firebase.setString(firebaseData,"/DB_NAME/Status",String(Str5[]));
^
sketch_dec20a:69:59: error: expected primary-expression before '(' token
Firebase.setString(firebaseData,"/DB_NAME/Status",String(Str4[]));
^
sketch_dec20a:69:65: error: expected primary-expression before ']' token
Firebase.setString(firebaseData,"/DB_NAME/Status",String(Str4[]));
^
Multiple libraries were found for "SD.h"
Used: C:\Users\AL-Faisal\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.7.4\libraries\SD
Not used: C:\Users\AL-Faisal\Desktop\arduino-1.8.13\libraries\SD
exit status 1
expected primary-expression before '(' token
C:\Users\AL-Faisal\Desktop\sketch_dec20a\sketch_dec20a.ino: In function 'void loop()':
sketch_dec20a:66:59: error: expected primary-expression before '(' token
Firebase.setString(firebaseData,"/DB_NAME/Status",String(Str5[]));
^
sketch_dec20a:66:65: error: expected primary-expression before ']' token
Firebase.setString(firebaseData,"/DB_NAME/Status",String(Str5[]));
^
sketch_dec20a:69:59: error: expected primary-expression before '(' token
Firebase.setString(firebaseData,"/DB_NAME/Status",String(Str4[]));
^
sketch_dec20a:69:65: error: expected primary-expression before ']' token
Firebase.setString(firebaseData,"/DB_NAME/Status",String(Str4[]));
^
Multiple libraries were found for "SD.h"
Used: C:\Users\AL-Faisal\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.7.4\libraries\SD
Not used: C:\Users\AL-Faisal\Desktop\arduino-1.8.13\libraries\SD
exit status 1
expected primary-expression before '(' token
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.