From c47c37a891ecf6ba3a34cc15e49a3ff8ee95fda7 Mon Sep 17 00:00:00 2001 From: David Date: Thu, 7 Oct 2021 17:48:59 +0000 Subject: [PATCH] Checkpoint commit with fauxmoESP in the firmware folder, rather than the library version. This is to test with a possibly newer library version. --- Firmware/SmartSwitch.vcxproj | 2 +- Firmware/fauxmoESP.cpp | 25 +++++++++++++++---------- Firmware/fauxmoESP.h | 2 +- 3 files changed, 17 insertions(+), 12 deletions(-) diff --git a/Firmware/SmartSwitch.vcxproj b/Firmware/SmartSwitch.vcxproj index acca64a..e730035 100644 --- a/Firmware/SmartSwitch.vcxproj +++ b/Firmware/SmartSwitch.vcxproj @@ -50,7 +50,7 @@ Level4 Disabled true - $(ProjectDir)..\Firmware;$(ARDUINO_ESP8266_SDK)\libraries\esp8266\src;$(ARDUINO_ESP8266_SDK)\libraries\Wire;$(ARDUINO_ESP8266_SDK)\libraries\ESP8266WiFi\src;$(ARDUINO_ESP8266_SDK)\libraries\ESP8266WebServer\src;$(ARDUINO_ESP8266_SDK)\libraries\ESP8266httpUpdate\src;$(ARDUINO_ESP8266_SDK)\libraries\ESP8266HTTPClient\src;$(ARDUINO_ESP8266_SDK)\libraries\EEPROM;$(ARDUINO_ESP8266_SDK)\libraries;$(ARDUINO_ESP8266_SDK)\cores\esp8266;$(ARDUINO_ESP8266_SDK)\cores\esp8266\libb64;$(ARDUINO_ESP8266_SDK)\cores\esp8266\spiffs;$(ARDUINO_ESP8266_SDK)\cores\esp8266\umm_malloc;$(ARDUINO_ESP8266_SDK)\variants\espino;$(ARDUINO_ESP8266_SDK)\tools\sdk\include;$(ARDUINO_ESP8266_SDK)\tools\sdk\lwip2\include;$(ARDUINO_ESP8266_SDK)\tools\sdk\libc\xtensa-lx106-elf\include;$(ProjectDir)..\..\..\Users\David\Documents\Arduino\libraries;$(ProjectDir)..\..\..\Users\David\Documents\Arduino\libraries\ESPAsyncTCP-master\src;$(ProjectDir)..\..\..\Users\David\AppData\Local\arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2\xtensa-lx106-elf\include\c++\4.8.2;$(ProjectDir)..\..\..\Users\David\AppData\Local\arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2\xtensa-lx106-elf\include\c++\4.8.2\xtensa-lx106-elf;$(ProjectDir)..\..\..\Users\David\AppData\Local\arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2\xtensa-lx106-elf\include;$(ProjectDir)..\..\..\Users\David\AppData\Local\arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2\lib\gcc\xtensa-lx106-elf\4.8.2\include;$(ProjectDir)..\..\..\program files (x86)\microsoft visual studio\2019\preview\common7\ide\extensions\mbsqucm2.qs1\Micro Platforms\visualmicro\ide\libraries;%(AdditionalIncludeDirectories) + $(ProjectDir)..\Firmware;$(ARDUINO_ESP8266_SDK)\libraries\esp8266\src;$(ARDUINO_ESP8266_SDK)\libraries\Wire;$(ARDUINO_ESP8266_SDK)\libraries\ESP8266WiFi\src;$(ARDUINO_ESP8266_SDK)\libraries\ESP8266WebServer\src;$(ARDUINO_ESP8266_SDK)\libraries\ESP8266httpUpdate\src;$(ARDUINO_ESP8266_SDK)\libraries\ESP8266HTTPClient\src;$(ARDUINO_ESP8266_SDK)\libraries\EEPROM;$(ARDUINO_ESP8266_SDK)\libraries;$(ARDUINO_ESP8266_SDK)\cores\esp8266;$(ARDUINO_ESP8266_SDK)\cores\esp8266\libb64;$(ARDUINO_ESP8266_SDK)\cores\esp8266\spiffs;$(ARDUINO_ESP8266_SDK)\cores\esp8266\umm_malloc;$(ARDUINO_ESP8266_SDK)\variants\espino;$(ARDUINO_ESP8266_SDK)\tools\sdk\include;$(ARDUINO_ESP8266_SDK)\tools\sdk\lwip2\include;$(ARDUINO_ESP8266_SDK)\tools\sdk\libc\xtensa-lx106-elf\include;c:\Program Files (x86)\Arduino\libraries\ESPAsyncTCP-master\src;$(ProjectDir)..\..\..\Users\David\Documents\Arduino\libraries;$(ProjectDir)..\..\..\Users\David\Documents\Arduino\libraries\ESPAsyncTCP-master\src;$(ProjectDir)..\..\..\Users\David\AppData\Local\arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2\xtensa-lx106-elf\include\c++\4.8.2;$(ProjectDir)..\..\..\Users\David\AppData\Local\arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2\xtensa-lx106-elf\include\c++\4.8.2\xtensa-lx106-elf;$(ProjectDir)..\..\..\Users\David\AppData\Local\arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2\xtensa-lx106-elf\include;$(ProjectDir)..\..\..\Users\David\AppData\Local\arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2\lib\gcc\xtensa-lx106-elf\4.8.2\include;$(ProjectDir)..\..\..\program files (x86)\microsoft visual studio\2019\preview\common7\ide\extensions\mbsqucm2.qs1\Micro Platforms\visualmicro\ide\libraries;%(AdditionalIncludeDirectories) $(ProjectDir)__vm\.Firmware.vsarduino.h;%(ForcedIncludeFiles) false WIN32;__ESP8266_ESp8266__;__ESP8266_ESP8266__;DEBUG_FAUXMO=Serial;__ets__;ICACHE_FLASH;F_CPU=80000000L;LWIP_OPEN_SRC;TCP_MSS=536;ARDUINO=10807;ARDUINO_ESP8266_ESP12;ARDUINO_ARCH_ESP8266;ESP8266;__cplusplus=201103L;_VMICRO_INTELLISENSE;%(PreprocessorDefinitions) diff --git a/Firmware/fauxmoESP.cpp b/Firmware/fauxmoESP.cpp index a03820b..e150698 100644 --- a/Firmware/fauxmoESP.cpp +++ b/Firmware/fauxmoESP.cpp @@ -93,8 +93,10 @@ void fauxmoESP::_nextUDPResponse() { void fauxmoESP::_onUDPData(IPAddress remoteIP, unsigned int remotePort, void *data, size_t len) { - if (!_enabled) return; - + if (!_enabled) { + DEBUG_MSG_FAUXMO("onUDPData\n"); + return; + } char * p = (char *) data; p[len] = 0; @@ -258,7 +260,10 @@ void fauxmoESP::_handleIcon(AsyncClient *client, unsigned int device_id, void *d void fauxmoESP::_onTCPData(AsyncClient *client, unsigned int device_id, void *data, size_t len) { - if (!_enabled) return; + if (!_enabled) { + DEBUG_MSG_FAUXMO("onTCPData ! _enabled\n"); + return; + } #ifdef DEBUG_FAUXMO char * p = (char *) data; @@ -387,12 +392,12 @@ unsigned char fauxmoESP::addDevice(const char * device_name) { // Create UUID char uuid[15]; - snprintf_P(uuid, sizeof(uuid), PSTR("444556%06X%02X\0"), chip_id, device_id); // "DEV" + CHIPID + DEV_ID + snprintf_P(uuid, sizeof(uuid), PSTR("444776%06X%02X\0"), chip_id, device_id); // "DEV" + CHIPID + DEV_ID new_device.uuid = strdup(uuid); // Create Serialnumber char serial[15]; - sprintf(serial, "221703K0%06X", (uint32)chip_id); // "221703K0" + CHIPID + sprintf(serial, "221793K0%06X", (uint32)chip_id); // "221703K0" + CHIPID new_device.serial = strdup(serial); // TCP Server @@ -439,6 +444,7 @@ void fauxmoESP::handle() { int len = _udp.parsePacket(); if (len > 0) { + DEBUG_MSG_FAUXMO("[FAUXMO] handle %d bytes\n", len); IPAddress remoteIP = _udp.remoteIP(); unsigned int remotePort = _udp.remotePort(); uint8_t data[len]; @@ -464,16 +470,15 @@ void fauxmoESP::enable(bool enable) { } fauxmoESP::fauxmoESP(unsigned int port) { - _base_port = port; #ifdef ESP8266 - // Start UDP server on STA connection - _handler = WiFi.onStationModeGotIP([this](WiFiEventStationModeGotIP ipInfo) { - (void) ipInfo; + // Start UDP server on STA connection + _handler = WiFi.onStationModeGotIP([this](WiFiEventStationModeGotIP ipInfo) { + (void) ipInfo; _udp.beginMulticast(WiFi.localIP(), UDP_MULTICAST_IP, UDP_MULTICAST_PORT); DEBUG_MSG_FAUXMO("[FAUXMO] UDP server started\n"); - }); + }); #endif } diff --git a/Firmware/fauxmoESP.h b/Firmware/fauxmoESP.h index 3d03ae9..0518dfe 100644 --- a/Firmware/fauxmoESP.h +++ b/Firmware/fauxmoESP.h @@ -45,7 +45,7 @@ THE SOFTWARE. #define UDP_RESPONSES_TRIES 5 // Here, or in the compiler configuration -//#define DEBUG_FAUXMO Serial +#define DEBUG_FAUXMO Serial #ifdef DEBUG_FAUXMO #define DEBUG_MSG_FAUXMO(...) DEBUG_FAUXMO.printf( __VA_ARGS__ ) #else