connessione a sito web tramite ESP8266

Ciao a tutti,
come da titolo avrei un problema riguardo la connessione ad una mia pagina web con il modulo Wi-Fi l’ESP8266.
i comandi che eseguo sul modulo sono questi:

AT+RST ' resetto il modulo

RISPOSTA:

OK
cþcÏRSWâjÓjÊWfg{[úâêê
[Vendor:www.ai-thinker.com Version:0.9.2.4]
ready

AT+CWJAP="XXXX","XXXXXXX" 'connessione al wifi

RISPOSTA:

OK

AT+CIPMUX=0  'connessione singola

RISPOSTA:

OK

AT+CIFSR 'ottiene l'IP

RISPOSTA:
192.168.43.184
OK

AT+CIPSTART="TCP","www.bloggersite.altervista.org",80  'crea la connessione

RISPOSTA:
OK
Linked

AT+CIPSEND=80 'lunghezza da inviare

RISPOSTA:
>

GET /prova.php?valore=ciao HTTP/1.0\r\nHost: www.bloggersite.altervista.org:80\r\n\r\n 'dati da inviare

RISPOSTA:
SEND OK

Ma di fatto non ha inviato nulla ne ha risposto qualcosa…

LA pagina .php che dovrebbe riceve i dati è questa:

<?php

$valore = $_GET['valore'];
$f = fopen("a.html", "a");
fwrite ($f,$valore);
fclose($f);
echo $valore;

?>

e l’host è su altervista.
Ho cercato un casino di guide e tutti utilizzano questa “formula” ma non so perchè non invia i dati forse è colpa dell’host o della pagina .php . Provate anche voi se ce l’avete tanto l’ip è aperto a tutti. per inviare i comandi direttamente dal serial monitor ho caricato questo script su arduino:

void setup()
{
delay(1000);
Serial.begin(9600);
Serial1.begin(9600);
}

void loop()
{

if (Serial.available() > 0) {
  char ch = Serial.read();
  Serial1.print(ch);
}
if (Serial1.available() > 0) {
  char ch = Serial1.read();
  Serial.print(ch);
}
}

Qualche idea?

Grazie in anticipo!

@passa1248: per rispetto verso chi legge, riprendi il tuo post e :

  1. in conformità al regolamento, punto 7, lo devi editare (in basso a destra del post, bottone More → Modify) e racchiudere il codice all’interno dei tag CODE (… sono quelli che in edit inserisce il bottone fatto così: </>, tutto a sinistra).

  2. fai la stessa cosa anche per i messaggi così che siano racchiusi in una finestra CODE

  3. Elimina le inutili righe vuote in mezzo al post ed alla fine

Grazie.

Guglielmo

Non sono sicuro che i \r e \n siano interpretati correttamente in quel modo.

In ogni caso, cosa vuoi fare? Presumo che questo sia solo un test per poi fare altro. Se vuoi usare l'ESP per mandare online Arduino, ti consiglio di passare subito a fare i tuoi test con questa libreria: https://github.com/bportaluri/WiFiEsp.

In pratica mi servirebbe inviare i dati acquisiti da un igrometro collegato ad arduino ed inviarli ad un db remoto in piu se era possibile volevo poter visualizzare tramite il sito lo stato attuale di arduino (spento/acceso) e poter impostare la frequenza con cui effettuare i rilevamenti, solo che mi torna difficile capire come poter inviare dei dati dal sito ad arduino perché cm ip di destinazione dovrei mettere quello del router a cui é connesso l'arduino ma poi il router come fa a capire a che ip deve reindirizzare i pacchetti? Troppi dilemmi ... O.o

passa1248: ... perché cm ip di destinazione dovrei mettere quello del router a cui é connesso l'arduino ma poi il router come fa a capire a che ip deve reindirizzare i pacchetti?

Cerca su Google "Router Port Forwarding" e verifica come fare nel tuo router.

Guglielmo

okok grazie mille

Quanto alla parte di programmazione, se guardi la libreria che ti ho linkato c'è sia un esempio di webclient che di webserver, lascia perdere i comandi AT ;).