mirror of
https://github.com/HASwitchPlate/openHASP.git
synced 2025-07-24 11:46:34 +00:00
Bug fixes for initial setup
This commit is contained in:
parent
f97060e198
commit
b81345a77e
28
src/hasp.cpp
28
src/hasp.cpp
@ -104,7 +104,7 @@ uint16_t current_page = 0;
|
||||
/**********************
|
||||
* GLOBAL FUNCTIONS
|
||||
**********************/
|
||||
void haspLoadPage();
|
||||
void haspLoadPage(String pages);
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
/**
|
||||
@ -658,6 +658,7 @@ void haspReconnect()
|
||||
void haspSetup(JsonObject settings)
|
||||
{
|
||||
char buffer[64];
|
||||
haspPagesPath = F("/pages.jsonl");
|
||||
|
||||
haspSetConfig(settings);
|
||||
|
||||
@ -766,7 +767,7 @@ void haspSetup(JsonObject settings)
|
||||
lv_obj_set_pos(obj, lv_disp_get_hor_res(NULL) / 2 - 40, lv_disp_get_ver_res(NULL) / 2 - 40 - 20);
|
||||
*/
|
||||
haspDisconnect();
|
||||
haspLoadPage();
|
||||
haspLoadPage(haspPagesPath);
|
||||
haspSetPage(haspStartPage);
|
||||
|
||||
// // lv_page_set_style(page, LV_PAGE_STYLE_SB, &style_sb); /*Set the scrollbar style*/
|
||||
@ -1293,15 +1294,26 @@ void haspNewObject(const JsonObject & config)
|
||||
}
|
||||
}
|
||||
|
||||
void haspLoadPage()
|
||||
void haspLoadPage(String pages)
|
||||
{
|
||||
char msg[92];
|
||||
|
||||
if(!SPIFFS.begin()) {
|
||||
errorPrintln(F("HASP: %sFS not mounted. Failed to load /pages.jsonl"));
|
||||
sprintf_P(msg, PSTR("HASP: \%sFS not mounted. Failed to load %s"), pages.c_str());
|
||||
errorPrintln(msg);
|
||||
return;
|
||||
}
|
||||
|
||||
debugPrintln(F("HASP: Loading /pages.jsonl"));
|
||||
File file = SPIFFS.open(haspPagesPath, "r");
|
||||
if(!SPIFFS.exists(pages)) {
|
||||
sprintf_P(msg, PSTR("HASP: \%sFile '%s' does not exist"), pages.c_str());
|
||||
errorPrintln(msg);
|
||||
return;
|
||||
}
|
||||
|
||||
sprintf_P(msg, PSTR("HASP: Loading file %s"), pages.c_str());
|
||||
debugPrintln(msg);
|
||||
|
||||
File file = SPIFFS.open(pages, "r");
|
||||
// ReadBufferingStream bufferingStream(file, 256);
|
||||
DynamicJsonDocument config(256);
|
||||
|
||||
@ -1311,7 +1323,9 @@ void haspLoadPage()
|
||||
haspNewObject(config.as<JsonObject>());
|
||||
}
|
||||
|
||||
debugPrintln(F("HASP: /pages.jsonl loaded"));
|
||||
sprintf_P(msg, PSTR("HASP: File %s loaded"), pages.c_str());
|
||||
debugPrintln(msg);
|
||||
|
||||
file.close();
|
||||
}
|
||||
|
||||
|
@ -41,6 +41,20 @@ DNSServer dnsServer;
|
||||
// bool wifiWasConnected = false;
|
||||
// int8_t wifiReconnectAttempt = -20;
|
||||
|
||||
String wifiGetMacAddress(int start, const char * seperator)
|
||||
{
|
||||
byte mac[6];
|
||||
WiFi.macAddress(mac);
|
||||
String cMac = "";
|
||||
for(int i = start; i < 6; ++i) {
|
||||
if(mac[i] < 0x10) cMac += "0";
|
||||
cMac += String(mac[i], HEX);
|
||||
if(i < 5) cMac += seperator;
|
||||
}
|
||||
cMac.toUpperCase();
|
||||
return cMac;
|
||||
}
|
||||
|
||||
void wifiConnected(IPAddress ipaddress)
|
||||
{
|
||||
char buffer[64];
|
||||
@ -115,15 +129,18 @@ void wifiSetup(JsonObject settings)
|
||||
wifiSetConfig(settings);
|
||||
|
||||
if(wifiSsid == "") {
|
||||
String apSsdid = F("HASP-");
|
||||
apSsdid += wifiGetMacAddress(3, "");
|
||||
|
||||
WiFi.mode(WIFI_AP);
|
||||
WiFi.softAP("HASP-test", "haspadmin");
|
||||
WiFi.softAP(apSsdid.c_str(), "haspadmin");
|
||||
IPAddress IP = WiFi.softAPIP();
|
||||
|
||||
/* Setup the DNS server redirecting all the domains to the apIP */
|
||||
dnsServer.setErrorReplyCode(DNSReplyCode::NoError);
|
||||
dnsServer.start(DNS_PORT, "*", IP);
|
||||
|
||||
sprintf_P(buffer, PSTR("WIFI: Setting up temporary Access Point"));
|
||||
sprintf_P(buffer, PSTR("WIFI: Setting up temporary Access Point: %s"), apSsdid.c_str());
|
||||
debugPrintln(buffer);
|
||||
sprintf_P(buffer, PSTR("WIFI: AP IP address : %s"), IP.toString().c_str());
|
||||
debugPrintln(buffer);
|
||||
|
@ -10,4 +10,6 @@ void wifiStop();
|
||||
bool wifiGetConfig(const JsonObject & settings);
|
||||
bool wifiSetConfig(const JsonObject & settings);
|
||||
|
||||
String wifiGetMacAddress(int start, const char * seperator);
|
||||
|
||||
#endif
|
Loading…
x
Reference in New Issue
Block a user