ESP8266 - AT Command

Salve , ho provato di tutto... e non sono mai riuscito ad entrare in modalità AT.
Questo è il Secondo Modulo che provo, premetto che non ho aggiornato il Firmware .

Schema Elettrico usato :

  • ESP8266 Pin CH_PD collegato con una Pull-Up da 10K .
  • ESP8266 Pin RESET collegato ad un Push-Button e con Pull-Up da 10K .
  • ESP8266 Pin GPIO 0 NON collegato.
  • ESP8266 Pin GPIO 2 NON collegato.
  • ESP8266 Alimentazione Breadboard a 3.3v
  • ESP8266 e Arduino connesso a GND.

Sketch:

//  Arduino Pin 2 (RX) to ESP8266 TX
//  Arduino Pin 3 to Voltage Divider then to ESP8266 RX
 
#include <SoftwareSerial.h>
SoftwareSerial ESPserial(2, 3); // RX | TX
 
void setup() 
{
    Serial.begin(9600);     // Communication with the host computer
    //while (!Serial)   { ; }
 
    // Start the software serial for communication with the ESP8266
    ESPserial.begin(9600);  
 
    Serial.println("");
    Serial.println("Remember to to set Both NL & CR in the serial monitor.");
    Serial.println("Ready");
    Serial.println("");    
}
 
void loop() 
{
    // listen for communication from the ESP8266 and then write it to the serial monitor
    if ( ESPserial.available() )   {  Serial.write( ESPserial.read() );  }
 
    // listen for user input and send it to the ESP8266
    if ( Serial.available() )       {  ESPserial.write( Serial.read() );  }
}

Arduino IDE 1.8.8 e settato con Scheda: "Arduino/Genuino Uno"

Quando digito AT nel Monitor Serial non ottengo Nessuna Risposta invece quando con il Push-Button faccio in Reset oppure Spengo e Accendo il Modulo ESP8266 questo :


Remember to to set Both NL & CR in the serial monitor.
Ready

⸮⸮⸮e!Z⸮⸮A⸮⸮⸮⸮⸮⸮⸮⸮⸮e)Z⸮⸮A⸮⸮⸮⸮⸮⸮⸮⸮zYBDu ⸮⸮⸮

Dove sto Sbagliando ? :frowning: :frowning: :confused:

Grazie !!! :slight_smile:

hai provato settando la comunicazione a 115200?

ti allego il manuale comandi AT

Si , ho provato con le velocità più significative, ho questa documentazione ma qui trovo i comandi.
Io non riesco proprio ad entrare in AT.

Potrebbe essere GUASTO ?

Grazie.

che siano guasti due su due .... mi pare strano anche se potrebbe essere, hai un link a dove li hai presi? (tanto per capire).
Nel caso potresti provare a cercare il firmware at e ri-flasharlo

Ferma, che c'è qualcosa di non chiaro

  1. se ricevi immondizia come quella che hai mostrato, è un problema di velocità della seriale, o magari di stop-start-parity bit, ma non credo, facile che hai le velocità disallineate
  2. la softserial notoriamente ha problemi con velocità elevate
    quindi?
    io ti direi di ri-provare, con calma, mettere la softserial alla velocità di 115200, alzare anche il terminale e la seriale HW, che altrimenti riempi il buffer in un niente
    se riesci, trova la maniaera di abbassare la velocità del 8266, che la softserial è un po' al limite......

