ESP8266 - omartek/linux_variePerLaboratorio GitHub Wiki
Eseguire due volte (con ESP non collegato e collegato):
ls /dev/tty*
e controllare la porta che si è aggiunta.
Installare esptool
pip install esptool --user
Eseguire il comando:
pc-minihp@pcminihp-EliteBook2530p:~$ esptool.py -p /dev/ttyUSB0 flash_id
per visualizzare le informazioni del modulo
esptool.py v2.6 Serial port /dev/ttyUSB0 Connecting.... Detecting chip type... ESP8266 Chip is ESP8266EX Features: WiFi MAC: 84:f3:eb:b1:cb:70 Uploading stub... Running stub... Stub running... Manufacturer: 20 Device: 4016 Detected flash size: 4MB Hard resetting via RTS pin...
Vedi guide di Adafruit
Scaricare l'ultimo firmware Micropython disponibile per ESP8266 da qui.
Cancellare il firmware esistente (verificare che la seriale sia proprio quella indicata):
esptool.py --port ''/dev/ttyUSB0'' erase_flash
Eseguire l'upload del firmware:
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash --flash_size=detect 0 esp8266-20190125-v1.10.bin
Digitare il comando seguente per accedere alla seriale:
screen /dev/ttyUSB0 115200
Premendo invio comparirà il prompt:
>>> >>>help()
Premere ctrl+a e :quit per uscire.
Se l'ESP non è collegato fisicamente al pc è possibile collegarsi tramite alla REPL tramite WiFi. Se il modulo non è collegato a nessuna rete creerà una propria rete con SSID Micropython* con passwordvmicropythoN. È necessario aver abilito la REPL via WiFi preventivamente essendosi collegati almeno una volta via seriale ed avendo eseguito il comando:
import webrepl_setup
e avendo risposto alle domande proposte, tra cui l'inserimento della password. È possibile scaricare un client o utilizzare questo online. Estratto da questa guida di Adafruit.
Dalla REPL seriale, eseguire i comandi:
import network wlan = network.WLAN(network.STA_IF) wlan.active(True) wlan.connect('ssid', 'password')
e controllare l'assegnamento dell'indirizzo IP al modulo, con il comando:
wlan.ifconfig()
Abilitare quindi la REPL per l'accesso attraverso la rete wireless locale:
import webrepl webrepl.start()
Verrà cosí mostrato l'indirizzo assegnato al modulo e la relativa porta. Le impostazioni verranno salvate e il modulo si ricorderà dell'ultima rete a cui è stata connessa. Attenzione che se si sposta il dispositivo sarà necessario riconfigurarlo per consentire la connessione alle nuove rete WiFi disponibili.
Eventualmente aggiungere i comandi per la gestione della rete nel file /boot.py ed eseguire la configurazione facendo almeno un accesso da REPL seriale, per impostrare nome SSID e password.
Per resettare da riga di comando, eseguire:
import machine machine.reset()