# Microcontrôleurs # ESP8266 (module) L'ESP8266 est un petit module Wifi vraiment pas cher. Son gros avantage est qu'il peut être flashé séparément et avoir son propre firmware. Il possède également des GPIOs (le nombre varie selon les modèles) et du chiffrement (WPA / WPA2), ce qui en fait un excellent petit module pour tout ce qui est domotique. [![](https://wiki.lghs.be/_media/tuto:wifi_serial_transceiver_module.jpg?w=200&tok=0abbd2)](https://wiki.lghs.be/_detail/tuto:wifi_serial_transceiver_module.jpg?id=tuto%3Aesp8266 "tuto:wifi_serial_transceiver_module.jpg")Il existe plusieurs versions de l'ESP8266. La version que nous avons en stock au HS est l'**ESP-01** [1)](https://wiki.lghs.be/tuto:esp8266#fn__1). **Specs de l'ESP-01 :**
-
802.11 b/g/n
-
Wi-Fi Direct (P2P), soft-AP
-
Integrated TCP/IP protocol stack
-
Integrated TR switch, balun, LNA, power amplifier and matching network
-
Integrated PLLs, regulators, DCXO and power management units
-
+19.5dBm output power in 802.11b mode
-
Power down leakage current of <10uA
-
Integrated low power 32-bit CPU could be used as application processor
-
SDIO 1.1/2.0, SPI, UART
-
STBC, 1×1 MIMO, 2×1 MIMO
-
A-MPDU & A-MSDU aggregation & 0.4ms guard interval
-
Wake up and transmit packets in < 2ms
-
Standby power consumption of < 1.0mW (DTIM3)
**Liste de tous les ESP8266 :** [http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family](http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family "http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family") ## Communiquer avec l'ESP Le firmware de base de l'ESP permet de communiquer via les [commandes AT](https://fr.wikipedia.org/wiki/Commandes_Hayes "https://fr.wikipedia.org/wiki/Commandes_Hayes"). Pour ce faire, on peut communiquer via les ports série de l'ESP depuis les ports série de l'[Arduino](https://wiki.lghs.be/tuto:arduino "tuto:arduino"). La vidéo de U=RI est une excellente introduction pour communiquer une première fois avec le module : [U=RI - Arduino Ep.16 - Installation du module Wifi ESP8266](https://www.youtube.com/watch?v=dKFcEDy2q5M "https://www.youtube.com/watch?v=dKFcEDy2q5M") Le résultat obtenu en console :
``` > AT+RST OK @f����Y�G�@��b�bc@����� [Vendor:www.ai-thinker.com Version:0.9.2.4] ready > AT+CWMODE=3 OK > AT+CWLAP +CWLAP:(3,"LgHS",-47,"c6:25:06:**:**:**",1) +CWLAP:(0,"PROXIMUS_FON",-84,"32:91:8f:**:**:**",1) +CWLAP:(0,"PROXIMUS_AUTO_FON",-90,"0a:19:70:**:**:**",1) OK > AT+CWJAP="LgHS","****//le mdp du wifi//*****" OK > AT+CIFSR 192.168.4.1 192.168.179.49 OK ```
## Flasher l'ESP Maintenant qu'on a réussi à communiquer avec l'ESP, la prochaine étape est de *flasher* un nouveau firmware afin qu'il puisse être utilisé en standalone : plus besoin d'Arduino ! Il existe plusieurs manières de flasher le firmware : [Nodemcu](http://nodemcu.com/index_en.html "http://nodemcu.com/index_en.html"), [micropython](https://github.com/micropython/micropython/tree/master/esp8266 "https://github.com/micropython/micropython/tree/master/esp8266"),… La méthode utilisée ici est sans doute la plus simple : utiliser l'environnement d'Arduino et son *Board Manager*. Dans tous les cas, il faudra utiliser un programmeur FTDI. Il en existe sous forme de [breakout board](https://www.sparkfun.com/products/9873 "https://www.sparkfun.com/products/9873") ou bien de [câble usb](http://www.ftdichip.com/Products/Cables/USBTTLSerial.htm "http://www.ftdichip.com/Products/Cables/USBTTLSerial.htm"). **Attention, pour l'ESP8266 le programmeur doit être en 3.3v et non en 5v !** ## Installer avec Board Manager Depuis la version 1.6.4, Arduino offre la possibilité d'installer des packages de plateformes tierces via le *Board Manager*.
-
Installer Arduino >1.6.4
-
Démarrer Arduino et aller dans les préférences
-
Dans "URL de gestionnaire de cartes supplémentaires", ajouter [http://arduino.esp8266.com/stable/package\_esp8266com\_index.json](http://arduino.esp8266.com/stable/package_esp8266com_index.json "http://arduino.esp8266.com/stable/package_esp8266com_index.json") puis cliquez sur OK
-
Allez dans *Outils > Gestionnaire de cartes* et faites une recherche sur *ESP*.
-
Installez le package *esp8266 by ESP8266 Community*
-
Sélectionnez votre board dans *Outils > Type de cartes* (Generic ESP8266 Module)
## Mode Standalone [http://iot-playground.com/blog/2-uncategorised/38-esp8266-and-arduino-ide-blink-example](http://iot-playground.com/blog/2-uncategorised/38-esp8266-and-arduino-ide-blink-example "http://iot-playground.com/blog/2-uncategorised/38-esp8266-and-arduino-ide-blink-example") ## Updates OTA (Over The Air) Le *flashage* du firmware est un peu lent. Et puis le câble USB connecté à l'ordinateur c'est old school. Prochaine étape : [Updates OTA](http://esp8266.github.io/Arduino/versions/2.0.0/doc/ota_updates/ota_updates.html "http://esp8266.github.io/Arduino/versions/2.0.0/doc/ota_updates/ota_updates.html") ! ## Etape suivante L'étape suivante pourrait être par exemple de créer un webserver : [Youtube - ESP8266 Hack #1: Web Enabled LED - WiFi Internet-of-Things IoT](https://www.youtube.com/watch?v=VvIoBFLj2Xo "https://www.youtube.com/watch?v=VvIoBFLj2Xo") Ou encore utiliser le chip comme client MQTT : - [https://github.com/Imroy/pubsubclient](https://github.com/Imroy/pubsubclient "https://github.com/Imroy/pubsubclient") ## Liens en vrac
-
Setup ESP standalone / bootloader (avec programmeur série) : [https://github.com/esp8266/Arduino/blob/master/doc/boards.md#minimal-hardware-setup-for-bootloading-only](https://github.com/esp8266/Arduino/blob/master/doc/boards.md#minimal-hardware-setup-for-bootloading-only "https://github.com/esp8266/Arduino/blob/master/doc/boards.md#minimal-hardware-setup-for-bootloading-only")
---
[1)](https://wiki.lghs.be/tuto:esp8266#fnt__1)
[http://www.seeedstudio.com/depot/WiFi-Serial-Transceiver-Module-w-ESP8266-p-1994.html](http://www.seeedstudio.com/depot/WiFi-Serial-Transceiver-Module-w-ESP8266-p-1994.html "http://www.seeedstudio.com/depot/WiFi-Serial-Transceiver-Module-w-ESP8266-p-1994.html")
# ESP8266 # Arduino # Manuel Arduino [![illu-arduino-uno.png](https://wiki.liegehacker.space/uploads/images/gallery/2020-06/scaled-1680-/VR3IY9sMtiKlIttL-illu-arduino-uno.png)](https://wiki.liegehacker.space/uploads/images/gallery/2020-06/VR3IY9sMtiKlIttL-illu-arduino-uno.png)Arduino, et son récent synonyme Genuino, sont des cartes matériellement libres sur lesquelles se trouve un microcontrôleur (d'architecture Atmel AVR comme par exemple l'Atmega328p). Les schémas de ces cartes sont publiés en licence libre, cependant, certains composants, comme le microcontrôleur par exemple, ne sont pas en licence libre. Le microcontrôleur peut être programmé pour analyser et produire des signaux électriques, de manière à effectuer des tâches très diverses comme la domotique (le contrôle des appareils domestiques - éclairage, chauffage…), le pilotage d'un robot, de l'informatique embarquée, etc. Site: [http://www.arduino.cc/](http://www.arduino.cc/ "http://www.arduino.cc/")
--- ---
### Tuto
-
[eBook d'Eskimon](http://eskimon.fr/extra/ebooks/arduino-premiers-pas-en-informatique-embarquee.pdf "http://eskimon.fr/extra/ebooks/arduino-premiers-pas-en-informatique-embarquee.pdf")
# Arduino [![illu-arduino-uno.png](https://wiki.liegehacker.space/uploads/images/gallery/2020-06/scaled-1680-/Kss9u6mnGa9YTitS-illu-arduino-uno.png)](https://wiki.liegehacker.space/uploads/images/gallery/2020-06/Kss9u6mnGa9YTitS-illu-arduino-uno.png) Un(e) Arduino/Genuino est une carte composée d'un micro-controller Atmel. Cette carte possède une série d'entrées/sorties analogiques et numériques. La puce Atmel est programmable a l'infini et permet une interaction entre l'ordinateur et le monde physique. Ces cartes sont publiées sous licences "libres" c'est pour cela qu'il existe de nombreuses versions (Geniuno, Diavolino, Freeduino, Seeeduino, …) Cependant, certains composants, comme le microcontrôleur par exemple, ne sont pas en licence libre. Le microcontrôleur peut être programmé pour analyser et produire des signaux électriques, de manière à effectuer des tâches très diverses comme la domotique (le contrôle des appareils domestiques - éclairage, chauffage…), le pilotage d'un robot, de l'informatique embarquée, etc. ## Les shields Un shield est une carte compatible avec l'Arduino. Cette carte s'appose sur l'Arduino et s'utilise généralement avec une lib.
-
Shield ethernet
-
Shield Wifi
## Les autres modules (capteurs ou actuateurs) Contrairement aux shields, les modules Arduino sont compatibles mais ne s'apposent pas sur la board. Il est nécessaire d'utiliser des "jumpers" et une breadboard.
-
[Bluetooth](http://fr.aliexpress.com/item/LM1117-AMS1117-4-5-7V-turn-3-3V-DC-DC-Step-down-Power-Supply-Module-For/32588261370.html?ws_ab_test=searchweb201556_0,searchweb201602_3_10037_10033_507_10032_10020_10017_10021_10022_10009_10008_10018_101_10019,searchweb201603_9&btsid=6bf3e77c-c8c3-4a9d-b1a6-a721cb7124a0 "http://fr.aliexpress.com/item/LM1117-AMS1117-4-5-7V-turn-3-3V-DC-DC-Step-down-Power-Supply-Module-For/32588261370.html?ws_ab_test=searchweb201556_0,searchweb201602_3_10037_10033_507_10032_10020_10017_10021_10022_10009_10008_10018_101_10019,searchweb201603_9&btsid=6bf3e77c-c8c3-4a9d-b1a6-a721cb7124a0")
-
[Emetteur/Recepteur 433 Mhz](http://fr.aliexpress.com/item/Rf-nirkabel-modul-penerima-Pemancar-papan-modul-untuk-Arduino-Super-regenerasi-315-433-MHz-DC5V-meminta/32493912486.html?ws_ab_test=searchweb201556_0,searchweb201602_3_10037_10017_10021_507_10022_10032_10009_10020_10008_10018_10019_101,searchweb201603_9&btsid=6ef247a9-9981-48fe-b98d-2193eab9df5d "http://fr.aliexpress.com/item/Rf-nirkabel-modul-penerima-Pemancar-papan-modul-untuk-Arduino-Super-regenerasi-315-433-MHz-DC5V-meminta/32493912486.html?ws_ab_test=searchweb201556_0,searchweb201602_3_10037_10017_10021_507_10022_10032_10009_10020_10008_10018_10019_101,searchweb201603_9&btsid=6ef247a9-9981-48fe-b98d-2193eab9df5d")
-
[Wifi](http://fr.aliexpress.com/item/ESP8266-serial-port-module-WIFI-wireless-module-remote-wireless-module-wall-Wang-compatible-with-Arduino/32632608493.html?ws_ab_test=searchweb201556_0,searchweb201602_3_10037_10033_507_10032_10020_10017_10021_10022_10009_10008_10018_101_10019,searchweb201603_9&btsid=b285a3ca-d0ed-4b98-bbcf-b19a74e215df "http://fr.aliexpress.com/item/ESP8266-serial-port-module-WIFI-wireless-module-remote-wireless-module-wall-Wang-compatible-with-Arduino/32632608493.html?ws_ab_test=searchweb201556_0,searchweb201602_3_10037_10033_507_10032_10020_10017_10021_10022_10009_10008_10018_101_10019,searchweb201603_9&btsid=b285a3ca-d0ed-4b98-bbcf-b19a74e215df")
-
Accéléromètre
-
Gyroscope
-
PIR
-
## Nos tutos ### Les Tutos (liens externes)
-
[Mesurer des températures de manière très précise](http://www.instructables.com/id/How-to-Measure-Temperature-Very-Accurately-With-an/ "http://www.instructables.com/id/How-to-Measure-Temperature-Very-Accurately-With-an/")
-
[eBook d'Eskimon](https://wiki.lghs.be/_media/tuto:arduino_-_premiers_pas_en_informatique_embarquee.pdf "tuto:arduino_-_premiers_pas_en_informatique_embarquee.pdf (21.9 MB)")
## Ou s'en procurer ?
-
[|Le shop officiel](https://store.arduino.cc/ "https://store.arduino.cc/")
-
Sur les sites des "clones" (Genuino, Diavolino, Freeduino, …)
-
[|Chez ce vendeur Aliexpress](http://fr.aliexpress.com/store/1950989 "http://fr.aliexpress.com/store/1950989") (Arduino modifié et remis au goût du jour)
### Kits
-
[Kit de démarrage](http://fr.aliexpress.com/store/product/UNO-R3-KIT-Upgraded-version-of-the-Starter-Kit-the-RFID-learn-Suite-LCD-1602-for/716258_1318648074.html "http://fr.aliexpress.com/store/product/UNO-R3-KIT-Upgraded-version-of-the-Starter-Kit-the-RFID-learn-Suite-LCD-1602-for/716258_1318648074.html")
-
[Kit robot](http://fr.aliexpress.com/store/product/Free-shipping-NEW-Ultrasonic-Ranging-car-ultrasound-based-third-generation-smart-car-kit-for-Arduino/716258_32224379026.html "http://fr.aliexpress.com/store/product/Free-shipping-NEW-Ultrasonic-Ranging-car-ultrasound-based-third-generation-smart-car-kit-for-Arduino/716258_32224379026.html")
-
[Kit démarrage domonique / capteurs](http://fr.aliexpress.com/store/product/Free-Shipping-Zero-based-learning-smart-home-control-for-environmental-monitoring-platform-on-arduino/716258_1903820168.html "http://fr.aliexpress.com/store/product/Free-Shipping-Zero-based-learning-smart-home-control-for-environmental-monitoring-platform-on-arduino/716258_1903820168.html")
-
[|Kit ecran et capteur ultrasons](http://fr.aliexpress.com/store/product/Free-Shipping-Mega-2560-r3-for-arduino-kit-HC-SR04-breadboard-cable-relay-module-W5100-UNO/716258_2039562210.html "http://fr.aliexpress.com/store/product/Free-Shipping-Mega-2560-r3-for-arduino-kit-HC-SR04-breadboard-cable-relay-module-W5100-UNO/716258_2039562210.html")
## Autres liens utiles
-
[Site officiel](http://www.arduino.cc/ "http://www.arduino.cc/")