From 0c622c600bb14d89f3ff5824492830ee3770e562 Mon Sep 17 00:00:00 2001 From: anschrammh Date: Tue, 15 Dec 2020 23:50:41 +0100 Subject: [PATCH] Grouped common class initialization directives in one private method and enabled new TCPKeepAlive setting for WEB and FTP servers --- src/app/SAB.cpp | 68 ++++++++++++++++++++----------------------------- src/app/SAB.h | 1 + 2 files changed, 28 insertions(+), 41 deletions(-) diff --git a/src/app/SAB.cpp b/src/app/SAB.cpp index f840e36..4510877 100644 --- a/src/app/SAB.cpp +++ b/src/app/SAB.cpp @@ -19,6 +19,30 @@ _pcf(_boardConfig.getI2C_IOExpanderAddress(), Wire), _ioManager(_pcf), _taskSchedulerManager(_rtcManager), _error(0) +{ + initCommonConfig(); +} + +SAB::SAB(const BoardConfig boardConfig, const unsigned int webServerPort, const unsigned int ftpServerPort) : _boardConfig(boardConfig), +_sdCardManager(_boardConfig.getSPI_SDCard_cs(), _boardConfig.getSPISpeed()), +_display(_boardConfig.getScreenWidth(), _boardConfig.getScreenHeight(), &Wire), +_screenManager(_display, &_sdCardManager), +_rtc(), +_rtcManager(_rtc), +_connectivityManager(NULL), +//_webServerManager(webServerPort, &_sdCardManager), +_webServer(webServerPort, &_sdCardManager, 10), +_ftpServer(ftpServerPort, &_sdCardManager, "ESP8266", "12345678"), +_dbWSServer(81), +_pcf(_boardConfig.getI2C_IOExpanderAddress(), Wire), +_ioManager(_pcf), +_taskSchedulerManager(_rtcManager), +_error(0) +{ + initCommonConfig(); +} + +void SAB::initCommonConfig() { //We set the gpio up initGPIO(); @@ -44,49 +68,11 @@ _error(0) if(!_pcf.begin()){_error |= IO_INIT_ERR;} _powerUpTime = _rtcManager.getDateTime(); - _dbWSServer.begin(); -} -SAB::SAB(const BoardConfig boardConfig, const unsigned int webServerPort, const unsigned int ftpServerPort) : _boardConfig(boardConfig), -_sdCardManager(_boardConfig.getSPI_SDCard_cs(), _boardConfig.getSPISpeed()), -_display(_boardConfig.getScreenWidth(), _boardConfig.getScreenHeight(), &Wire), -_screenManager(_display, &_sdCardManager), -_rtc(), -_rtcManager(_rtc), -_connectivityManager(NULL), -//_webServerManager(webServerPort, &_sdCardManager), -_webServer(webServerPort, &_sdCardManager, 10), -_ftpServer(ftpServerPort, &_sdCardManager, "ESP8266", "12345678"), -_dbWSServer(81), -_pcf(_boardConfig.getI2C_IOExpanderAddress(), Wire), -_ioManager(_pcf), -_taskSchedulerManager(_rtcManager), -_error(0) -{ - //We set the gpio up - initGPIO(); - Serial.begin(115200, SERIAL_8N1, SERIAL_TX_ONLY); - Serial.println(); - delay(200); - //We initialize the pins for the I2C communication - Wire.begin(_boardConfig.getI2C_sda(), _boardConfig.getI2C_scl()); - if(!_rtc.begin()) _error |= RTC_BEGIN_ERR; - else - { - SAB::_rtcManagerP = &_rtcManager; - } - if(!_display.begin(SSD1306_SWITCHCAPVCC, _boardConfig.getI2C_screenAddress())) _error |= DISP_BEGIN_ERR; - if(!_sdCardManager.mountSD()){ _error |= SDCARD_INIT_ERR; Serial.print("Failed to init SDCard : SPI_SPEED : "); Serial.print(8000000); Serial.print(" CS PIN : "); Serial.println(_boardConfig.getSPI_SDCard_cs());} - else - { - _sdCardManager.setTimeCallback(&(SAB::myTimeCallback)); - } - _screenManager.init(); - _connectivityManager = new ConnectivityManager(_sdCardManager); - if(!_pcf.begin()){_error |= IO_INIT_ERR;} - - _powerUpTime = _rtcManager.getDateTime(); + //We set the different servers : _dbWSServer.begin(); + _webServer.enableTcpKeepAlive(15,5,5); + _ftpServer.enableTcpKeepAlive(15,5,5); } void SAB::initGPIO() diff --git a/src/app/SAB.h b/src/app/SAB.h index 40100dc..f63a75d 100644 --- a/src/app/SAB.h +++ b/src/app/SAB.h @@ -49,6 +49,7 @@ class SAB private: void initGPIO(); static time_t myTimeCallback(); + void initCommonConfig(); const BoardConfig _boardConfig;