Узел MCU (ESP 8266) с огненной базой - PullRequest
0 голосов
/ 10 июня 2018

Это код, который я загружаю в ESP8266 для подключения к firebase.

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

 #define FIREBASE_HOST "*******.firebaseio.com"
 #define FIREBASE_AUTH "68GM**************m4k0IPLXF4G1"
 #define WIFI_SSID "IDR"
 #define WIFI_PASSWORD "****"

 #define LED 2

 void setup() {
    pinMode(LED,OUTPUT);
    digitalWrite(LED,0);
    digitalWrite(LED,0);
    Serial.begin(9600);
    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());
    Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
    Firebase.setInt("LEDStatus",0);
 }   

 void loop() {
    if(Firebase.getInt("LEDStatus"))
    {                            
       digitalWrite(LED,HIGH);
    }
    else
    {
       digitalWrite(LED,LOW);
    }
    delay(1000);
 }

С этим кодом мой NodeMCU может без проблем подключаться к Интернету.
Проблема в том, что LEDStatus не обновляется в базе данных firebase.

Что-то не так с моей FirebaseArduino.h справочной библиотекой?

Любая помощь приветствуется.

Ответы [ 4 ]

0 голосов
/ 03 августа 2019

Я ответил на аналогичный вопрос здесь .

По сути, поскольку секреты базы данных искажены (как было указано в превью ответе ), и яНе удалось найти библиотеку Arduino, поддерживающую новый Firebase Admin SDK, я использовал Облачные функции Firebase , с http триггерами для хранения и извлечения данных из базы данных в реальном времени.

Вы можете увидеть пример эскиза Arduino и функции облака в связанном ответе.

0 голосов
/ 31 июля 2018

Попробуйте сделать это

  Firebase.setInt("LEDStatus",0); 
     if (Firebase.failed()) {
     Serial.print("failed:");
     Serial.println(Firebase.error());  
     return;
  }

Если на последовательном мониторе будет напечатано «сбой», дважды проверьте «FIREBASE_HOST» и «FIREBASE_AUTH»

Для меня это не помоглоПомогите.Помогло изменение отпечатка в файле «static const char kFirebaseFingerprint []» внутри файла «FirebaseHttpClient.h» из «C: \ Users \ xxxxxxxx \ Documents \ Arduino \ library \ firebase-arduino-master \ src»

Вы можете найти отпечаток для вашей одной формы "https://www.grc.com/fingerprints.htm", указав свой FIREBASE_HOST (т.е. https://xxxxxxx.firebaseio.com/)

PS. Не вставляйте (:) в отпечаток пальца

0 голосов
/ 26 декабря 2018
  1. Сначала проверьте, дали ли вы доступ для записи в правилах базы данных.
  2. Или измените FirebaseFingerPrint в соответствии с https://github.com/FirebaseExtended/firebase-arduino/issues/236, это исправило мои проблемы.
  3. (optinal) Используйте 6-значный SSID, ПАРОЛЬ, но не слишком длинные строки.Иногда у меня возникали проблемы с созданием softAp из-за неправильных соглашений об именах.

IN.

0 голосов
/ 12 июня 2018

Секреты базы данных Google Firebase устарели прямо сейчас.Так что вам нужно продолжить с Firebase Admin SDK. enter image description here смотрите это.

...