diff --git a/src/app/SAB.cpp b/src/app/SAB.cpp index f4a5ebd..f74b3ad 100644 --- a/src/app/SAB.cpp +++ b/src/app/SAB.cpp @@ -10,15 +10,13 @@ _display(_boardConfig.getScreenWidth(),_boardConfig.getScreenHeight(), &Wire), _screenManager(_display, &_sdCardManager), _rtc(), _rtcManager(_rtc), -_connectivityManager(NULL), -//_webServerManager(80, &_sdCardManager), +_connectivityManager(_sdCardManager), _webServer(80, &_sdCardManager, 10), _ftpServer(21, &_sdCardManager, "ESP8266", "12345678", 10), _dbWSServer(81), _pcf(_boardConfig.getI2C_IOExpanderAddress(), Wire), _ioManager(_pcf), -_taskSchedulerManager(_rtcManager), -_error(0) +_taskSchedulerManager(_rtcManager) { initCommonConfig(); } @@ -29,15 +27,13 @@ _display(_boardConfig.getScreenWidth(), _boardConfig.getScreenHeight(), &Wire), _screenManager(_display, &_sdCardManager), _rtc(), _rtcManager(_rtc), -_connectivityManager(NULL), -//_webServerManager(webServerPort, &_sdCardManager), +_connectivityManager(_sdCardManager), _webServer(webServerPort, &_sdCardManager, 10), _ftpServer(ftpServerPort, &_sdCardManager, "ESP8266", "12345678", 10), _dbWSServer(81), _pcf(_boardConfig.getI2C_IOExpanderAddress(), Wire), _ioManager(_pcf), -_taskSchedulerManager(_rtcManager), -_error(0) +_taskSchedulerManager(_rtcManager) { initCommonConfig(); } @@ -58,13 +54,19 @@ void SAB::initCommonConfig() 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());} + if(!_sdCardManager.mountSD()) + { + _error |= SDCARD_INIT_ERR; + Serial.printf_P(PSTR("Failed to init SDCard :\n\tSpeed -> %u\n\tCS Pin -> %u\n"), + _boardConfig.getSPISpeed(), + _boardConfig.getSPI_SDCard_cs()); + } else { _sdCardManager.setTimeCallback(&(SAB::myTimeCallback)); } _screenManager.init(); - _connectivityManager = new ConnectivityManager(_sdCardManager); + if(!_connectivityManager.connect()){ _error |= CONNECT_ERR;} if(!_pcf.begin()){_error |= IO_INIT_ERR;} _powerUpTime = _rtcManager.getDateTime(); @@ -107,14 +109,9 @@ SDCardManager& SAB::getSdCardManager() ConnectivityManager& SAB::getConnectivityManager() { - return *_connectivityManager; + return _connectivityManager; } -/*WEBServerManager& SAB::getWebServerManager() -{ - return _webServerManager; -}*/ - WEBServer& SAB::getWebServer() { return _webServer; @@ -155,7 +152,7 @@ const char *SAB::getSoftVersion() const return SOFT_VERSION; } -unsigned char SAB::getError() const +uint8_t SAB::getError() const { return _error; } diff --git a/src/app/SAB.h b/src/app/SAB.h index 227a4c7..68b28d8 100644 --- a/src/app/SAB.h +++ b/src/app/SAB.h @@ -6,7 +6,6 @@ #include "ScreenManager.h" #include "SDCardManager.h" #include "ConnectivityManager.h" -//#include "WEBServerManager.h" #include "WEBClient.h" //includes WEBServer internally #include "FTPClient.h" //includes FTPServer internally #include "DashboardWSServer.h" @@ -21,13 +20,12 @@ class SAB { public: - enum Error {RTC_BEGIN_ERR = 1, DISP_BEGIN_ERR = 2, SDCARD_INIT_ERR = 4, IO_INIT_ERR = 8}; + enum Error {RTC_BEGIN_ERR = 1, DISP_BEGIN_ERR = 2, SDCARD_INIT_ERR = 4, IO_INIT_ERR = 8, CONNECT_ERR = 16}; SAB(); SAB(const BoardConfig boardConfig, const unsigned int webServerPort = 80, const unsigned int ftpServerPort = 21); ~SAB() { - delete _connectivityManager; } ScreenManager& getScreenManager(); @@ -45,7 +43,7 @@ class SAB void run(); const char *getSoftVersion() const; - unsigned char getError() const; + uint8_t getError() const; private: void initGPIO(); static time_t myTimeCallback(); @@ -58,7 +56,7 @@ class SAB RTC_DS3231 _rtc; RtcManager _rtcManager; static RtcManager *_rtcManagerP; - ConnectivityManager *_connectivityManager; + ConnectivityManager _connectivityManager; //WEBServerManager _webServerManager; WEBServer _webServer; FTPServer _ftpServer; @@ -68,7 +66,7 @@ class SAB TaskSchedulerManager _taskSchedulerManager; PowerManager _powerManager; DateTime _powerUpTime; - uint8_t _error; + uint8_t _error = NO_ERROR; }; #endif //SAB_H