Hola Maria43,
Code:
set c r GET$/set_sensors.php?data=
el hecho de que veas esta linea de este modo es señal de que por problemas de RAM, arduino Uno no puede componer el String de sensores.
Debido a que arduino uno es una plataforma limitada en RAM (2K) te aconsejamos que vayas componiendo el código poco a poco, primero con menos nodos, y también puedes probar con maneras mas óptimas de componer strings si quieres hacer códigos complejos.
El uso de tipo de dato String es cómodo pero menos optimo que usar un array de datos tipo "char", en los que puedes definir exactamente la memoria a usar del siguiente modo como ejemplo:
Code:
char wifiString[200];
char airTemperature0_wf[10];
char airHumidity0_wf[10];
char soilTemperature0_wf[10];
void setup() {
Serial.begin(9600);
}
void loop() {
//Get Gateway Sensors
int soilMoisture0 = 80;
float airTemperature0 = 27.66;
float airHumidity0 = 6.43;
float soilTemperature0 = 24.13;
int luminosity0 = 75;
dtostrf(airTemperature0,2,2,airTemperature0_wf);
dtostrf(airHumidity0,2,2,airHumidity0_wf);
dtostrf(soilTemperature0,2,2,soilTemperature0_wf);
memset( wifiString, 0x00, sizeof(wifiString) );
snprintf( wifiString, sizeof(wifiString), "0:0:%d;0:1:%s;0:2:%s;0:3:%s;0:4:%d", soilMoisture0 , soilTemperature0_wf, airHumidity0_wf, airTemperature0_wf, luminosity0 );
Serial.print(F("set c r GET$/set_sensors.php?data="));
Serial.print(wifiString);
Serial.print(F("\r"));
Serial.println("");
delay(5000);
}
Un saludo