从Firebase Arduino读取数据时出现错误

时间:2018-10-06 18:35:08

标签: firebase arduino nodemcu

我正在尝试将Firebase的实时数据库中的整数值读取到Arduino中。但是,当我读取它时,它始终读取为“ 0”,而不是存储在数据库中的整数。我还使数据库规则在Firebase中公开。下面是我在Arduino中的代码。我正在使用NodeMCU。

#include<ESP8266WiFi.h>
#include<FirebaseArduino.h>

#define FIREBASE_HOST "##########"
#define FIREBASE_AUTH "##########"
#define WIFI_SSID "##########"
#define WIFI_PASSWORD "##########"

int pin1 = 12;
int pin2 = 14;
int pin3 = 4; 
int pin4 = 5;

void setup() {
  Serial.begin(115200);
  pinMode(pin1, OUTPUT);
  pinMode(pin2, OUTPUT);
  pinMode(pin3, OUTPUT);
  pinMode(pin4, OUTPUT);
  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());
  delay(700);

  Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
}

void loop() {
  int sw1 = Firebase.getInt("switch1");
  int sw2 = Firebase.getInt("switch2");
  int sw3 = Firebase.getInt("switch3");
  int sw4 = Firebase.getInt("switch4");

  Serial.println(sw1);
  Serial.println(sw2);
  Serial.println(sw3);
  Serial.println(sw4);
  Serial.println("Test");

  if (Firebase.failed()) {
      Serial.print("setting /number failed:");
      Serial.println(Firebase.error());  
      return;
  }
}

在下面的代码中,即使我尝试启动Firebase的错误,它也不会打印任何内容。我在串行监视器中得到以下输出。

connecting:....  
connected: 192.168.1.7
0
0
0
0
Test
setting /number failed:
0
0
0
0
Test
setting /number failed:

1 个答案:

答案 0 :(得分:0)

在使用Firebase时,我也遇到了相同的问题,但我解决了该问题。可能有多种原因:

1。您应该从FIREBASE_HOST中删除https:///。尝试运行代码,看看它是否对我有用。

2。如果这样做不起作用,则应更新Firebase库。