Merge branch '0.1.0-dev' of https://github.com/arovak/hasp-lvgl into 0.1.0-dev

This commit is contained in:
fvanroie 2020-05-08 21:43:14 +02:00
commit 4dc2e864bc
4 changed files with 46 additions and 24 deletions

View File

@ -162,15 +162,15 @@ void dispatchDim(String strDimLevel)
if(strDimLevel.length() != 0) guiSetDim(strDimLevel.toInt());
dispatchPrintln(F("DIM"), strDimLevel);
char buffer[8];
#if HASP_USE_MQTT > 0
#if defined(HASP_USE_MQTT) || defined(HASP_USE_TASMOTA_SLAVE)
itoa(guiGetDim(), buffer, DEC);
#if HASP_USE_MQTT > 0
mqtt_send_state(F("dim"), buffer);
#endif
#if HASP_USE_TASMOTA_SLAVE > 0
itoa(guiGetDim(), buffer, DEC);
slave_send_state(F("dim"), buffer);
#endif
#endif
}
void dispatchBacklight(String strPayload)
@ -276,12 +276,15 @@ void dispatchJsonl(char * payload)
void dispatchIdle(const char * state)
{
#if !defined(HASP_USE_MQTT) && !defined(HASP_USE_TASMOTA_SLAVE)
Log.notice(F("OUT: idle = %s"), state);
#else
#if HASP_USE_MQTT > 0
mqtt_send_state(F("idle"), state);
#elif HASP_USE_TASMOTA_SLAVE > 0
#endif
#if HASP_USE_TASMOTA_SLAVE > 0
slave_send_state(F("idle"), state);
#else
Log.notice(F("OUT: idle = %s"), state);
#endif
#endif
}
@ -303,14 +306,16 @@ void dispatchReboot(bool saveConfig)
void dispatch_button(uint8_t id, const char * event)
{
#if !defined(HASP_USE_MQTT) && !defined(HASP_USE_TASMOTA_SLAVE)
Log.notice(F("OUT: input%d = %s"), id, event);
#else
#if HASP_USE_MQTT > 0
mqtt_send_input(id, event);
#else
Log.notice(F("OUT: input%d = %s"), id, event);
#endif
#if HASP_USE_TASMOTA_SLAVE>0
slave_send_input(id, event);
#endif
#endif
}
void dispatchWebUpdate(const char * espOtaUrl)
@ -323,12 +328,15 @@ void dispatchWebUpdate(const char * espOtaUrl)
void IRAM_ATTR dispatch_obj_attribute_str(uint8_t pageid, uint8_t btnid, const char * attribute, const char * data)
{
#if !defined(HASP_USE_MQTT) && !defined(HASP_USE_TASMOTA_SLAVE)
Log.notice(F("OUT: json = {\"p[%u].b[%u].%s\":\"%s\"}"), pageid, btnid, attribute, data);
#else
#if HASP_USE_MQTT > 0
mqtt_send_obj_attribute_str(pageid, btnid, attribute, data);
#elif HASP_USE_TASMOTA_SLAVE > 0
#endif
#if HASP_USE_TASMOTA_SLAVE > 0
slave_send_obj_attribute_str(pageid, btnid, attribute, data);
#else
Log.notice(F("OUT: json = {\"p[%u].b[%u].%s\":\"%s\"}"), pageid, btnid, attribute, data);
#endif
#endif
}
@ -416,12 +424,15 @@ void dispatchConfig(const char * topic, const char * payload)
if(!update) {
settings.remove(F("pass")); // hide password in output
size_t size = serializeJson(doc, buffer, sizeof(buffer));
#if !defined(HASP_USE_MQTT) && !defined(HASP_USE_TASMOTA_SLAVE)
Log.notice(F("OUT: config %s = %s"),topic,buffer);
#else
#if HASP_USE_MQTT > 0
mqtt_send_state(F("config"), buffer);
#elif HASP_USE_TASMOTA > 0
#endif
#if HASP_USE_TASMOTA > 0
slave_send_state(F("config"), buffer);
#else
Log.notice(F("OUT: config %s = %s"),topic,buffer);
#endif
#endif
}
}

View File

@ -18,7 +18,7 @@ void ethernetSetup()
Log.notice(F("ETH: Failed to configure Ethernet using DHCP"));
} else {
ip = Ethernet.localIP();
Log.notice(F("ETH: DHCP Success got IP=%d.%d.%d.%d"), ip[0], ip[1], ip[2], ip[3]);
Log.notice(F("ETH: DHCP Success got IP %d.%d.%d.%d"), ip[0], ip[1], ip[2], ip[3]);
}
Log.notice(F("ETH: MAC Address %s"), halGetMacAddress(0, ":"));
@ -33,15 +33,19 @@ void ethernetSetup()
mac[4] = (baseUID & 0x0000FF00) >> 8;
mac[5] = (baseUID & 0x000000FF);
char ethHostname[12];
memset(ethHostname, 0 ,sizeof(ethHostname));
snprintf(ethHostname, sizeof(ethHostname), PSTR("HASP-%02x%02x%02x"), mac[3], mac[4], mac[5]);
Ethernet.setCsPin(W5500_CS);
Ethernet.setRstPin(W5500_RST);
Ethernet.setHostname("HASP");
Ethernet.setHostname(ethHostname);
Log.notice(F("ETH: Begin Ethernet W5500"));
if(Ethernet.begin(mac) == 0) {
Log.notice(F("ETH: Failed to configure Ethernet using DHCP"));
} else {
ip = Ethernet.localIP();
Log.notice(F("ETH: DHCP Success got IP=%d.%d.%d.%d"), ip[0], ip[1], ip[2], ip[3]);
Log.notice(F("ETH: DHCP Success got IP %d.%d.%d.%d"), ip[0], ip[1], ip[2], ip[3]);
}
#endif
}
@ -77,4 +81,16 @@ void ethernetLoop(void)
}
}
bool ethernetEvery5Seconds()
{
bool state;
#if USE_BUILTIN_ETHERNET > 0
state = Ethernet.linkStatus() == LinkON;
#else
state = Ethernet.link() == 1;
#endif
Log.warning(F("ETH: %s"), state ? F("ONLINE") : F("OFFLINE"));
return state;
}
#endif

View File

@ -4,4 +4,5 @@
void ethernetSetup();
void ethernetLoop(void);
bool ethernetEvery5Seconds();
#endif

View File

@ -162,13 +162,7 @@ void loop()
#endif
#if HASP_USE_ETHERNET > 0
#if USE_BUILTIN_ETHERNET > 0
isConnected = Ethernet.linkStatus() == LinkON;
Serial.print(Ethernet.linkStatus());
#else
isConnected = Ethernet.link() == 1;
Serial.print(Ethernet.link());
#endif
isConnected = ethernetEvery5Seconds();
#endif
#if HASP_USE_HTTP > 0