Tabla de contenido:

Conecte Arduino Uno con ESP8266: 9 pasos
Conecte Arduino Uno con ESP8266: 9 pasos

Video: Conecte Arduino Uno con ESP8266: 9 pasos

Video: Conecte Arduino Uno con ESP8266: 9 pasos
Video: #231 7 Tricks on how to wire your Project (e.g. Arduino, ESP8266, ESP32) Dupont wires 2024, Noviembre
Anonim
Conecte Arduino Uno con ESP8266
Conecte Arduino Uno con ESP8266

¡Bienvenido! Estás a punto de leer una guía paso a paso sobre cómo conectar correctamente tu Arduino Uno a Internet con el ESP8266 (ESP-01). También es mi primer Instructable, ¡tan desnudo conmigo, por favor!

Permítanme comenzar diciendo que el ESP8266 es una pequeña pieza de hardware de bajo precio que, si se programa correctamente, puede abrir un mundo enorme, especialmente el de IOT. De repente, todos sus proyectos se pueden activar a través de la web, ya sea a través de su teléfono o computadora, con solo hacer clic en un botón. Las posibilidades son infinitas y de alguna manera me emociona mucho. Desafortunadamente, no siempre es un proceso fácil y lo más probable es que tengas problemas que yo no tengo. De cualquier manera, haré todo lo posible para responder preguntas y mencionar todos los problemas que encontré.

Actualización 2020: Recientemente tuve que actualizar un nuevo ESP8266 y usé este artículo como mi guía personal sobre cómo hacerlo. Rápidamente me di cuenta de que algunos enlaces que proporcioné están desactualizados / no funcionan, así que intenté reemplazarlos nuevamente. Al hacerlo, descubrí que hay un nuevo software de actualización para el ESP8266, así como un firmware actualizado y bien documentado. Hice todo lo posible para actualizar el ESP al último firmware posible, pero sin éxito. El nuevo intermitente es más sofisticado, pero al mismo tiempo más complicado. Hay muchas más descargas de firmware disponibles (lo cual es asombroso), pero al mismo tiempo los usuarios no tienen idea de cuál descargar. Técnicamente, todo esto suena realmente bien y el ESP finalmente tiene algo de soporte y documentación "oficial", pero al mismo tiempo se volvió mucho más complicado. Después de aproximadamente 4 horas de investigación y algunas pruebas y errores, decidí darme por vencido y simplemente usar el mismo flasheador y archivo que usé a lo largo de este artículo. Actualicé los enlaces y ahora los alojo yo mismo, así que mientras no me equivoque, estarán en línea para siempre. Si desea leer un poco más sobre estas nuevas incorporaciones de la comunidad, vaya al último paso de este Instructable donde he publicado algunos enlaces adicionales.

Paso 1: hardware

Hardware
Hardware

Actualización 2020: ¡Encontré un video de YouTube que realmente se conecta al ESP sin soldar nada y sin ningún adaptador!

Muy bien, esta es una parte un poco complicada, ya que hay muchas formas de comunicarse con el ESP6288. Traté de encontrar las formas más fáciles posibles y lamento decírselo, pero no creo que pueda cargar con éxito el código en el ESP sin soldar un pequeño interruptor o algunos botones … Al final, utilizó el siguiente hardware:

  1. Arduino Uno
  2. ESP8266 (ESP-01)
  3. Adaptador USB ESP8266
  4. Adaptador ESP-01
  5. Interruptor para el adaptador USB
  6. 4 cables de puente hembra-macho
  7. Cable USB para conectar Arduino y PC

Como ves, no son tan caros y además no hay necesidad de usar una placa de pruebas ni todas esas extrañas resistencias y cosas así. Todo son adaptadores y cableado simples.

Obviamente, necesitará tanto un Arduino como el ESP8266. Pero también necesitas dos adaptadores para el ESP:

  • Uno para poder programarlo (número 3 de la lista). Este es también el adaptador que tendrá nuestra propia modificación con un interruptor.
  • Un segundo adaptador para que no mates el ESP conectándolo al Arduino (número 4 en la lista). Dado que el ESP funciona a 3.3V, 5V del Arduino lo matará. Y los 3.3V del Arduino no son lo suficientemente potentes.

Por último, también son necesarios algunos cables de puente y un cable USB para conectar el Arduino a la PC.

Paso 2: soldar un conmutador al adaptador USB

Soldar un interruptor al adaptador USB
Soldar un interruptor al adaptador USB
Soldar un interruptor al adaptador USB
Soldar un interruptor al adaptador USB

