mirror of
https://github.com/anklimov/lighthub
synced 2025-12-06 19:59:50 +03:00
Add some WIFI respawning & relability improvements for ESPx
MEGA compilation error fixed
This commit is contained in:
@@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
extern PubSubClient mqttClient;
|
extern PubSubClient mqttClient;
|
||||||
|
|
||||||
int abstractIn::publish(int value, char* subtopic)
|
int abstractIn::publish(long value, char* subtopic)
|
||||||
{
|
{
|
||||||
char valstr[16];
|
char valstr[16];
|
||||||
printUlongValueToStr(valstr, value);
|
printUlongValueToStr(valstr, value);
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ public:
|
|||||||
|
|
||||||
protected:
|
protected:
|
||||||
Input * in;
|
Input * in;
|
||||||
int publish(int value, char* subtopic = NULL);
|
int publish(long value, char* subtopic = NULL);
|
||||||
int publish(float value, char* subtopic = NULL );
|
int publish(float value, char* subtopic = NULL );
|
||||||
int publish(char * value, char* subtopic = NULL);
|
int publish(char * value, char* subtopic = NULL);
|
||||||
friend Input;
|
friend Input;
|
||||||
|
|||||||
@@ -79,11 +79,21 @@ EthernetClient ethClient;
|
|||||||
|
|
||||||
#ifdef ARDUINO_ARCH_ESP8266
|
#ifdef ARDUINO_ARCH_ESP8266
|
||||||
WiFiClient ethClient;
|
WiFiClient ethClient;
|
||||||
|
|
||||||
|
#if not defined(WIFI_MANAGER_DISABLE)
|
||||||
|
WiFiManager wifiManager;
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef ARDUINO_ARCH_ESP32
|
#ifdef ARDUINO_ARCH_ESP32
|
||||||
WiFiClient ethClient;
|
WiFiClient ethClient;
|
||||||
NRFFlashStorage EEPROM;
|
NRFFlashStorage EEPROM;
|
||||||
|
|
||||||
|
#if not defined(WIFI_MANAGER_DISABLE)
|
||||||
|
WiFiManager wifiManager;
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef ARDUINO_ARCH_STM32
|
#ifdef ARDUINO_ARCH_STM32
|
||||||
@@ -314,6 +324,14 @@ lan_status lanLoop() {
|
|||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
|
#if defined(ARDUINO_ARCH_ESP8266) || defined(ARDUINO_ARCH_ESP32)
|
||||||
|
if (WiFi.status() != WL_CONNECTED)
|
||||||
|
{
|
||||||
|
wifiInitialized=false;
|
||||||
|
lanStatus = INITIAL_STATE;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined(ARDUINO_ARCH_AVR) || defined(__SAM3X8E__)
|
#if defined(ARDUINO_ARCH_AVR) || defined(__SAM3X8E__)
|
||||||
wdt_dis();
|
wdt_dis();
|
||||||
if (lanStatus > 0)
|
if (lanStatus > 0)
|
||||||
@@ -573,12 +591,13 @@ void ip_ready_config_loaded_connecting_to_broker() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void onInitialStateInitLAN() {
|
void onInitialStateInitLAN() {
|
||||||
#if defined(ARDUINO_ARCH_ESP8266) and defined(WIFI_MANAGER_DISABLE)
|
#if defined(ARDUINO_ARCH_ESP8266) || defined(ARDUINO_ARCH_ESP32)
|
||||||
|
#if defined(WIFI_MANAGER_DISABLE)
|
||||||
if(!wifiInitialized) {
|
if(!wifiInitialized) {
|
||||||
WiFi.mode(WIFI_STA);
|
WiFi.mode(WIFI_STA); // ESP 32 - WiFi.disconnect(); instead
|
||||||
debugSerial<<F("WIFI AP/Password:")<<QUOTE(ESP_WIFI_AP)<<F("/")<<QUOTE(ESP_WIFI_PWD)<<endl;
|
debugSerial<<F("WIFI AP/Password:")<<QUOTE(ESP_WIFI_AP)<<F("/")<<QUOTE(ESP_WIFI_PWD)<<endl;
|
||||||
|
|
||||||
wifi_set_macaddr(STATION_IF,mac);
|
wifi_set_macaddr(STATION_IF,mac); //ESP32 to check
|
||||||
|
|
||||||
WiFi.begin(QUOTE(ESP_WIFI_AP), QUOTE(ESP_WIFI_PWD));
|
WiFi.begin(QUOTE(ESP_WIFI_AP), QUOTE(ESP_WIFI_PWD));
|
||||||
int wifi_connection_wait = 10000;
|
int wifi_connection_wait = 10000;
|
||||||
@@ -590,8 +609,22 @@ void onInitialStateInitLAN() {
|
|||||||
}
|
}
|
||||||
wifiInitialized = true;
|
wifiInitialized = true;
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
// Wifi Manager
|
||||||
|
if (!wifiInitialized)
|
||||||
|
{
|
||||||
|
WiFi.disconnect();
|
||||||
|
|
||||||
|
#if defined(ESP_WIFI_AP) and defined(ESP_WIFI_PWD)
|
||||||
|
wifiInitialized = wifiManager.autoConnect(QUOTE(ESP_WIFI_AP), QUOTE(ESP_WIFI_PWD));
|
||||||
|
#else
|
||||||
|
wifiInitialized = wifiManager.autoConnect();
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
#if defined(ARDUINO_ARCH_ESP32) and defined(WIFI_MANAGER_DISABLE)
|
#if defined(ARDUINO_ARCH_ESP32) and defined(WIFI_MANAGER_DISABLE)
|
||||||
if(!wifiInitialized) {
|
if(!wifiInitialized) {
|
||||||
// WiFi.mode(WIFI_STA);
|
// WiFi.mode(WIFI_STA);
|
||||||
@@ -608,6 +641,7 @@ void onInitialStateInitLAN() {
|
|||||||
wifiInitialized = true;
|
wifiInitialized = true;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
*/
|
||||||
|
|
||||||
#if defined(ARDUINO_ARCH_ESP32) || defined(ARDUINO_ARCH_ESP8266)
|
#if defined(ARDUINO_ARCH_ESP32) || defined(ARDUINO_ARCH_ESP8266)
|
||||||
if (WiFi.status() == WL_CONNECTED) {
|
if (WiFi.status() == WL_CONNECTED) {
|
||||||
@@ -616,7 +650,7 @@ void onInitialStateInitLAN() {
|
|||||||
} else
|
} else
|
||||||
{
|
{
|
||||||
debugSerial<<F("Problem with WiFi!");
|
debugSerial<<F("Problem with WiFi!");
|
||||||
nextLanCheckTime = millis() + DHCP_RETRY_INTERVAL/5;
|
nextLanCheckTime = millis() + DHCP_RETRY_INTERVAL;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -1315,12 +1349,15 @@ void setup_main() {
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if (defined(ARDUINO_ARCH_ESP8266) or defined(ARDUINO_ARCH_ESP32)) and not defined(WIFI_MANAGER_DISABLE)
|
#if (defined(ARDUINO_ARCH_ESP8266) or defined(ARDUINO_ARCH_ESP32)) and not defined(WIFI_MANAGER_DISABLE)
|
||||||
WiFiManager wifiManager;
|
// WiFiManager wifiManager;
|
||||||
|
wifiManager.setTimeout(180);
|
||||||
|
|
||||||
#if defined(ESP_WIFI_AP) and defined(ESP_WIFI_PWD)
|
#if defined(ESP_WIFI_AP) and defined(ESP_WIFI_PWD)
|
||||||
wifiManager.autoConnect(QUOTE(ESP_WIFI_AP), QUOTE(ESP_WIFI_PWD));
|
wifiInitialized = wifiManager.autoConnect(QUOTE(ESP_WIFI_AP), QUOTE(ESP_WIFI_PWD));
|
||||||
#else
|
#else
|
||||||
wifiManager.autoConnect();
|
wifiInitialized = wifiManager.autoConnect();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
delay(LAN_INIT_DELAY);//for LAN-shield initializing
|
delay(LAN_INIT_DELAY);//for LAN-shield initializing
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
CCS811 ccs811(CCS811_ADDR);
|
CCS811 ccs811(CCS811_ADDR);
|
||||||
ClosedCube_HDC1080 hdc1080;
|
ClosedCube_HDC1080 hdc1080;
|
||||||
uint16_t ccs811Baseline;
|
long ccs811Baseline;
|
||||||
|
|
||||||
int in_ccs811::Setup(int addr)
|
int in_ccs811::Setup(int addr)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user