#include #include #include #include #include #include #include #include #include #include #include #include "version.h" // UNCOMMENT one of the constructor lines below U8X8_SSD1306_128X64_NONAME_SW_I2C *u8x8 = NULL; // initialize later after reading config file //U8X8_SSD1306_128X64_NONAME_SW_I2C u8x8(/* clock=*/ OLED_SCL, /* data=*/ OLED_SDA, /* reset=*/ OLED_RST); // Unbuffered, basic graphics, software I2C //U8G2_SSD1306_128X64_NONAME_1_SW_I2C Display(U8G2_R0, /* clock=*/ OLED_SCL, /* data=*/ OLED_SDA, /* reset=*/ OLED_RST); // Page buffer, SW I2C //U8G2_SSD1306_128X64_NONAME_F_SW_I2C Display(U8G2_R0, /* clock=*/ OLED_SCL, /* data=*/ OLED_SDA, /* reset=*/ OLED_RST); // Full framebuffer, SW I2C int LORA_LED = 9; // default POUT for LORA LED used as serial monitor int e; AsyncWebServer server(80); #define LOCALUDPPORT 9002 boolean connected = false; WiFiUDP udp; // Set LED GPIO int ledPin = 1; // Stores LED state String ledState; // Replaces placeholder with LED state value String processor(const String& var) { Serial.println(var); if (var == "STATE") { if (digitalRead(ledPin)) { ledState = "ON"; } else { ledState = "OFF"; } Serial.print(ledState); return ledState; } if(var == "VERSION_NAME") { return String(version_name); } if(var == "VERSION_ID") { return String(version_id); } return String(); } const String sondeTypeSelect(int activeType) { String sts = ""; for (int i = 0; i < 3; i++) { sts += "