Firebase ile ESP8266 üzerinden veri okuma.

ESP-01 3.3 volt ile çalışır. Dolaysıyla 5 volt bir modul için ayrıca beslemeniz gerekir. Modul hangisi?
 
ESP-01 de 4 giriş var. Bir tane de analog, çip ayağından lehim gerekiyor.
Woww demek en doğrusu sanırım :) güzel bir bilgi oldu teşekkür ederim. O zaman projeyi baya küçültebilirim fiziksel anlamda. Ama blynk'ten vazgeçmem gerek sanırım. Bir de IR ve firebase kodlarını aynı anda kullanabilir miyim şüphedeyim. Sizin için fazla bir şey istemiş olmaz isem kodlara bakıp ESP8266 üzerinden çalıştırabilir miyim tavsiye verebilir misiniz?
 

Ekli dosyalar

  • Blynk ve IR kodları.zip
    1.8 KB · Görüntüleme: 4
Gördüğüm kadar sorunsuz çalışır. 4 port kullanmışsınız zaten. Ben olsam ESP-01'den önce NodeMCU üzerinden geliştirip daha sonra portları ESP-01'e uyarlayıp o şekilde son haline getirirdim. Kendim de röle kontrol olayını o şekilde yapıyorum. ESP-01'i uno üzerinden programlama modunda (uno'nun reset pinini ground'a çekerek) programlıyorum. Blynk'ten vazgeçmeyi gerektiren bir durum söz konusu değil. Kod aynı kod. ESP-01'e kodu taşırken sadece Ardiuno ve NodeMCU gibi 5 volt ile değil 3.3 volt ile çalıştığını, hatta rx pinine uno'nun tx pinini doğrudan bağlamak yerine bir voltaj bölücü kullanmak gerekebilir. İnternette örneği var. https://www.mikrobotik.com/wp2/2020/02/28/arduino-usb-seri-cevirici-olarak-kullanmak/

Unutmayın, ESP8266'nın Arduino'dan eksiği yok fazlası var.
 
Gördüğüm kadar sorunsuz çalışır. 4 port kullanmışsınız zaten. Ben olsam ESP-01'den önce NodeMCU üzerinden geliştirip daha sonra portları ESP-01'e uyarlayıp o şekilde son haline getirirdim. Kendim de röle kontrol olayını o şekilde yapıyorum. ESP-01'i uno üzerinden programlama modunda (uno'nun reset pinini ground'a çekerek) programlıyorum. Blynk'ten vazgeçmeyi gerektiren bir durum söz konusu değil. Kod aynı kod. ESP-01'e kodu taşırken sadece Ardiuno ve NodeMCU gibi 5 volt ile değil 3.3 volt ile çalıştığını, hatta rx pinine uno'nun tx pinini doğrudan bağlamak yerine bir voltaj bölücü kullanmak gerekebilir. İnternette örneği var. https://www.mikrobotik.com/wp2/2020/02/28/arduino-usb-seri-cevirici-olarak-kullanmak/

Unutmayın, ESP8266'nın Arduino'dan eksiği yok fazlası var.
Öncelikle teşekkürler tekrardan. Dediğiniz gibi arduino kartlarım üzerinden esp'yi kodlarken ya da serial iletişim kurdururken mutlaka dirençler ile sistem kuruyorum esp tx rx girişleri için. Kodları -dediğiniz gibi- ilk önce nodeMCU üzerinde birleştirip daha sonra esp üzerine yükleyebilirim. Uygun zamanımda deneyeceğim.

Teşekkürler
 
Merhaba;
nodemcu esp8266 kullanarak frebase veritabanına ulaşmak istiyorum. Bu amaçla;
test için Firebase demo_esp8266.ino örnek test sayfasını kullandım. Fakat firebase veritabanına okuma yazma yapamıyorum. esp8288 İnternete bağlandıktan sonra serial ekranda number failed: hatası veriyor. Aynı firebase token ve firebase url yi kullanarak Mitt app inventory üzerinden sorunsuz bağlanıyorum. Yani bunlarda bir sorun yok.

Ne yapmamı yada hangi libraryi kullanmamı önerirsiniz?

Şimdiden teşekkür ederim.

kullandığım örnek:
Kod:
//
// Copyright 2015 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//

// FirebaseDemo_ESP8266 is a sample that demo the different functions
// of the FirebaseArduino API.

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

// Set these to run example.
#define FIREBASE_HOST "xxxxxx.firebaseio.com"
#define FIREBASE_AUTH "xxxxx"
#define WIFI_SSID "333 "
#define WIFI_PASSWORD "3332019."

void setup() {
  Serial.begin(9600);

  // 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());
 
  Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
}

int n = 0;

void loop() {
  // set value
  Firebase.setFloat("number", 42.0);
  // handle error
  if (Firebase.failed()) {
      Serial.print("setting /number failed:");
      Serial.println(Firebase.error());
      return;
  }
  delay(1000);
 
  // update value
  Firebase.setFloat("number", 43.0);
  // handle error
  if (Firebase.failed()) {
      Serial.print("setting /number failed:");
      Serial.println(Firebase.error());
      return;
  }
  delay(1000);

  // get value
  Serial.print("number: ");
  Serial.println(Firebase.getFloat("number"));
  delay(1000);

  // remove value
  Firebase.remove("number");
  delay(1000);

  // set string value
  Firebase.setString("message", "hello world");
  // handle error
  if (Firebase.failed()) {
      Serial.print("setting /message failed:");
      Serial.println(Firebase.error());
      return;
  }
  delay(1000);
 
  // set bool value
  Firebase.setBool("truth", false);
  // handle error
  if (Firebase.failed()) {
      Serial.print("setting /truth failed:");
      Serial.println(Firebase.error());
      return;
  }
  delay(1000);

  // append a new value to /logs
  String name = Firebase.pushInt("logs", n++);
  // handle error
  if (Firebase.failed()) {
      Serial.print("pushing /logs failed:");
      Serial.println(Firebase.error());
      return;
  }
  Serial.print("pushed: /logs/");
  Serial.println(name);
  delay(1000);
}
 
