Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <ESP8266WiFi.h>
- #include <WiFiClientSecure.h> //KNIZNICA pre HTTPS spojenia
- #include "DHT.h"
- #define DHTPIN 2 //GPIO2 = D4
- #define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321
- DHT dht(DHTPIN, DHTTYPE);
- const char * ssid = "marvel"; //meno wifi siete
- const char * password = "zdenek23"; //Heslo na wifi siet
- const char * host = "tausha.php5.cz"; //bez https a www
- const int httpsPort = 443; //https port zabezpeceny prenos
- const char * fingerprint ="34 62 31 d2 6d 18 cf d0 4c 2c cc 7a f8 85 d0 6a f6 ae 5b 13"; //odtlacok HTTPS certifikatu v SHA1 formate
- const int rele = 0; //GPIO0 = D3
- void setup() {
- Serial.begin(115200); //rychlost seriovej linky
- pinMode(rele, OUTPUT);
- dht.begin();
- Serial.println();
- Serial.println("pripajam na ");
- Serial.println(ssid);
- WiFi.begin(ssid, password); //pripoj sa na wifi siet s heslom
- while (WiFi.status() != WL_CONNECTED) { //pokial sa nepripojime na wifi opakuj pripajanie a spustaj funkcie pre ovladanie v offline rezime
- delay(500);
- Serial.println(".");
- }
- Serial.println("");
- Serial.println("WiFi pripojene"); //uspesne pripojenie na wifi siet
- Serial.println("IP adresa: ");
- Serial.println(WiFi.localIP()); // pridelena IP adresa pre dosku
- }
- void odosli_data() {
- WiFiClientSecure client;
- if (client.verify(fingerprint, host)) {} else {}
- if (client.connect(host, httpsPort)) {
- String h = String(dht.readHumidity());
- // Read temperature as Celsius (the default)
- String t = String(dht.readTemperature());
- String url = "/zapisdata.php?teplota=" + t + "&vlhkost=" + h;
- client.print(String("GET ") + url + " HTTP/1.1\r\n" + "Host: " + host + "\r\n" + "User-Agent: NodeMCU\r\n" + "Connection: close\r\n\r\n");
- Serial.println("Odoslane data do db:");
- Serial.println(h);
- Serial.println(t);
- } else if (!client.connect(host, httpsPort)) {
- Serial.println("Neuspesne pripojenie pre odoslanie teplot do DB!");
- }
- }
- void stav_rele() {
- WiFiClientSecure client;
- if (client.verify(fingerprint, host)) {} else {}
- if (client.connect(host, httpsPort)) {
- String url = "/rele1.txt";
- client.print(String("GET ") + url + " HTTP/1.1\r\n" + "Host: " + host + "\r\n" + "User-Agent: NodeMCU\r\n" + "Connection: close\r\n\r\n");
- while (client.connected()) {
- String line = client.readStringUntil('\n');
- if (line == "\r") {
- break;
- }
- }
- String line = client.readStringUntil('\n');
- if (line == "ZAP") {
- digitalWrite(rele, LOW);
- Serial.println("Rele zapnute");
- } else if (line == "VYP") {
- digitalWrite(rele, HIGH);
- Serial.println("Rele vypnute");
- }
- } else if (!client.connect(host, httpsPort)) {
- Serial.println("Neuspesne pripojenie pre ovladanie rele!");
- }
- }
- void loop() {
- odosli_data();
- stav_rele();
- delay(10000);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement