comunidades

Programación directa del módulo ESP8266 con Arduino UNO o NANO

Buenas a todos!!!
Ultimamente no ando mucho por el blog ya que he estado liado con otros proyectos de mi otra web
lamaquetade.infotronikblog.com y un programa para Android llamado DCCpp Cab, para el control de maquetas ferroviarias en sistema digital.


ESP8266 con divisor de tensión en RX
y listo para ser usado como servidor
webSockets
La central utiliza la comunicación serial para recibir y mandar los datos y ahí es donde entra el
ESP8266 y aunque ya lo había usado en algunos proyectos tales como:
Como actualizar el firmware del ESP8266 con Arduino Nano.
Comandos AT para modulo ESP8266.
Arduino ESP8266 servidor web con DTH11 y sensor de humedad en tierra.
Pero en todos estos proyectos siempre programo Arduino para que sea él el que se comunica y daba las ordenes al ESP8266 tales como la red wifi, SSID y Password.
De la siguiente manera, todas esas ordenes quedaran guardadas directamente en la memoria del ESP8266.
Manos a la obra, ¿que necesitamos?

Antes de montar ningún circuito, tenemos que instalar en el IDE de Arduino para ello lo primero es abrir el IDE de Arduino e ir a "archivos ==> Preferencias":


Una vez estemos en Preferencias tenemos que incluir esta URL http://arduino.esp8266.com/stable/package_esp8266com_index.json en el apartado "Gestor de URLs Adicionales de tarjeta" tal y como aparece en la siguiente captura de pantalla:


Clickamos en "Ok" y ahora vamos a añadir los drivers para el ESP8266, para esto tenemos que ir a "Herramientas ==> Placa: ==> Gestor de tarjetas".


Una vez aquí pondremos ESP en el buscador e instalamos el paquete que esta señalado en la captura: "esp8266 by ESP8266 Community" y lo instalamos.


Una vez hayamos hecho esto, tenemos que reiniciar el IDE de Arduino para que los cambios tengan efecto.

Para este proyecto hará falta también la librería arduinoWebSockets que va a ser la encargada de comunicar el ESP8266 con otros dispositivos mediante el protocolo " ws:// "

También necesitaremos el Arduino.git aquí voy a poner la instalación en Linux ya que es el sistema operativo que uso. Primero vamos a la carpeta de instalación de Arduino, es decir donde están los archivos del programa que NO es la carpeta Arduino que tenemos en la carpeta personal o Documentos. En mi caso es esta "/opt/arduino-1.8.5". Abrimos la consola y escribimos:
cd hardware
mkdir esp8266com
cd esp8266com
git clone https://github.com/esp8266/Arduino.git esp8266

y descargamos las herramientas binarias (se necesita Python 2.7)cd esp8266/tools
python get.py

Reiniciamos Arduino.
Y con esto ya tenemos todo el software necesario para programar la memoria interna del ESP8266. Parece un poco lioso así de primeras, lo bueno es que una vez este todo instalado no lo tendremos que hacer otra vez.

Para poder programar el ESP8266 necesitaremos tener un dispositivo FTDI para poder programar el ESP. Cómo en el momento de hacer estas pruebas no disponía de ninguno, he usado el mismo Arduino como puente entre el PC y el ESP8266 quedando de la siguiente manera: PC ->Arduino-->ESP8266


NOTA: Este es el esquema que me ha funcionado a mí, ya que no disponía de una fuente de alimentación a 3,3v que es casi imprescindible para poder programar correctamente el software dado que la alimentación de 3,3v de Arduino solo da 50mA y el ESP8266 necesita algo más (200 mA) para ser programado correctamente. Además los pines RX y TX funcionan a 5V para la comunicación, con TX no tendremos problemas pero con RX podríamos tener algún problema así que si usas este esquema, queda bajo tu responsabilidad, a mi me ha funcionado.

Una vez tengamos el ESP8266 listo para programar. Ahora solo queda cargar el sketch en el ESP8266, con lo que tendremos que selecciona la placa que necesitemos tal como si fuera un Arduino UNO o NANO, en mi caso estoy utilizando un ESP8266 genérico así que esa es la placa que debo utilizar:



Una vez seleccionada el proceso es el mismo que para UNO o NANO, una vez todo listo le damos a "subir" y se cargara el programa en la memoria interna del ESP8266:



Bueno hasta aquí llega esta pequeña guía sobre como programar el modulo ESP8266 espero que hayáis tenido suerte con el tema de los voltajes y ya tengáis programado vuestro Sketch.

Fuentes:

información general: TrainsElectronics.com.

Circuito programador: Github.com (Último comentario).

Sketch:

Sketch DCC++ ESP8266: Seccion de descargas ITB.

Saludos a todos!!!!!

Fuente: este post proviene de InfotronikBlog, donde puedes consultar el contenido original.
¿Vulnera este post tus derechos? Pincha aquí.
¿Qué te ha parecido esta idea?

Esta idea proviene de:

Y estas son sus últimas ideas publicadas:

Usos para Raspberry Pi

Buenas a todos!!! Esta publicación va con un poco de retraso... ya tenía la Raspberry Pi 2 desde hacia bastante tiempo, pero como la tenia en otros usos y no he podido hacerle una entrada en condicion ...

