Esp8266: differenze tra le versioni

Da EigenWiki.
Vai alla navigazione Vai alla ricerca
(firmware stub)
(flash+esplorer)
Riga 18: Riga 18:


==== Linux generico ====
==== Linux generico ====
https://www.esp8266.com/wiki/doku.php?id=toolchain#how_to_setup_a_vm_to_host_your_toolchain
* https://www.esp8266.com/wiki/doku.php?id=toolchain#how_to_setup_a_vm_to_host_your_toolchain
Scaricare esptool.py per fare il flashing: https://github.com/espressif/esptool
* Scaricare esptool.py per fare il flashing: https://github.com/espressif/esptool


==== Arch Linux ====
==== Arch Linux ====
Riga 42: Riga 42:


In questo modo, fra le altre cose si vedono le specifiche della scheda e le dimensioni della flash (typ. 4MB).
In questo modo, fra le altre cose si vedono le specifiche della scheda e le dimensioni della flash (typ. 4MB).
A questo punto è possibile compilare e flashare il firmware:
$ cd nodemcu-firmware
$ make
$ make flash4m
A questo punto il dispositivo dovrebbe essere pronto ad accogliere i file .lua!
A questo scopo si può usare esplorer (https://github.com/4refr0nt/ESPlorer), disponibile in AUR per Arch.

Versione delle 22:32, 27 apr 2018

Hardware

Schematiche: https://github.com/nodemcu/nodemcu-devkit-v1.0/blob/master/NODEMCU_DEVKIT_V1.0.PDF

Pinout: https://github.com/nodemcu/nodemcu-devkit-v1.0/blob/master/Documents/NODEMCU_DEVKIT_V1.0_PINMAP.png


Caveat

  • D3 (GPIO0) DEVE essere usato come output, visto che è condiviso con la funzione di flash, se è basso all'avvio il SoC entra in modalità flash.
  • D4 (GPIO2) e D8 (GPIO15) all'avvio devono essere rispettivamente HI e LOW (tramite dei pull-up/down già presenti), per cui *dovrebbero* essere usati come output.
  • D9 (GPIO3) e D10 (GPIO1) sono condivisi con la seriale (RXD0 e TXD0).
  • D11 (GPIO9) e D12 (GPIO10) sono sul lato opposto, ed etichettate come SD1 e SD2.
  • D0 (GPIO16) è stupido, può essere solo scritto/letto, ma non supporta PWM o qualunque altra cosa. È usato per risvegliare il processore.


Installazione toolchain

Si raccolgono qui le procedure di installazione della toolchain per programmare l'Esp8266, nei vari casi d'uso.

Linux generico

Arch Linux

La procedura generica non funziona, almeno non con l'ultima versione di GCC. È disponibile un pacchetto aur.

$ git clone https://aur.archlinux.org/esp-open-sdk-git.git
$ makepkg -s
# pacman -U esp-open-sdk-git

Il PKGBUILD scaricherà e compilerà il toolchain. La procedura è decisamente lenta (>40 min).

Installare esptool:

# pacman -S esptool

Download firmware con supporto LUA

$ git clone https://github.com/nodemcu/nodemcu-firmware

Collegare l'ESP tramite una MicroUSB al computer, e verificare il funzionamento:

$ esptool --port <serial-port> flash_id

In questo modo, fra le altre cose si vedono le specifiche della scheda e le dimensioni della flash (typ. 4MB).

A questo punto è possibile compilare e flashare il firmware:

$ cd nodemcu-firmware
$ make
$ make flash4m

A questo punto il dispositivo dovrebbe essere pronto ad accogliere i file .lua!

A questo scopo si può usare esplorer (https://github.com/4refr0nt/ESPlorer), disponibile in AUR per Arch.