#include <SoftwareSerial.h>
// Definir los pines TX y RX para la comunicación con el ESP8266
const int esp8266Tx = 2;
const int esp8266Rx = 3;
// Crear un objeto de tipo SoftwareSerial para comunicarse con el ESP8266
SoftwareSerial espSerial(esp8266Tx, esp8266Rx);
void setup() {
// Inicializar la comunicación serie con una velocidad de 9600 baudios
Serial.begin(9600);
espSerial.begin(9600);
// Esperar a que el ESP8266 se inicie
delay(1000);
// Enviar comandos AT para configurar el ESP8266
espSerial.println("AT+RST"); // Reiniciar el ESP8266
delay(1000);
espSerial.println("AT+CWMODE=1"); // Configurar el ESP8266 en modo estación (STA)
delay(1000);
espSerial.println("AT+CWJAP=\"nombre_de_red\",\"contraseña\""); // Conectar el ESP8266 a la red Wi-Fi
delay(10000); // Esperar unos segundos para que se establezca la conexión
espSerial.println("AT+CIFSR"); // Obtener la dirección IP asignada al ESP8266
}
void loop() {
// Leer y mostrar cualquier respuesta del ESP8266
if (espSerial.available()) {
Serial.write(espSerial.read());
}
}