#include #include "cactus_io_BME280_I2C.h" #include #include // Create BME280 object //BME280_I2C bme; // I2C using address 0x77 BME280_I2C bme(0x76); // I2C using address 0x76 LiquidCrystal_I2C lcd(0x27,2,1,0,4,5,6,7); // 0x27 is the default I2C float temp; float hu; float pres; String data; String data2; void setup() { //Begin serial comunication with Arduino and Arduino IDE (Serial Monitor) Serial3.flush(); delay(1000); Serial.flush(); delay(1000); Serial3.begin(9600); Serial.begin(9600); Serial.println("Bosch BME280 Pressure - Humidity - Temp Sensor | cactus.io"); if (!bme.begin()) { Serial.println("Could not find a valid BME280 sensor, check wiring!"); while (1); } bme.setTempCal(-1);// Temp was reading high so subtract 1 degree Serial.println("Pressure\tHumdity\t\tTemp\ttTemp"); lcd.begin (20,4); // 20x4 LCD module lcd.setBacklightPin(3,POSITIVE); // BL, BL_POL lcd.setBacklight(HIGH); delay(100); } void loop() { bme.readSensor(); lcd.clear(); lcd.setCursor(0,0); lcd.print("Pres(hPa)="); lcd.print(bme.getPressure_MB()); lcd.setCursor(0,1); lcd.print("Hu(%)="); lcd.print(bme.getHumidity()); lcd.setCursor(0,2); lcd.print("Temp(C)="); lcd.print(bme.getTemperature_C()); Serial.print(bme.getPressure_MB()); Serial.print(" mb\t"); // Pressure in millibars Serial.print(bme.getHumidity()); Serial.print(" %\t\t"); Serial.print(bme.getTemperature_C()); Serial.print(" *C\t"); Serial.print(bme.getTemperature_F()); Serial.println(" *F"); pres=bme.getPressure_MB(); hu=bme.getHumidity(); temp=bme.getTemperature_C(); data2=String(temp)+"_"+String(hu)+"_"+String(pres); data="AT"; Serial.println(data); Serial3.println(data); delay(2000); do { Serial.write(Serial3.read()); //delay (100); } while (Serial3.available()); data="AT+COPS?"; Serial.println(data); Serial3.println(data); delay(2000); do { Serial.write(Serial3.read()); //delay (100); } while (Serial3.available()); data="AT+SAPBR=0,1"; Serial.println(data); Serial3.println(data); delay(2000); do { Serial.write(Serial3.read()); //delay (100); } while (Serial3.available()); data="AT+SAPBR=1,1"; Serial.println(data); Serial3.println(data); delay(2000); do { Serial.write(Serial3.read()); //delay (100); } while (Serial3.available()); data="AT+SAPBR=2,1"; Serial.println(data); Serial3.println(data); delay(2000); do { Serial.write(Serial3.read()); //delay (100); } while (Serial3.available()); data="AT+SAPBR=3,1,\"APN\",\"WWW\""; Serial.println(data); Serial3.println(data); delay(2000); do { Serial.write(Serial3.read()); //delay (100); } while (Serial3.available()); delay(2000); // data="AT+HHTPINIT"; Serial.println("AT+HTTPINIT"); Serial3.write("AT+HTTPINIT\r\n"); delay(2000); do { Serial.write(Serial3.read()); //delay (100); } while (Serial3.available()); delay(2000); //data="AT+HTTPPARA=\"CID\""; //data=data+",1"; // data="AT"; Serial.println(data); Serial3.write("AT+HTTPPARA=\"CID\",1\r\n"); delay(2000); do { Serial.write(Serial3.read()); //delay (100); } while (Serial3.available()); data="AT+HTTPPARA=\"URL\",\"http://agustin.dyndns-wiki.com/posted_2.php?valor="; data=data+data2+"\""; Serial.println(data); Serial3.println(data); delay(2000); do { Serial.write(Serial3.read()); //delay (100); } while (Serial3.available()); delay(1000); data="AT+HTTPACTION=1"; Serial.println(data); Serial3.println(data); delay(2000); do { Serial.write(Serial3.read()); //delay (100); } while (Serial3.available()); delay(6500); for ( int i=0; i<270 ; i++ ){delay(1000);} }