Buenos días o tardes a todos ustedes. Soy nuevo en este ambiente de la programación de Arduino. estoy configurando una placa wt32-eth01 para poder realizar una conexión con una base de datos en firebase.
código que estoy usando
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <WiFi.h>
#include <FirebaseESP32.h>
#include <ETH.h> // Biblioteca específica para WT32-ETH01
// Configuración del display LCD
LiquidCrystal_I2C lcd(0x27, 20, 4);
// Configuración de WiFi
const char* ssid = "*********"; // Reemplaza con el nombre de tu red WiFi
const char* password = "********"; // Reemplaza con la contraseña de tu red WiFi
// Configuración de Firebase
#define FIREBASE_HOST "wt32-eth01-47476-default-rtdb.firebaseio.com"
#define FIREBASE_AUTH "3NSjCP8uN9GUaNG6KdJDSytXT6I6HxEFki48SXXq"
FirebaseData firebaseData;
void WiFiEvent(WiFiEvent_t event) {
switch (event) {
case SYSTEM_EVENT_STA_GOT_IP:
Serial.print("WiFi conectado! IP: ");
Serial.println(WiFi.localIP());
lcd.setCursor(0, 1);
lcd.print("Conectado! ");
lcd.setCursor(0, 2);
lcd.print("IP: ");
lcd.print(WiFi.localIP());
break;
case SYSTEM_EVENT_STA_DISCONNECTED:
Serial.println("WiFi desconectado. Intentando reconectar...");
lcd.setCursor(0, 1);
lcd.print("Desconectado ");
WiFi.begin(ssid, password);
break;
default:
break;
}
}
void setup() {
Serial.begin(115200);
Serial.println("WT32-ETH01 WiFi con DHCP");
// Inicializar I2C con pines específicos
Wire.begin(32, 33);
lcd.init();
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("WT32-ETH01 WiFi");
lcd.setCursor(0, 1);
lcd.print("Conectando...");
// Inicializar WiFi
WiFi.onEvent(WiFiEvent);
WiFi.begin(ssid, password);
Serial.print("Conectando a WiFi");
lcd.setCursor(0, 1);
lcd.print("Conectando... ");
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.print(".");
lcd.setCursor(0, 1);
lcd.print("Conectando... ");
}
// Configurar Firebase
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.reconnectWiFi(true);
Serial.println("Sistema listo.");
}
void loop() {
// Enviar el ID del usuario "user1" a Firebase
String userID = "user1";
if (Firebase.setString(firebaseData, "/users/id", userID)) {
Serial.println("ID de usuario enviado exitosamente a Firebase.");
lcd.setCursor(0, 3);
lcd.print("ID enviado a Firebase");
} else {
Serial.println("Error al enviar ID a Firebase.");
Serial.println(firebaseData.errorReason());
lcd.setCursor(0, 3);
lcd.print("Error al enviar ID");
}
delay(60000); // Esperar 1 minuto antes de enviar nuevamente
}
La placa la he conectado por medio ethernet y por wifi y en ambas formas no me da la conexión con firebase.
ya he revisado la versión de la librería y las credenciales de autenticación pero aun así no logro tener conexión.
les agradecería sus respuestas