//USBtinyISP upload using programmer //ArduinoUno #include #include DHT dht(0, DHT11); bool DEBUG = true; //show more logs int responseTime = 10; //communication timeout unsigned long next; unsigned long timeout; char host[] = "some.host.com"; int lightPin = A0; int lightValue = 0; const char ssid[] = "SSID"; const char pass[] = "PASS"; char macstr[20]; byte mac[6]; void setup() { Serial.begin(9600); next = millis() + 15000; timeout = millis() + 5000; WiFi.macAddress(mac); snprintf(macstr, 18, "%02x:%02x:%02x:%02x:%02x:%02x", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); WiFi.mode(WIFI_STA); WiFi.begin(ssid,pass); WiFi.setAutoReconnect(true); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.print("Connected, IP address: "); Serial.println(WiFi.localIP()); Serial.println("You're connected to the network"); Serial.println("Booted"); ESP.wdtDisable(); ESP.wdtEnable(60000); } void loop() { if (((signed long)(millis() - next)) > 0) { if ((WiFi.status() != WL_CONNECTED)) { WiFi.reconnect(); int counter=0; while (WiFi.status() != WL_CONNECTED) { delay(200); counter++; if (counter>9) { ESP.restart(); } } } WiFiClient client; next = millis() + 15000; timeout = millis() + 15000; if (client.connect(host,8086)) { lightValue = analogRead(lightPin); String PostData = "light,sensor=\"" + String(macstr) + "\" value=" + String(lightValue) + "\ntemp,sensor=\"" + String(macstr) + "\" value=" + String(dht.readTemperature(true)) + "\nhumidity,sensor=\"" + String(macstr) + "\" value=" + String(dht.readHumidity()); client.println("POST /write?db=sensors HTTP/1.1"); client.print("HOST: "); client.println(host); client.println("User-Agent: Arduino/1.0"); client.println("Connection: close"); client.println("Content-Type: application/x-www-form-urlencoded;"); client.print("Content-Length: "); client.println(PostData.length()); client.println(); client.println(PostData); client.flush(); client.stop(); PostData = ""; client.flush(); client.stop(); } } }