Una rapida ricerca, che la prossima volta fai tu, ha indicato che il problema della velocità elevata, troppo elevata, per la Softserial si risolve usando la prima volta la HWserial, o quasi.
metti sull'arduino un qualsiasi programma che NON usi la seriale
colleghi lo 8266 alla seriale HW, ricordandoti di invertire TX con RX, che saranno invertiti
apri il monitor seriale alla velocità nominale dello 8266 (trova sul datasheet, ma dovrebbe essere 115200 N 8 1
se hai, e dovresti avere la comunicazione, ri-programmi lo 8266 per una velocità accettabile, magari 9600 N 8 1
te la segni, questa velocità, mica di dimenticarsela
poi ricolleghi il tutto come adesso e riprovi, aprendo la softserial con la velocità che hai scelto
facci sapere......

Ciao Standardoil,
Perdonami ma non capito bene come dovrei fare questo Test. :frowning:

Grazie.

Standardoil:
Una rapida ricerca, che la prossima volta fai tu, ha indicato che il problema della velocità elevata, .....

I pin 2 e 3 di Arduino sono direttamente connessi all'ESP8266 o in mezzo c'è un adattatore di livelli?

Nel Codice avevo già scritto :

//  Arduino Pin 2 (RX) to ESP8266 TX
//  Arduino Pin 3 to Voltage Divider then to ESP8266 RX

Grazie. :slight_smile: :slight_smile: :slight_smile:

Salve, con l'obbiettivo di risolvere il problema di non riuscire ad entrare in modalità AT Commands , seguendo questo Tutorial che riguarda il Firmware , adesso sul Serial Monitor impostando 74880 invece di 115200 come indicava il Tutorial.
Adesso dopo aver caricato uno Sketch se riavvio il Modulo oppure con un Reset tramite un Push-Button leggo :


ets Jan 8 2013,rst cause:2, boot mode:(1,7)

ets Jan 8 2013,rst cause:2, boot mode:(1,6)


Prima di postare impegnandomi ho cercato la soluzione su Google ma senza esito.

Il mio Alimentatore riporta in Targa : 9V - 1600mA .

In attesa di un vostro aiuto non mi arrendo e continuerò a risolvere il problema.

Ho trovato questo Schema Elettrico in questo modo il Modulo inizializza e sembra più stabile , ma sempre non riesco ad entrare in modalità AT.
NB: Credo che ci sia un Errore in questo Schema Elettrico i collegamenti RX e TX devono essere scambiati.

Grazie di tutto. :slight_smile:

Mancano ancora informazioni.
Questo modulo funziona a 3.3V anche sui pin Rx e TX.
Se stai prendendo l'alimentazione a 3.3V dall'Arduino questo non è in grado di fornire la corrente richiesta (solo alcuni cloni ne sono capaci) e infatti il cause2 può indicare una insufficiente alimentazione tanto da causare un reset.

Vedi qua, il primo post solamente dovrebbe essere sufficiente. Guarda lo schema.

https://forum.arduino.cc/index.php?topic=265682.0

Mi dispiace non essere stato chiaro :frowning: .
Credo che abbia fatto confusione.

  1. Ho utilizzato Arduino nel primo Post per provare ad entrare in modalità AT Commands.
  2. Ho aggiornato il Firmware con FTDI alimentando ESP8266-01 con 9v - 1600mA montato su una Breadboard .
  3. Ho caricato come Test lo Sketch HelloServer e adesso ottengo :
 ets Jan  8 2013,rst cause:2, boot mode:(3,7)

load 0x4010f000, len 1384, room 16 
tail 8
chksum 0x2d
csum 0x2d
v951aeffa
~ld

Come sempre non riesco ad entrare in AT e adesso lo stabilizzatore del Modulo Alimentatore Breadboard scalda molto ma il modulo non è danneggiato.

Ho ricaricato lo Sketch HelloServer è adesso Funziona.

Non capisco questa instabilità a cosa sia dovuta.

Grazie per la pazienza. :slight_smile:

Scusa ma il fatto che sullo sketch ci sia scritto di usare un divisore di tensione non implica che poi tu l'abbia usato.
Ma replicando con quelle due linee di codice immagino di si.

Hai alimentato l'ESP8266 a 9V? Sono troppi. Massimo 3.3V

Se hai un adattatore USB seriale FTDI dovrebbe essere in grado di alimentare l'ESP01 ma solamente se ha l'opzione per andare a 3.3V, lo schema della pagina che hai linkato dovrebbe essere corretto. Ma vale solo per il flash, dopo GPIO0 non va a massa ma va a 3.3V mentre il CH_PD va sempre a 3.3V.

Caricare uno sketch sull'ESP8266 elimina il firmware AT, va rimesso daccapo.
Dopo il caricamento però il GPIO0 non va più a massa altrimenti entra daccapo nel bootloader seriale.

Carissimo zoomx :slight_smile: , non sono un Genio ma se avessi Alimentato ESP8266-01 con 9v già gli avrei fatto un funerale se non sopporta i 5v figuriamoci i 9v.

Faccio della ironia spicciola :slight_smile: , ti ringrazio per l'attenzione.

Sia GPO0 che CH_PD sono collegati con una Pull-Up da 10K.

Adesso perchè facendo Gestione Attività su Windows 10 su Nome : Java(TM) Platform SE binary (2) impegna la CPU al 68% bloccando la Seriale ?

A 74880 boud ricevo questo ma qualche volta inizializza :

.....................
3fffff50:  00000002 00000001 00000001 00000001  
3fffff60:  00000004 00000000 3ffee54c 00000001  
3fffff70:  0001c200 00000000 3ffee580 3ffee5e8  
3fffff80:  3ffe84e0 3ffee54c 3ffee580 4020250d  
3fffff90:  feefeffe feefeffe feefeffe feefeffe  
3fffffa0:  3fffdad0 00000000 3ffee5b8 4020434c  
3fffffb0:  feefeffe feefeffe 3ffe8510 40100a49  
<<<stack<<<

ets Jan  8 2013,rst cause:2, boot mode:(3,6)

load 0x4010f000, len 1384, room 16 
tail 8
chksum 0x2d
csum 0x2d
v951aeffa
~ld

Grazie.

Scusa se ti ho sospettato di aver alimentato l'ESP8266 a 9V ma da quello che scrivevi poteva anche essere.

L'esp8266 va a 74880 solamente per i messaggi di boot, poi cambia a 9600 o 115200 se ha il firmware AT oppure a velocità diverse se lo sketch lo prevede.

Io con gli ESP8266 sono sempre stato fortunato e mi ha funzionato tutto al primo colpo tranne una volta, proprio con un ESP01 che apparteneva ad una serie difettosa. La resistenza del led power era errata, troppo bassa, per cui il led ha fatto un bel lampo, poi è rimasto acceso a bassissima luminosità e la resistenza si è surriscaldata. In rete trovai in post che parlava proprio di una partita di esp01 con questi problemi.

In effetti ci sono altre cose che non ti ho chiesto. Qualsiasi teminale seriale usi i comandi AT devono essere terminati con CTRL+LF. Il terminale integrato nell'IDE non li aggiunge se tu non selezioni l'apposita opzione in basso a destra di quella dove selezioni i baud.

Il terminale dell'IDE è comodo ma manca di alcune raffinatezze che invece sono presenti in programmi più complessi come Realterm che però è un po' più complesso.

L'enciclopedia di questi dispositivi l'ha scritta Neil Kolban anche se adesso son 3 anni che non viene aggiornata.
http://neilkolban.com/tech/esp8266/
Adesso penso si stia dedicando agli ESP32
Qui
http://neilkolban.com/tech/
c'è anche uno schema di collegamento ma credo che tu abbia già fatto tutto correttamente.

Come ultima ipotesi ci potrebbe essere quella del dispositivo difettoso ma io ne ho una decina, in diverse forme, e finora non mi è mai capitato a parte l'episodio della resistenza errata.