Installation de MicroPython sur NodeMCU Lolin ou Wemos D1 Mini

Cet article a pour but d’expliquer l’installation de MicroPython sur ma platine de test afin de pouvoir utiliser Python comme language de programmation après avoir testé la programmation via Arduino.

La première étape est d’installer l’outil esptool qui va permettre de flasher la famille ESP8266. Pour ma part j’utilise 2 modèles, le NodeMCU Lolin et le modèle Wemos D1 Mini.

On installe cet outil en utilisant l’outil Python pip (j’utilise la version Python 3.x) :
sudo pip3 install esptool

Lire la suite…

Publicités
Catégories :NodeMCU Étiquettes : ,

Créer des pages WEB dynamiques avec AJAX

Le but de cet article est d’expliqué l’utilisation d’AJAX (Asynchrone Javascript and XML) qui va permettre de créer des pages dynamiques sans avoir besoin de recharger la page complètetement à chaque mise à jour.

AJAX va permettre de transférer des données au format XML (eXtensible Markup Language de Microsoft) ou JSON (JavaScript Object Notation) entre votre programme tournant sur votre contrôleur préféré à base d’ESP8266 (NodeMCU Lolin ou Wemos D1 mini par exemple) et le client qui accède à votre page WEB.

L’exemple mis en oeuvre va consister à affcher une page WEB avec 2 boutons ON et OFF.
Le contenu du programme est le suivant :

Lire la suite…

Catégories :NodeMCU Étiquettes : , ,

Piloter NodeMCU Lolin à partir de Domoticz

Aujourd’hui on va interfacer le NodeMCU avec Domoticz. Pour cela on va reprendre le programme qui permet d’allumer ou éteindre la LED interne du NodeMCU (voir l’article https://itechnofrance.wordpress.com/2018/01/08/nodemcu-serveur-web-et-traitement-dune-requete-http/).

Le programme traite les requêtes suivantes :
http://adr.ip.nodemcu/led_on : allume la LED.
http://adr.ip.nodemcu/led_off : éteint la LED.
Pour indiquer à Domoticz comment communiquer avec le NodeMCU, il va être nécessaire d’effectuer certaines étapes :
1/ A partir du menu ‘Réglages‘, puis ‘Matériel‘, créer un switch virtuel comme à l’écran :

Lire la suite…

Catégories :Domotique, NodeMCU Étiquettes : , ,

NodeMCU : capteur de température LM35DZ

Dans l’article précédent, on a vu comment corriger l’erreur de conversion analogique concernant l’entrée A0. Nous allons mettre en oeuvre l’utilisation du capteur de température LM35DZ avec la platine de test NodeMCU.

Le brochage de ce capteur est le suivant :
Ce modèle de capteur peut mesurer les températures entre 0°C et 100°C. En sortie nous obtenons une variation de 10mV par °C.
Le programme va effectuer les étapes suivantes :
– Initialisation du WiFi en mode station et en mode point d’accès.
– Affichage sur l’écran OLED pendant 10 secondes de l’adressage IP.
– Affichage des températures minimales, maximales et réelles sur l’écran OLED.
– Affichage sur une page Web des informations identiques que sur l’écran OLED et d’un graphique des mesures pendant les  5 dernières minutes avec un rafraichissement de la page toutes les 5 secondes.

Lire la suite…

Catégories :NodeMCU Étiquettes : , , , ,

NodeMCU : entrée analogique A0

Un petit article pour expliquer l’utilisation de l’entrée analogique du NodeMCU Lolin car j’ai constaté un petit problème d’utilisation.

Lorsque j’ai voulu utilisé le capteur de température lm35dz à partir de la platine de test NodeMCU, j’ai constaté un problème de capture de température; la valeur détectée était bien supérieure à la valeur réelle. Sur le moment  je me suis dit que cela venait de la tension d’alimentation du capteur en 3.3v alors que dans la documentation du capteur il est indiqué une tension minimale de 4v.
Pour lever le doute j’ai branché ca capteur avec un Arduino Nano; j’ai branché tout d’abord le capteur en 5v puis en 3.3v. Je n’ai constaté aucune différence. Donc le problème ne vient pas de la tension d’alimentation du capteur.
Je me suis penché sur les caractéristiques du NodeMCU; Le Nodemcu possède une seule entrée analogique A0 avec une conversion sur 10 bits (1024) pour une valeur d’entrée de 0v à 3.3v.

L’entrée A0 est connectée à la broche TOUT (entrée analogique) de l’ESP8266 de la façon suivante :

Lire la suite…

Catégories :NodeMCU Étiquettes : , ,

NodeMCU : TimeLapse pour appareil photo Canon

J’avais déjà créé une télécommande pour mes appareils photos Canon Powershot G5 et EOS 400D à l’aide d’un ATtiny85 pour effectuer des prises de vue à intervalle régulier. Je ne l’ai jamais publié sur mon Blog par manque de temps.

Je vais vous proposer dans cet article de pouvoir effectuer une prise de vue à intervalle régulier à partir de ma platine de test NodeMCU.
J’avais passé beaucoup de temps sur internet pour trouver le fonctionnement des télécommandes Canon RC-5 et WL DC100 car elles n’utilisent pas la même fréquence que les télécommandes de télévision à savoir du 32.7 KHz au lieu de 38 KHz.
Bref à partir du programme vous pouvez vous connecter au NodeMCU à l’aide d’un navigateur internet et piloter la prise de vue à intervalle régulier.
Pour cela il suffit de taper l’adresse IP de votre NodeMCU qui est affiché sur l’écran OLED et de choisir les différentes options :

Lire la suite…

Catégories :NodeMCU Étiquettes : , , ,

NodeMCU : Infrarouge

Toujours avec la platine de test, je me suis penché sur l’utilisation de la librairie IRremoteESP8266 afin de pouvoir décoder quelques télécommandes TV et de pouvoir envoyer un code Infrarouge via un serveur Web.

Les étapes du programme :
– Initialisation du WiFi en mode client et en point d’accès.
– Affichage de l’adresse IP du client et du point d’accès sur l’écran OLED SSD1306.
– Attente de réception d’un code Infrarouge et affichage minimal de celui-ci (type encodage, nombre de bits, code).
– Serveur Web pour émettre un code Infrarouge.
Quand le NodeMCU démarre au bout d’un moment on voit apparaître les informations suivantes :

Lire la suite…

Catégories :NodeMCU Étiquettes : , , ,