Desafortunadamente, para programar el ESP, necesitará una forma de conectar su Pin GND y su Pin GPIO0. Me las arreglé para soldar un pequeño interruptor que te permite elegir si quieres estar en "modo Programa" o no. El siguiente video de Youtube te ayudará con esta tarea, te recomiendo mucho que lo veas, ya que también te dice un poco sobre el software y por qué tienes que conectar Ground y GPIO 0.

En resumen, esto es lo que hice:

  • Corta una de las patas exteriores del interruptor, puede ser la derecha o la izquierda
  • Dé la vuelta al adaptador USB y suelde las dos patas del interruptor al pin GND y al pin GPIO0. Tenga cuidado de no conectar otros pines, ya que podría no funcionar más adelante.
  • Pruebe su interruptor con un multímetro

Nuevamente, en caso de duda, consulte el enlace de Youtube de arriba.

Además, la imagen de arriba tiene el interruptor en el "Modo de programa". En caso de que haya soldado exactamente los mismos pines del interruptor que yo, ahora sabe de qué lado está el "Modo de programa".

Y si no te gustan los interruptores, aquí tienes un tutorial con botones.

Paso 3: software

Para aquellos que solo buscan enlaces, aquí están.

ESP8266:

  • Destellador
  • Firmware (estoy bastante seguro de que esta será la última versión, ya que no se ha actualizado desde diciembre de 2016)

Arduino Uno:

  • IDE de Arduino
  • URL del administrador del tablero (esto tampoco cambiará, siempre es el mismo enlace)

Y para aquellos que no tienen idea de lo que significan esos enlaces, ¡permítanme guiarlos!

  1. El primer paso es instalar el IDE de Arduino. Debería ser bastante sencillo … Presiona siguiente, siguiente, etc. y listo.
  2. El siguiente paso es la configuración del IDE para que pueda programar su ESP. Para hacer esto, tendrá que ir a Archivo -> Preferencias y en la parte inferior debajo de URL adicionales del Administrador de tableros: pegue la siguiente URL.
  3. Luego navegue a herramientas -> Tablero -> Administrador de tableros y desplácese hacia abajo hasta que encuentre uno llamado esp8266 y presione instalar. Última versión por favor. Cuando termine de instalar, reinicie el IDE.
  4. Ahora descargue tanto el flasher como el firmware para el ESP. Cree una carpeta en su escritorio llamada "Flasher" y descomprima ambos archivos descargados dentro de ella. Los necesitaremos más tarde.

¡Genial, ahora mismo deberías tener todo el software necesario para programar el ESP!

Paso 4: Probar el ESP

El siguiente es su primera conexión con el ESP. Esta parte es un poco complicada y lo que funcionó para mí puede que no funcione para ti … Esperemos lo mejor.

Comencemos cargando un boceto prefabricado que parpadea con un LED azul en el ESP. Para que esto funcione, necesitará lo siguiente:

  • Un adaptador USB modificado para el ESP, por lo que puede configurarlo en "Modo de programa". Paso 2 de este Instructable.
  • Sepa a qué puerto USB (puerto COM) se conectará su ESP.

Si no conoce el puerto COM, no se preocupe. Es fácil de averiguar. Abra su IDE y haga clic en herramientas -> Puerto y tome nota de los puertos enumerados. Después de eso, inserte su adaptador USB y vuelva a verificar los puertos enumerados. ¡El nuevo es el puerto COM que estás buscando!

PD: soy un usuario de Windows. Si mal no recuerdo, los Mac no los llaman puertos COM. De cualquier manera, ¡debería funcionar!

Así que ahora que conoce su puerto, ¡no dude en conectar su adaptador USB! Debe estar en "Modo de programa", en otras palabras, GND y GPIO0 deben estar conectados. Abra el IDE y navegue hasta Herramientas -> Placa y elija el Módulo ESP8266 Genérico. Luego, en Herramientas, asegúrese de tener la siguiente configuración:

  • Placa: "Módulo ESP8266 genérico"
  • Puerto: su puerto COM

Por último, vaya a Archivo -> Ejemplos -> ESP8266 -> Parpadear y haga clic en la pequeña marca de verificación en la esquina superior izquierda del IDE. Esto verificará su código y le dirá si hay algún problema con él. ¡Te recomiendo encarecidamente que hagas esto cada vez que subas un boceto al ESP o al Arduino! Si tiene éxito, verá un "Compilación terminada". texto. Lo único que queda ahora es hacer clic en el icono de "flecha derecha" en la parte superior izquierda del IDE para cargar el código. Si todo está configurado correctamente, debería ver que se carga y finalmente termina. Eche un vistazo a su ESP, ¡debería tener un LED parpadeante! ¡Felicidades, acaba de cargar su primer programa en su ESP!

