-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature: ESPEasy-now layer #3301
base: mega
Are you sure you want to change the base?
Conversation
This PR fails the build because of this error:
Might need a fix? |
Yep Case sensitive issue, which compiles well on Windows, but not on Linux. |
does this mean that we will be able to use one node (esp8266) as a sensor unit and another node as a display unit in places that don't have wifi? |
src/src/WebServer/WebServer.cpp
Outdated
@@ -221,6 +221,9 @@ void WebServerInit() | |||
webserver_init = true; | |||
|
|||
// Prepare webserver pages | |||
|
|||
// FIXME TD-er: The added String() wrapper is needed for the latest ESP32 core lib. | |||
// See: https://github.com/espressif/arduino-esp32/issues/4374 | |||
#ifdef WEBSERVER_ROOT | |||
web_server.on("/", handle_root); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn't that "/"
also have the F()
macro, like the other strings?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Probably, but I've had some issues not so long ago with the web_server.on calls with FlashStringHelper on ESP32.
So perhaps I missed this one?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
perhaps I missed this one?
That's the most likely cause 😉
Not a biggie, of course, just something I spotted.
@@ -293,12 +293,12 @@ void WebTemplateParser::getWebPageTemplateVar(const String& varName) | |||
if ((i == MENU_INDEX_RULES) && !Settings.UseRules) { // hide rules menu item | |||
continue; | |||
} | |||
#ifndef FEATURE_NOTIFIER | |||
#if FEATURE_NOTIFIER==0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This could have been:
#if !FEATURE_NOTIFIER
but the end-result is the same 😃
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And that piece of code looks like it might still be wrong in the mega branch (#ifndef instead of #if !...)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested that both ways and with and without Notifiers enabled, but it doesn't seem to make a difference, still works as intended (tab is shown or not, based on notifiers available or not), the code just looks a bit odd.
But you fixed it already so it will be corrected in due time 👍
Disabled any call to set TX power as it seems to seriously do some strange stuff, requiring to reflash the ESP to get it to connect again.
A communication layer using ESP-now extended to be used in ESPEasy.
For example the ESP-now packets only can have a 255 byte payload, so sending more means those have to be split and merged while processing packets from several different nodes.
ESP-now is quite fast, with typical round trip times of less than 4 msec.
It also does not need to be connected to WiFi.
As it can use a very small bandwidth channel and low bitrate, its reach is significant more compared to normal WiFi.
This is nowhere near complete, but it takes a lot of time to keep in sync, so by merging it I may speed up development.
It is still highly experimental and lots of code may change regarding ESPEasy-now.
What's working now:
Still in development:
Known issues: