From 2c46a158802405bd501489eda19738d51598a84a Mon Sep 17 00:00:00 2001 From: dslak Date: Sat, 11 Mar 2023 13:45:56 +0100 Subject: [PATCH] add wifi transmission --- Arduino/Sensors/SendData.ino | 30 ++++++++++++++++++ Arduino/Sensors/Sensors.ino | 29 ++++++++++++++--- .../{ArduinoV2.ino => Transmission.ino} | 0 .../Arduino-SIM800L-driver-master.zip | Bin .../libraries}/BME280-master.zip | Bin 5 files changed, 54 insertions(+), 5 deletions(-) create mode 100644 Arduino/Sensors/SendData.ino rename Arduino/Transmission/{ArduinoV2.ino => Transmission.ino} (100%) rename {libraries => Arduino/libraries}/Arduino-SIM800L-driver-master.zip (100%) rename {libraries => Arduino/libraries}/BME280-master.zip (100%) diff --git a/Arduino/Sensors/SendData.ino b/Arduino/Sensors/SendData.ino new file mode 100644 index 0000000..3f05f16 --- /dev/null +++ b/Arduino/Sensors/SendData.ino @@ -0,0 +1,30 @@ + +void sendData() { + + if((WiFiMulti.run() == WL_CONNECTED)) { + + WiFiClient client; + HTTPClient http; + + char apiString[100] = ""; + sprintf_P(apiString, server, windDirection, windSpeed, temperature, humidity, pressure); + + Serial.print("[HTTP] begin...\n"); + if (http.begin(client, apiString)) { + Serial.print("[HTTP] GET...\n"); + int httpCode = http.GET(); + if (httpCode > 0) { + Serial.printf("[HTTP] GET... code: %d\n", httpCode); + if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) { + String payload = http.getString(); + Serial.println(payload); + } + } else { + Serial.printf("[HTTP] GET... failed, error: %s\n", http.errorToString(httpCode).c_str()); + } + http.end(); + } else { + Serial.printf("[HTTP} Unable to connect\n"); + } + } +} diff --git a/Arduino/Sensors/Sensors.ino b/Arduino/Sensors/Sensors.ino index 6918c22..6eaa9b1 100644 --- a/Arduino/Sensors/Sensors.ino +++ b/Arduino/Sensors/Sensors.ino @@ -1,19 +1,27 @@ -//#include -//#include + #include #include #include +#include +#include +#include +#include + #define ENABLE_PIN1 D5 // 8 // dir #define ENABLE_PIN2 D6 // 9 // speed #define SERIAL_RO D7 // 10 #define SERIAL_DI D8 // 11 +#define WIFIUSR "NETGEAR41" +#define WIFIPWD "magicalbanana0" + +ESP8266WiFiMulti WiFiMulti; BME280I2C bme; -//const int enable[] = {ENABLE_PIN1, ENABLE_PIN1}; const byte codes[] = {0x01 ,0x03 ,0x00 ,0x00 ,0x00 ,0x02 ,0xC4 ,0x0B}; - +const char server[] PROGMEM = "http://2.233.91.82/weather/api/station?data=%d|%d|%f|%f|%f"; + byte values[2][20]; SoftwareSerial sensor(SERIAL_RO, SERIAL_DI); @@ -42,6 +50,15 @@ void setup() { pinMode(ENABLE_PIN1, OUTPUT); pinMode(ENABLE_PIN2, OUTPUT); + // Initialize WiFi + for (uint8_t t = 4; t > 0; t--) { + Serial.printf("[SETUP] WAIT %d...\n", t); + Serial.flush(); + delay(1000); + } + + WiFi.mode(WIFI_STA); + WiFiMulti.addAP(WIFIUSR, WIFIPWD); } void loop() { @@ -59,5 +76,7 @@ void loop() { Serial.println(humidity); Serial.print("Pres: "); Serial.println(pressure); - delay(5000); + + sendData(); + delay(10000); } diff --git a/Arduino/Transmission/ArduinoV2.ino b/Arduino/Transmission/Transmission.ino similarity index 100% rename from Arduino/Transmission/ArduinoV2.ino rename to Arduino/Transmission/Transmission.ino diff --git a/libraries/Arduino-SIM800L-driver-master.zip b/Arduino/libraries/Arduino-SIM800L-driver-master.zip similarity index 100% rename from libraries/Arduino-SIM800L-driver-master.zip rename to Arduino/libraries/Arduino-SIM800L-driver-master.zip diff --git a/libraries/BME280-master.zip b/Arduino/libraries/BME280-master.zip similarity index 100% rename from libraries/BME280-master.zip rename to Arduino/libraries/BME280-master.zip