rsimsek
Profesyonel Üye
ESP-01 3.3 volt ile çalışır. Dolaysıyla 5 volt bir modul için ayrıca beslemeniz gerekir. Modul hangisi?
Step-up modül ile 5V sağlayabilirim ama digital sinyal için en az 3 giriş lazım. Bir tanesi IR alıcı diğer ikisi röleler için.ESP-01 3.3 volt ile çalışır. Dolaysıyla 5 volt bir modul için ayrıca beslemeniz gerekir. Modul hangisi?
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?ESP-01 de 4 giriş var. Bir tane de analog, çip ayağından lehim gerekiyor.
Ö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.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.
//
// 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);
}
İ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ı olurMerhaba;
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;
derleme hatasını alıyorum.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.
Merhaba,İ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
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
Ahh çok özür dilerim yanlış koddan bahsettim. Gün içinde kullandığım kodu yollayacağım. Kusura bakmayın.Merhaba,
Bu kodda firebase kitaplığı kullanmadınız sanırım.
blynk kitaplığı ile kullanıyorsanız firebase veritabanı adresini nasıl arayıp buluyor?Kod:#define BLYNK_PRINT Serial #include <ESP8266WiFi.h> #include <BlynkSimpleEsp8266.h>