Sin embargo, en caso de que tenga un error, no se preocupe. Probablemente el interruptor no estaba en el lado derecho. Desenchufe su adaptador USB y "encienda el interruptor", vuelva a enchufarlo y repita el proceso. Si funciona, ¡sabrá que ese es el lado del "modo de programa"! Si eso aún no funciona, entonces buena suerte. Eso es lo que quise decir con "lo que funcionó para mí puede que no funcione para usted" … ¡Publique preguntas / problemas en los comentarios y haré todo lo posible para ayudar!

PD: ¡No dudes en probar otros ejemplos! Quizás el Archivo -> Ejemplos -> ESP8266Wifi -> WifiScan. Después de cargar, abra Herramientas -> Monitor de serie y espere unos segundos. Si no aparece nada, configure la velocidad en baudios en 9600 o 115200. Y use "Ambos NL y CR". Más sobre esto más adelante en este artículo, ¡así que no se preocupe si no obtuvo ninguna respuesta!

Paso 5: Pruebe los comandos AT

Prueba de comandos AT
Prueba de comandos AT

Llamo a este paso opcional porque ninguno de los comandos AT completos funcionaba para mí al principio. Aunque estaba seguro de que el ESP estaba funcionando bien porque hizo Blink con el boceto anterior y también logré buscar Wifi. Pero cada vez que intentaba hablar con él a través de comandos AT, nunca obtenía una respuesta. De cualquier manera, te mostraré los pasos que he dado para poder hablar con él. Si no funciona, salte al siguiente paso.

Conecte su ESP en el adaptador USB y conéctelo a su PC. ¡Asegúrese de que no esté en "Modo de programa"! Vaya a Herramientas y cambie la placa a Módulo ESP8266 genérico. Asegúrese de que esté seleccionado el puerto correcto y luego abra el Monitor serie (Ctrl + Shift + M) y configure las siguientes configuraciones:

  • Tanto NL como CR
  • 115200 baudios

Si todo está correcto, intente escribir "AT" en la barra superior y presione enter. Debería obtener una respuesta "OK". Si obtienes un "OK", entonces santos humo, ¡acabas de lograr conectarte con tu ESP y puedes estar orgulloso y feliz a la vez! A continuación, escriba "AT + GMR" para obtener más información sobre su ESP. En caso de que la versión del SDK sea 1.54, también puede saltar el paso "Actualización del firmware más reciente", ya que ya lo tiene.

En caso de que no obtenga una respuesta, no dude en volver a intentarlo y / o cambiar la velocidad en baudios. Sin embargo, recomiendo no "perder" demasiado tiempo con esto, ya que sabe que su ESP está funcionando debido al paso 4.

PD: Si el IDE quiere que guarde el boceto antes de verificarlo / cargarlo, no lo guarde. He tenido algunos problemas para guardar archivos y el monitor de serie no funciona. No estoy seguro de por qué todavía, tengo que hacer más pruebas, pero te recomiendo que no guardes tus bocetos.

Paso 6: flasheo del firmware más reciente

Actualización del firmware más reciente
Actualización del firmware más reciente

Incluso si el paso anterior no funcionó para usted, intente actualizar su firmware con este paso, ¡tal vez lo solucione!

Ahora que sabe cómo programar su ESP, ¡es hora de actualizar su firmware! Comience conectando su ESP en el adaptador USB y luego seleccionando la placa y el puerto adecuados para ello. ¡No olvide ponerlo en "Modo de programa", de lo contrario no funcionará el flasheo!

A continuación, tendrás que abrir la carpeta que creaste en el "Paso 2: Software", ¿recuerdas? Con el flasher y el archivo.bin. Ábralo y ejecute esp8266_flasher.exe. Si se le solicitan derechos de administrador, responda que sí. Ahora también es un buen momento para cerrar el IDE, solo para asegurarse de que nada interfiera. Haga clic en el botón Bin y seleccione un archivo llamado "AiThinker_ESP8266_DIO_8M_8M_20160615_V1.5.4.bin". Asegúrese de que su puerto sea el correcto, que la siguiente ventana esté configurada en 0x00000 y que su ESP esté en "modo Programa" y haga clic en Descargar. Debería comenzar a cargar el firmware en su ESP y el LED azul debería parpadear. Espere un poco hasta que termine.

Cuando termine, será recompensado con un error "No se pudo salir del modo Flash", lo cual está bien. Ignórelo y cierre el intermitente. ¡Acabas de actualizar el firmware de tu ESP! Bonito.