Etiquetas:

Recomendamos

Relacionado

Tutoriales arduino robótica

Todo sobre Arduino

Arduino es una plataforma de desarrollo de software y hardware libres que incorpora un microcontrolador re-programable y una serie de pines hembra, los que permiten establecer conexiones entre el microcontrolador y los diferentes sensores y actuadores de una manera muy sencilla. ¿Por qué usar Arduino? Arduino es libre y extensible: esto quiere decir que cualquiera que desee ampliar y mejorar el di ...

Arduino Ejemplos nRF2401 ...

Arduino Ejemplos: El modulo NRF2401 comunicación Bidireccional

Como vimos en la entrada anterior: Arduino Ejemplos: El modulo NRF2401 comunicación Unidireccional se pueden enviar datos de un módulo nRF2401 a otro. Bien, esta comunicación puede realizarse en los dos sentidos, es decir, cada modulo tiene la capacidad de enviar y recibir datos. Para ello necesitaremos dos canales, uno para enviar y otro para escuchar. Esta comunicación es de tipo Half-Duplex ya ...

Android Studio Arduino Bluetooth ...

Controlar DFPlayer Mini con Android por Bluetooth Parte 2

Buenas a todos otra vez!!! Para que no se hiciera una entrada un poco larga, he decidido hacerlo en dos partes, la parte 1 que es la parte del programa para Android DFplayer Mini BT y la parte de Arduino que sera esta segunda. Lo que más me ha complicado el proyecto ha sido el hecho de que para que funcione el DFPlayer utiliza la comunicación serial, con lo que tenia que habilitar otro puerto seri ...

amino arduino codigo ...

Controla tu Arduino con Python - Comunicación Serial

Vamos aprender como controlar nuestro arduino desde python un lenguaje de programación. Python es uno de los lenguajes de programación que mayor auge han experimentado en los últimos tiempos. Su sencillez de uso permite hacer rápidamente pequeños programas y scripts, con tiempos de desarrollo muy cortos. Por supuesto, el mundo de Arduino no resulta una excepción y resulta muy sencillo conectar Ard ...

Arduino Bluetooth Coche ...

Arduino: Driver L298N y Bluetooth HC-06

Buenas a todos!!! Ya iba siendo hora de poner algo de comunicación serial, y aunque parezca ya un poco avanzado, es muy sencillo utilizar el bluetooth HC-06 en Arduino. Con este emisor/receptor he construido este sencillo Rover que fácilmente se podrá controlar desde cualquier terminal Android con Bluetooth. El módulo HC-06: El HC-06 es un dispositivo de comunicación inalambrica operando en la fr ...

Arduino Ejemplos i2C ...

Arduino ejemplos: LCD con i2c

Buenas a todos!!! Si ya vimos antes como utilizar un LCD 16x02, Arduino: El LCD 16x2 y Arduino: Diferentes efectos en un LCD 16x2 directamente conectando a Arduino usando en total un mínimo de 6 líneas, esto puede que no sea un problema si tú proyecto no utiliza muchos sensores, pero si es necesario usar el máximo de pines disponibles existe una solución que puedes usar, el módulo i2c para LCD. Co ...

Arduino DHT11 Ejemplos ...

Arduino: Medir temperatura y humedad con DHT11

Por fin me ha llegado el sensor de temperatura y humedad DHT11. Este tipo de sensores lee la humedad y temperatura ambiente la transmite a Arduino y de ahí a una pantalla LCD o al monitor serial del IDE de Arduino. El DHT11 es el sensor es el "barato". No tiene mucha precisión un 2% en temperatura midiendo de 1ºC en 1ºC y un 5% en humedad, pero servirá para cualquier proyecto, que como y ...

Arduino Ejemplos Ferromodelismo ...

Arduino: Efecto soldadura con arco para maquetas

Arduino es una plataforma que gracias a su bajo coste podemos incluir en nuestras maquetas con multiples efectos tanto visuales como sonoros. En este caso vamos a tratar la soldadura con arco, un efecto que quedara muy vistoso en cualquier obra o taller de reparaciones que incluyamos en nuestra maqueta. El efecto se consigue con varios random para encender y apagar el led de manera aleatoria, dan ...

Arduino Comunicaciones Ejemplos ...

Arduino Ejemplos: El modulo NRF2401 comunicación Unidireccional

Buenas a todos!!! Siguiendo con la comunicación inalámbrica le toca el turno a los módulos NRF2401. Estos pequeños módulos comunican con Arduino para poder transmitir y recibir datos en la banda de 2.4GHz. Esto hace posible una comunicación a una distancia de unos 250 metros, más que considerable si lo comparamos con los módulos HC-06 que solo tiene un alcance de entre 5 y 10 metros. Como casi tod ...

apk documentos programa ...

Editor de código php para programar desde tu móvil Android

Anteriormente vimos como crear un servidor web desde nuestro android y lazar un ataque con el metodo phishing para facebook. Hoy veremos un editor de texto para android , especialmente para el lenguaje de programación php En ocasiones nos encontramos archivos o nos envían , y queremos editar de forma rápida Los editores de código o IDEs (el acrónimo inglés de Integrated Development Environment) y ...