Son düzenleme:
Merhaba;
nodemcu esp8266 kullanarak frebase veritabanına ulaşmak istiyorum. Bu amaçla;
test için Firebase demo_esp8266.ino örnek test sayfasını kullandım. Fakat firebase veritabanına okuma yazma yapamıyorum. esp8288 İnternete bağlandıktan sonra serial ekranda number failed: hatası veriyor. Aynı firebase token ve firebase url yi kullanarak Mitt app inventory üzerinden sorunsuz bağlanıyorum. Yani bunlarda bir sorun yok.

Ne yapmamı yada hangi libraryi kullanmamı önerirsiniz?

Şimdiden teşekkür ederim.

kullandığım örnek:
Kod:
//
// Copyright 2015 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//

// FirebaseDemo_ESP8266 is a sample that demo the different functions
// of the FirebaseArduino API.

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

// Set these to run example.
#define FIREBASE_HOST "xxxxxx.firebaseio.com"
#define FIREBASE_AUTH "xxxxx"
#define WIFI_SSID "333 "
#define WIFI_PASSWORD "3332019."

void setup() {
  Serial.begin(9600);

  // 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());
 
  Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
}

int n = 0;

void loop() {
  // set value
  Firebase.setFloat("number", 42.0);
  // handle error
  if (Firebase.failed()) {
      Serial.print("setting /number failed:");
      Serial.println(Firebase.error());
      return;
  }
  delay(1000);
 
  // update value
  Firebase.setFloat("number", 43.0);
  // handle error
  if (Firebase.failed()) {
      Serial.print("setting /number failed:");
      Serial.println(Firebase.error());
      return;
  }
  delay(1000);

  // get value
  Serial.print("number: ");
  Serial.println(Firebase.getFloat("number"));
  delay(1000);

  // remove value
  Firebase.remove("number");
  delay(1000);

  // set string value
  Firebase.setString("message", "hello world");
  // handle error
  if (Firebase.failed()) {
      Serial.print("setting /message failed:");
      Serial.println(Firebase.error());
      return;
  }
  delay(1000);
 
  // set bool value
  Firebase.setBool("truth", false);
  // handle error
  if (Firebase.failed()) {
      Serial.print("setting /truth failed:");
      Serial.println(Firebase.error());
      return;
  }
  delay(1000);

  // append a new value to /logs
  String name = Firebase.pushInt("logs", n++);
  // handle error
  if (Firebase.failed()) {
      Serial.print("pushing /logs failed:");
      Serial.println(Firebase.error());
      return;
  }
  Serial.print("pushed: /logs/");
  Serial.println(name);
  delay(1000);
}

İlaveten,
Tüm uğraşlarıma rağmen bağlnamayınca arduino konsolu komple kaldırıp yeniden kurdum fakat şimdide derleme sırasında;
Kod:
Arduino:1.8.15 (Windows 10), Kart:"NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Only Sketch, 115200"

In file included from C:\arduino-1.8.15\libraries\firebase-arduino-master\src/FirebaseArduino.h:22,

                 from C:\Users\kagan\Desktop\FirebaseDemo_ESP8266\FirebaseDemo_ESP8266.ino:21:

C:\arduino-1.8.15\libraries\firebase-arduino-master\src/Firebase.h:26:10: fatal error: C:\Users\kagan\OneDrive\Belgeler\Arduino\libraries\ArduinoJson-6.x/ArduinoJson.h: Permission denied

   26 | #include <ArduinoJson.h>

      |          ^~~~~~~~~~~~~~~

compilation terminated.

exit status 1

NodeMCU 1.0 (ESP-12E Module) kartı için derleme hatası.



This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
derleme hatasını alıyorum.
İki üst mesajda dosya paylaşmıştım. Oradaki esp8266 kodu dosyasındaki koda bakarsan bu kod ile firebaseden veri okuyabildim. Yazma kısmıyla henüz uğraşamadım. Belki yardımcı olur
 
İki üst mesajda dosya paylaşmıştım. Oradaki esp8266 kodu dosyasındaki koda bakarsan bu kod ile firebaseden veri okuyabildim. Yazma kısmıyla henüz uğraşamadım. Belki yardımcı olur
Merhaba,

Bu kodda firebase kitaplığı kullanmadınız sanırım.
Kod:
#define BLYNK_PRINT Serial

#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
blynk kitaplığı ile kullanıyorsanız firebase veritabanı adresini nasıl arayıp buluyor?
Acaba mobitz'in yazdığı firebase kütüphanesini kullandınızmı ve forumda kullanan varmı acaba?
 
Merhaba,

Bu kodda firebase kitaplığı kullanmadınız sanırım.
Kod:
#define BLYNK_PRINT Serial

#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
blynk kitaplığı ile kullanıyorsanız firebase veritabanı adresini nasıl arayıp buluyor?
Ahh çok özür dilerim yanlış koddan bahsettim. Gün içinde kullandığım kodu yollayacağım. Kusura bakmayın.
 

Forum istatistikleri

Konular
130,103
Mesajlar
933,156
Kullanıcılar
453,156
Son üye
Aalpsevindik

Yeni konular

Geri
Üst