En caso de que tenga errores, nuevamente: asegúrese de que su puerto sea el correcto, que la siguiente ventana esté configurada en 0x00000 y que su ESP esté en "modo de programa". Si aún no funciona, entonces diría que su interruptor no funciona correctamente.

Por último, es posible que desee intentar hablar con su ESP a través de AT ahora, eche un vistazo al paso "Probar comandos AT". Si aún no funciona, no se preocupe. Continúe y cargue el ejemplo de Blink nuevamente para asegurarse de que no rompió su ESP. Si funciona, ¡aún está listo para comenzar!

Paso 7: Conexión de Arduino y ESP

Conectando Arduino y ESP
Conectando Arduino y ESP

¡Este es un paso simple que le muestra cómo conectar el ESP al Arduino Uno! Como se mencionó en el paso "Hardware", utilicé el Adaptador ESP-01.

Primero, conecte su ESP al Adaptador ESP-01 y asegúrese de que esté orientado en la dirección correcta. A continuación, tome sus 4 cables de puente y conéctelos así:

  • Pin 3 en el Arduino a Pin RX en el adaptador
  • Pin 2 en el Arduino a Pin TX en el adaptador
  • Pin 5.5V en el Arduino a Pin VCC en el Adaptador
  • Pin GND en el Arduino a Pin GND en el adaptador

Cableado hecho. Fácil, ¿verdad?

PD: Recomiendo usar un cable rojo para la conexión de 5V y un cable negro para la conexión GND. Es solo un estándar en electrónica.

Paso 8: Fin + Cosas a tener en cuenta

Muy bien, si ha seguido mi guía y no he estropeado nada, ahora al menos debería poder tener un ESP que funcione con firmware actualizado. Tal vez incluso te hable a ti y a ti, ¡sería perfecto! Anímate y explora este maravilloso mundo de IOT y demás. Tal vez desee encender una luz con solo hacer clic en un botón en su teléfono, o tal vez encender el sistema de riego en su jardín (como estoy tratando de hacer). No lo sé, te dejaré elegir. ¡No dude en escribir algunos comentarios / preguntas sobre este instructivo a continuación!

Solo algunas cosas adicionales para tener en cuenta:

  • Mientras carga el código en su Arduino, ¡el Pin 0 (RX) tiene que ser gratis!
  • Si está ejecutando su ESP a través de los 3.3V del Arduino, tenga en cuenta que puede que no sea lo suficientemente potente y que esté recibiendo errores a causa de ello. Recomiendo encarecidamente el ESP-01 Adapater.
  • En caso de que desee comunicarse con su ESP a través del Arduino y no el adaptador USB, deberá hacer lo siguiente:

    1. Necesario: ¡Tendrá que poder hablar con los comandos AT con su ESP a través del adaptador USB para poder cambiar!
    2. Continúe y conecte su adaptador USB con el ESP. ¡Asegúrese de que no esté en "Modo de programa"!
    3. Elija la placa ESP8266 y el puerto correcto y abra el monitor en serie (115200 baudios).
    4. Escriba "AT" y obtenga una respuesta "OK".
    5. Tendremos que cambiar la velocidad de transmisión predeterminada del ESP con el siguiente comando: "AT + UART_DEF = 9600, 8, 1, 0, 0" (o para algunas versiones "AT + CIOBAUD = 9600").
    6. Debería obtener una respuesta "OK" o algún tipo de confirmación.
    7. Cierre el monitor en serie.
    8. Desenchufe el adaptador USB y conecte su ESP al adaptador Arduino. Conecte el adaptador al Arduino como se muestra en el paso "Conexión de Arduino y ESP".
    9. Conecte el Arduino con su PC.
    10. Cambie la placa a Arduino y seleccione el puerto correcto.
    11. Sube este código al Arduino.
    12. Abra el Serial Monitor una vez más, pero esta vez a 9600 baudios.
    13. Ahora debería poder escribir "AT" y obtener una respuesta "OK".

Paso 9: Enlaces

Aquí hay una lista de algunos enlaces que encontré en la web que me ayudaron, ¡y también podrían ayudarlo!

  • Boceto del Arduino Uno para hablar con el ESP
  • Configure su ESP en "modo de programa" con un interruptor o botones

Actualización 2020:

  • Guía sobre cómo flashear con el nuevo software flasher
  • Empezando por Espressif
  • Descargas Flasher y SDK / AT de Espressif
  • Información general sobre la mayoría de las cosas que se tratan en este artículo aquí (incluida información sobre cómo actualizar el ESP sin adaptadores)

Recomendado: