-
Notifications
You must be signed in to change notification settings - Fork 170
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
Still the blank-only-'Connected' UI #209
Comments
I looked at your Mar-2021 project code and can see you were using the SPIFFS file system. I assume you've revised your code to use the LITTLEFS method [ESPUI.beginLITTLEFS()] instead of SPIFFS. And have updated your build platform's file system folder with the latest web related files needed to run ESPUI's revised filesystem AND have uploaded them to the ESP32 device. So assuming you've done all that and there's still no-joy, it's time for a simple experiment. I suggest you temporarily change to the built-in file server [ESPUI.begin()]. If this works then there is something wrong with the LITTLEFS filesystem. Could be missing ESPUI web files in your project, a bug in the Arduino IDE's file system uploader, or a problem with the current ESPUI library.
|
Hi Tomas, I updated to ESPUI 2.2.1 and the other libraries (it depends on) to their latest versions. Experimenting in the past seemed to indicate the number of controls (>60) affect this issue. BTW: it is only with ESP8266 boards, I have no problems with ESP32s: |
That is indeed an interesting problem. Maybe Firefox's F12->Console debugger will provide a clue on what is going on. This will show you the messages between the browser and ESPUI.
|
F12 unfortunately provides no useful info. (Also) check this: the UI appearing with the Edge browser but a minute later blank with Firefox: Edit: and a refresh with the Edge and I get the same blank-connected UI. BTW: I mentioned this issue already 2 years ago, check this thread: #92 |
Another BTW: one thing I noticed is sometimes the blank UI displays 'Control Connected' and other times '#SSID# Connected'. |
Your previous Issue #92 provided helpful background info. I'd have to agree that switching the ESP8266 to a ESP32 is the most practical solution when a lot of controls are used.
|
Yes and the ESP32 Mini is almost a drop in replacement for my project.
I have built several with an ESP8266 though, so it would be nice if the UI
also worked without issues.
And an issue I had with ESP32s was that sometimes a brownout error
triggered when connecting to Wifi causing the EEPROM settings to be erased.
So both boards have their pros and cons.
…On Tue, Nov 8, 2022 at 9:28 PM Thomas ***@***.***> wrote:
Your previous Issue #92 <#92>
provided helpful background info. I'd have to agree that switching the
ESP8266 to a ESP32 is the most practical solution when a lot of controls
are used.
- Thomas
—
Reply to this email directly, view it on GitHub
<#209 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKWTPHDSZMN2BNXNCP4XUX3WHKZVFANCNFSM6AAAAAARYPYXFU>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
IIRC a while ago I read an e-mail mentioning that someone (Ian?) figured
out what was causing the blank screen and found another method of sending
the JSON data?
Not sure about it though.
…On Wed, Nov 9, 2022 at 8:47 AM ericB creator ***@***.***> wrote:
Yes and the ESP32 Mini is almost a drop in replacement for my project.
I have built several with an ESP8266 though, so it would be nice if the UI
also worked without issues.
And an issue I had with ESP32s was that sometimes a brownout error
triggered when connecting to Wifi causing the EEPROM settings to be erased.
So both boards have their pros and cons.
On Tue, Nov 8, 2022 at 9:28 PM Thomas ***@***.***> wrote:
> Your previous Issue #92 <#92>
> provided helpful background info. I'd have to agree that switching the
> ESP8266 to a ESP32 is the most practical solution when a lot of controls
> are used.
>
> - Thomas
>
> —
> Reply to this email directly, view it on GitHub
> <#209 (comment)>, or
> unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AKWTPHDSZMN2BNXNCP4XUX3WHKZVFANCNFSM6AAAAAARYPYXFU>
> .
> You are receiving this because you authored the thread.Message ID:
> ***@***.***>
>
|
The ESP8266 and ESP32 require clean & stable power. Many USB "charger" supplies and some USB cables just aren't up to this task. So if you are seeing brownouts then your power supply configuration, or the related wiring, needs some attention. BTW, I've build many ESP32 projects and have not experienced your noted issue. But long ago I had random reboot problems with my ESP8266 devices that were solved with improvements to the power supply, which included better USB cables and additional supply filtering on the affected devices. And I have used this learned experience to help my ESP32 projects.
The current ESPUI release sends data in much smaller chunks, in a more coordinated way, thanks to MartinMueller2003's efforts. But since the latest release did not solve your problem I suspect that the issue is deep in a Arduino library.
|
You're right about using correct power and decent cables.
In hindsight I have to say the brownout errors didn't occur since I added a good power supply next to the PC USB connection (when working on the project).
"The current ESPUI release sends data in much smaller chunks"
So I was right some changes were made (by MartinMueller2003). In the past I did some retracing in the ESPAsync libraries but quit as it took a lof of time with no results (yet) and it was becoming a big sidetrack from my project.
What I don't get is why - with the exact same setup (board and code) - sometimes the UI is blank and other times not (like in the picture I posted).
That doesn't make sense, the logic program excution should be the same every time.
It is not like it's running on a bloated OS like Windows with all kind of other processes interfering.
|
That's the dream, but reality is what it is. Program execution is not always the same each loop. For example, the browser's interaction with your device can occur at any time. Plus the ESP has interrupts that can delay entering other time critical functions. Not to mention that there could be an issue somewhere in a library or your code. Uninitialized pointers, char buffers that are too small, compiler optimizations that misinterpret your intentions, and so on, can create random problems && endless frustrations. Such things may cause a problem once-in-awhile or could trigger some odd memory corruption that requires a reboot to "fix." But don't give up. It would be great if you or some other ESPUI user found the reason to this issue and published the fix. In the meantime I think swapping the ESP8266 with a ESP32 is a somewhat painless solution.
|
Fair points.
BTW: a good debugger would make life lot a lot easier,
Putting debug prints in the Arduino IDE is a pain in the but.
I have some ideas, will give them a try when I have some time.
… Op 10 nov. 2022, om 18:53 heeft Thomas ***@***.***> het volgende geschreven:
What I don't get is why - with the exact same setup (board and code) - sometimes the UI is blank and other times not (like in the picture I posted). That doesn't make sense, the logic program excution should be the same every time.
That's the dream, but reality is what it is. Program execution is not always the same each loop. For example, the browser's interaction with your device can occur at any time. Plus the ESP has interrupts that can delay entering other time critical functions.
Not to mention that there could be an issue somewhere in a library or your code. Uninitialized pointers, char buffers that are too small, compiler optimizations that misinterpret your intentions, and so on, can create random problems && endless frustrations.
Such things may cause a problem once-in-awhile or could trigger some odd memory corruption that requires a reboot to "fix."
But don't give up. It would be great if you or some other ESPUI user found the reason to this issue and published the fix. In the meantime I think swapping the ESP8266 with a ESP32 is a somewhat painless solution.
Thomas
—
Reply to this email directly, view it on GitHub <#209 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AKWTPHDWGDJH2J3XMNBHI3TWHUZBBANCNFSM6AAAAAARYPYXFU>.
You are receiving this because you authored the thread.
|
you can do breakpoint debugging with some esp32 dev boards and platformio, the 8266 is a different story though... |
Got same issue with d1_mini_pro esp8266. |
I think #241 would help. |
I thought I read this issue was tackled but getting back to my clock project and recompiling with the latest updated libraries I still run into this issue (Wemos D1 mini):
The text was updated successfully, but these errors were encountered: