{{tag>dev esp8266 devkit flash firmware}} ====== DevKit ESP8266: Flasher firmware Espressif ====== Les firmwares pré-compilés par Espressif sont disponibles sur la page du constructeur: * https://www.espressif.com/en/products/socs/esp8266ex/resources * Télécharger et décompresser la version souhaitée. Ici on récupère **ESP8266 NonOS AT Bin V1.7.4**. * Brancher la carte (Devkit) sur un port USB, et relever le nom du port dans les journaux système: journalctl -k --since "1 minutes ago" -- Logs begin at Tue 2021-01-05 18:32:35 CET, end at Tue 2021-01-05 21:02:43 CET. -- janv. 05 21:02:40 node-7fab kernel: usb 1-1: new full-speed USB device number 6 using xhci_hcd janv. 05 21:02:40 node-7fab kernel: usb 1-1: New USB device found, idVendor=1a86, idProduct=7523, bc> janv. 05 21:02:40 node-7fab kernel: usb 1-1: New USB device strings: Mfr=0, Product=2, SerialNumber=0 janv. 05 21:02:40 node-7fab kernel: usb 1-1: Product: USB Serial janv. 05 21:02:40 node-7fab kernel: ch341 1-1:1.0: ch341-uart converter detected janv. 05 21:02:40 node-7fab kernel: usb 1-1: ch341-uart converter now attached to ttyUSB0 Dans mon cas, l'UART du DevKit (ch341) est associée au fichier périphérique /dev/tyUSB0. Un environnement virtuel Python est utilisé pour l'outil de flashage **esptool**, on active l'environnement source source /usr/local/share/esptool/bin/activate # Effacer la mémoire FLASH esptool.py --port /dev/ttyUSB0 erase_flash La commande suivante flashe le firmware esptool.py --chip esp8266 --port /dev/ttyUSB0 --baud 115200 write_flash -fm dio -fs 4MB 0x00000 boot_v1.7.bin 0x01000 at/1024+1024/user1.2048.new.5.bin 0x1fc000 esp_init_data_default_v08.bin 0xfe000 blank.bin 0x1fe000 blank.bin Le flashage du firmware est terminé, on peut quitter l'environnement virtuel Python: deactivate ===== Test ===== On essayer maintenant de se connecter en série via [[dev:iot:esp8266:communication_serie_via_minicom|minicom]], cutecom ou le moniteur série de l'IDE Arduino et envoyer des commandes AT: AT AT+GMR