Me estoy frustrando y sigo golpeando una pared. Mi configuración básica es que tengo un servidor Apache ejecutándose en mi Raspberry Pi y estoy buscando enviar datos de sensores a través de la red inalámbrica a los que ambos están conectados para publicar datos en vivo en el servidor. He probado la configuración del servidor y puedo transmitir datos aleatorios desde un servidor WAMP que también está en la red. Así que creo que el lado del servidor está bien. Lado del microcontrolador Tengo un Sparkfun Thing, se conecta a la red y obtiene una dirección IP a la que puedo hacer ping. Pero parece que no logro enviar los datos correctamente. ¿Alguien me puede dar algún consejo sobre mi código?
#include <ESP8266WiFi.h>
//Raspberry Pi Login Credentials.
const char WiFiSSID[] = "Alamo";
const char WiFiPSK[] = "12345678";
//Pin Definitions
const int LED_PIN = 5;
const int ANALOG_PIN = A0;
//Variables
const char host[] = "192.168.44.1";
void setup()
{
pinMode(LED_PIN, OUTPUT);
pinMode(ANALOG_PIN, INPUT);
byte ledStatus = LOW;
WiFi.mode(WIFI_STA);
WiFi.begin(WiFiSSID, WiFiPSK);
while (WiFi.status() != WL_CONNECTED)
{
// Blink the LED
digitalWrite(LED_PIN, ledStatus); // Write LED high/low
ledStatus = (ledStatus == HIGH) ? LOW : HIGH;
delay(100);
}
}
void loop()
{
//for testing purposes set temp to a default value.
//int temp = analogRead(ANALOG_PIN);
int temp = 43;
WiFiClient client;
const int httpPort = 80;
if (!client.connect(host, httpPort)) {
digitalWrite(LED_PIN, HIGH);
Serial.println("connection failed");
return;
}
String data = "temp1=" + (String)temp;
String url = "GET /data.php?" + data + " HTTP/1.1";
client.println(url);
client.println("Host: 192.168.44.1");
client.println("Connection: close");
client.println();
client.flush();
delay(500);
//End of Send.
digitalWrite(LED_PIN, HIGH);
delay(100);
while(client.available()){
String line = client.readStringUntil('\r');
Serial.print(line);
}
client.stop(); //Stopping client
//Deep sleep not necessary for testing
//ESP.deepSleep(60U*60*1000000); //U for unsigned
delay(100); //for above sleep
}
enter code here
Gracias, Pete