Ethernet shield - enviar dados para pagina web

Boa tarde,

Desenvolvi um programa para enviar dados do arduino para um página php recorrendo ao ethernet shield. A pagina php será responsável por imprimir na tela o valor enviado pelo o arduino, mas não esta a funcionar.

O código é este:

#include <SPI.h>
#include <Ethernet.h>

//configurações do ethernet shield
byte mac[] = {  0x90, 0xA2, 0xDA, 0x0E, 0xAA, 0xBB };               //endereço Mac do ethernet shield
IPAddress server(192,168,1,74);                                        //endereço do servidor Xampp (local) para onde o arduino envia os dados 

//declaração de variaveis
int d1;

//inicializar a biblioteca Ethernet client
EthernetClient client;

void setup() {

Serial.begin(9600);

while (!Serial) {                                                
  
 ; // esperar que a porta serie se conecte

}

//iniciar a conexão Ethernet:
if (Ethernet.begin(mac) == 0) {
   Serial.println("Failed to configure Ethernet using DHCP");
    
    //não fazer nada se a condição for verdadeira
    for(;;)
      ;
  }
  
//esperar 1 segundo para o ethernet shield inicializar
delay(1000);
Serial.println("connecting...");

//Se tiver uma conexão, informar via serial
if (client.connect(server, 80)) {
   Serial.println("conexao estabelecida");
   
   //fazer uma solicitação HTTP
   client.println("GET /http://192.168.1.74/AplicacaoWeb/enviarDados.php?id1= ");
   client.print(1);
   client.println(" HTTP/1.1");
   } 
   else {
    //se não obter uma conexão com o servidor
    Serial.println("conexao falhada");
    }

}

void loop()
{
  
}

saida:

connecting...
conexao estabelecida

página php (enviarDados.php):

<?php //obter dados do arduino $i1 = $_GET["id1"]; echo $i1; ?>

Supostamente quando a ligação é estabelecida na barra de esndereços deveria aparecer o seguinte:
http://192.168.1.74/AplicacaoWeb/enviarDados.php?id1=1

O que poderá estar errado?

Tenta assim : client.println(" HTTP/1.1\r\n");
Edson

o erro persiste...

Pequenos detalhes:

client.println("GET http://192.168.1.74/AplicacaoWeb/enviarDados.php?id1= "); ou client.println("GET /AplicacaoWeb/enviarDados.php?id1= ");

Edson

também já tinha tentado...

Não manjo muito e estou tentando aprender sobre a plataforma arduino.
Mas entendo de PHP.

E pelo que vi ali, vc está mandando via GET "id1= ".

Está mandando um espaço em branco pra variável id1.

E ele deve estar imprimindo alguma coisa em branco no seu browser por isso da a impressão que não mandou nada.

Experimenta colocar no final da url id1=ALGUMA_COISA

Não fez muito sentido não ter funcionado, tenta esse.

client.println("GET http://192.168.1.74/AplicacaoWeb/enviarDados.php?id1=teste HTTP/1.1 r\n\r\n\r\n ");

e tenta direto do browser http://192.168.1.74/AplicacaoWeb/enviarDados.php?id1=teste

Edson

se eu fizer directamente no browser funciona. A variavel id1 é imprimada no browser.

o problema é que o arduino não consegue por na barra de endereços o pedido de request
(http://192.168.1.74/AplicacaoWeb/enviarDados.php?id1=teste) automaticamente quando eu executo o código e atualizo a pagina http://192.168.1.74/AplicacaoWeb/enviarDados.php no browser , apesar de o arduino conectar com sucesso o servidor http://192.168.1.74/ para onde o pedido é feito

Pelo o que eu li este é um problema que muitos utilizadores teem tido.

No meu caso não tive problemas, mas redes as vezes tem comportamento estranhos.
Me desculpe mas estou sem ideias no momento para tentar ajuda-lo.
Edson