Skip to content
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

[Test build] Testers for new upcoming build (August '24) #5103

Closed
TD-er opened this issue Aug 12, 2024 · 41 comments
Closed

[Test build] Testers for new upcoming build (August '24) #5103

TD-er opened this issue Aug 12, 2024 · 41 comments

Comments

@TD-er
Copy link
Member

TD-er commented Aug 12, 2024

I've just uploaded the latest GH Actions build to the web flasher

So I would like to summon the very appreciated testing crew :)
@fly74 @ghtester @chemmex @alex-kiev @iz8mbw @Wookbert @Dickesplumpel @thomastech

Just as a reminder:

  • ESP32-xx LittleFS builds are based on ESP-IDF 5.x code
  • ESP32-xx SPIFFS builds are based on ESP-IDF 4.4

There are lots and lots of changes, but the main tricky one is that it might be impossible to OTA update larger builds from the April release as there was a bug in the Arduino code which did not properly use timeouts when handling HTTP requests.

If this is an issue, to update any "max" builds, I will add intermediate builds for those typically 16M and 8M builds which do not contain any plugin or controller to make them as small as possible.
This way it is more likely you can successfully OTA update such units without the need to hook them up via serial.

So please let me know if this is indeed an issue (and maybe also for "4M builds LittleFS").
N.B. this does only apply to "LittleFS" builds when OTA updating from the April release. (or test builds from around that time)

@fly74
Copy link

fly74 commented Aug 12, 2024

ESP_Easy_mega_20240812_normal_ESP32_4M316k_LittleFS is missing in the all.zip.

@tonhuisman
Copy link
Contributor

That's being succeeded by ESP_Easy_mega_20240812_normal_ESP32_4M316k_LittleFS_ETH, to reduce the number of builds (and reduce the GH Actions runs processing time)

@fly74
Copy link

fly74 commented Aug 12, 2024

What means ETH?

@tonhuisman
Copy link
Contributor

Ethernet support, now also supporting SPI Ethernet modules, like W5500 and a few others. List is in the UI on the Hardware tab.

@TD-er
Copy link
Member Author

TD-er commented Aug 12, 2024

Yep, Ethernet support is now enabled for (nearly) all ESP32-xx LittleFS builds as it does hardly make the builds larger and thus it makes no sense to have separate builds with and without Ethernet support.

For the ESP32-C2 I have not added Ethernet support as nearly all modules out there with a C2 are embedded devices like of-the-shelve modules which do not have Ethernet and the C2 already is quite low on resources to begin with.

@fly74
Copy link

fly74 commented Aug 13, 2024

But when it is the only normel LittleFS build for ESP32 then ETH could be removed? Then I wouldn't had asked.

@TD-er
Copy link
Member Author

TD-er commented Aug 13, 2024

Not sure if I understand your reply...

For LittleFS builds we now have the option to also use SPI Ethernet devices.
This makes nearly all ESP32-variant capable of having Ethernet support.
If we would then split builds into with and without Ethernet support, you effectively double the number of bin files.
And since you can also use WiFi on an Eth build, it no longer makes sense to have builds with and without Eth support.
Therefore we decided to include "Eth" in nearly all ESP32-builds using LittleFS.
But since there is 1 combination which does not have Eth included, we still need to make it clear in the filename which builds have and which have not Ethernet support.

I try to include as little flags as possible in the filenames and try to reduce the number of bin files to chose from, but no less than what is needed.

@fly74
Copy link

fly74 commented Aug 13, 2024

I'm a little confused, as I understand there is only one build from now for "ESP32 normal"
"ESP_Easy_mega_20240812_normal_ESP32_4M316k_LittleFS_ETH" and it replaces also "ESP_Easy_mega_20240812_normal_ESP32_4M316k_LittleFS" ?!?

@TD-er
Copy link
Member Author

TD-er commented Aug 13, 2024

Yep, we simply enabled Ethernet on all ESP32-variant LittleFS builds, all except for the C2.

It just has some extra feature included which doesn't prevent using WiFi when you don't specifically setup Ethernet configuration.

@Dickesplumpel
Copy link

This time I'm not taking part, weather drags me to outside jobs and motorcycling, have fun!

@fly74
Copy link

fly74 commented Aug 13, 2024

No issues until now

@tonhuisman
Copy link
Contributor

This time I'm not taking part, weather drags me to outside jobs and motorcycling, have fun!

That are the perks of making a (high-)summer release 😄. Have fun! 🌞

@TommoT1
Copy link

TommoT1 commented Aug 13, 2024

Hi there!
Are the 1M builds for 8266 missing on purpose?

@tonhuisman
Copy link
Contributor

Are the 1M builds for 8266 missing on purpose?

No, not on purpose, and a few specific 1M builds are included, but not the Normal builds it seems, they have fallen off (again) because of a few small additions to some plugins.
What exact 1M (standard) build do you use/need?

@TommoT1
Copy link

TommoT1 commented Aug 13, 2024

The "normal" ESP_Easy_mega_xxxxxxxx_normal_ESP8266_1M_VCC and the one without VCC.

By the way, do you guys notice some stability differences between 8266, 32 and 32c3?
I have some issues from time to time mostly with 32c3 devices not beeing in the WiFi anymore....

@tonhuisman
Copy link
Contributor

What is the current build you are using, 2024-04-14 ?

@TommoT1
Copy link

TommoT1 commented Aug 13, 2024

20240617 (a build with again working fhem plugin and no OTA issues anymore)

@thomastech
Copy link
Contributor

I ran ESP_Easy_mega_20240812_collection_B_ESP32_4M316k overnight and did not notice any issues.

A few minutes ago I reverted back to Ton's Jul 30 PR build because it has his VL53L1X ROI feature.

  • Thomas

@tonhuisman
Copy link
Contributor

A few minutes ago I reverted back to Ton's Jul 30 PR build because it has his VL53L1X ROI feature.

I rebased that PR earlier today to again be on par with the latest mega, so you can get the latest P113 build from here 😃

@tonhuisman
Copy link
Contributor

tonhuisman commented Aug 13, 2024

20240617 (a build with again working fhem plugin and no OTA issues anymore)

@TommoT1 Are there specific plugins that you absolutely can't live without? As I'm considering to leave 1 plugin out of the 1M builds only: P011 (ProMini Extender, it requires quite specific hardware, an Arduino Nano with the 'extender' software on it)...

@tonhuisman
Copy link
Contributor

I have some issues from time to time mostly with 32c3 devices not beeing in the WiFi anymore....

The freshly offered pre-release has a newer version of the platform libraries compared to what you're using, so testing with the latest builds might show improved response/working.

@TommoT1
Copy link

TommoT1 commented Aug 13, 2024

20240617 (a build with again working fhem plugin and no OTA issues anymore)

@TommoT1 Are there specific plugins that you absolutely can't live without? As I'm considering to leave 1 plugin out of the 1M builds only: P011 (ProMini Extender, it requires quite specific hardware, an Arduino Nano with the 'extender' software on it)...

That sounds good, I anyway moved away from the ProMiniExtender to the MCP23017.

@TommoT1
Copy link

TommoT1 commented Aug 13, 2024

I have some issues from time to time mostly with 32c3 devices not beeing in the WiFi anymore....

The freshly offered pre-release has a newer version of the platform libraries compared to what you're using, so testing with the latest builds might show improved response/working.

Thanks, I'll monitor those

@TD-er
Copy link
Member Author

TD-er commented Aug 13, 2024

The "normal" ESP_Easy_mega_xxxxxxxx_normal_ESP8266_1M_VCC and the one without VCC.

By the way, do you guys notice some stability differences between 8266, 32 and 32c3? I have some issues from time to time mostly with 32c3 devices not beeing in the WiFi anymore....

I know there are some C3 boards out there which are extremely cheap. (< 2 euro)
I have a few of those myself and when they work, they work just fine.
However during manufacturing there was clearly absolutely no quality control.
Some even have the solder balls residue on them which you also see when soldering using expired solder paste (and don't clean the board after you're done)
I also have a board which is missing a few resistors.

So given those have not seen any quality control, I wouldn't be surprised when those may show differences in stability.

Other boards I have with the C3 (more like NodeMCU form factor and 2 USB ports) are just as stable as can be.

There is however an issue which I have not yet been able to fix, where the ESP may loose its WiFi and for whatever reason is not able to reconnect.
If you're seeing such behavior, you might want to check the checkbox "Restart WiFi Lost Conn" on Tools->Advanced page.

I want to make a complete redesign of the network stack in ESPEasy as there is clearly some logic error in my code.
But I would like to do this after this release as it has already been 4 months since the last one due to various reasons...

First I wanted to make sure the OTA update was working again, which took some PR (which got merged) in the Arduino code and then I was extremely busy with other issues regarding how ESPEasy is being built.
So a lot of behind-the-scenes work, which may look like not much is happening here.

@TommoT1
Copy link

TommoT1 commented Aug 13, 2024

Thanks for explaining!
I use ESP8685-wroom-03 and 06 units. They came in reel packaging and look quite clean cause everything ist hidden behind the metal shielding...

The "Restart WiFi Lost Conn" ist checked but that doesn't help. I also addes rules where after 10min with WiFi down a wifidisconnect is done and if no help after three times a reboot shall be done.
Looks it stops those timers when it hangs.
But on the other hand, when in such a condition, hardware attached switches and relays still work.
So luckily this doesn't Happen too often
Let's see what the new build adds to stability.

@tonhuisman
Copy link
Contributor

@TommoT1 Not sure if you found it already, but I created a PR to fix some ESP8266 1M builds, the Actions run can be found here

@TommoT1
Copy link

TommoT1 commented Aug 13, 2024

Thanks! Got it!

@TD-er
Copy link
Member Author

TD-er commented Aug 13, 2024

@TommoT1 Those Espressif modules should be the perfect choice as they really don't use the cheapest parts available and also have proper QC.
... assuming those are original ones.

So this leaves the usual suspects:

  • power supply quality (or connections to it)
  • Presence of metal near the antenna.

Just checked 2 ESP32-C3 units I have here (running the new AS3935 Lightning Detector).
These are running on those (too) cheap boards I mentioned and their uptimes are over 39 days and that's also the 'connected time'. (number of reconnects: 0)

  • Connected: 43T20:53:14.725
  • Connected: 39T21:39:36.556

@TommoT1
Copy link

TommoT1 commented Aug 13, 2024

I put those in exchange for the original Chip in those Meross 4port +USB Power Strips.
Nothing I can do about powersupply and Position.
And I also geht those running times, but obce in a while suddenly one ist Not reachae anymore.
While it still reacts on the Push Button build in this Meross...
So only WiFi is once in a while not playing as it should...
Thanks for your work!

@TD-er
Copy link
Member Author

TD-er commented Aug 13, 2024

It might be related to the 'logic error' I mentioned before in my WiFi code.
That's for the next release.

@iz8mbw
Copy link
Contributor

iz8mbw commented Aug 14, 2024

Hello @TD-er sorry but cannot test this time.

@TD-er
Copy link
Member Author

TD-er commented Aug 22, 2024

Thanks for testing y'all
New build has just been uploaded to the webflasher and on the releases page.

And you all know it... no critical bugreports in the next 24h... please ;)

@TD-er TD-er closed this as completed Aug 22, 2024
@thomastech
Copy link
Contributor

And you all know it... no critical bugreports in the next 24h... please ;)

Challenge accepted. :)

@fly74
Copy link

fly74 commented Aug 23, 2024

And you all know it... no critical bugreports in the next 24h... please ;)

I'll try my best but cannot promise. 😎

@chemmex
Copy link

chemmex commented Aug 30, 2024

@TD-er don't you have plans to switch to pioarduino?

@TD-er
Copy link
Member Author

TD-er commented Aug 30, 2024

@TD-er don't you have plans to switch to pioarduino?

LOL....

OK let me explain it.... I am one of the few people behind pioarduino :)

I have been working with Jason2866 for way over a year on getting the platform packages working and ready for ESP-IDF 5.x and Arduino 3.0.x
This because there was no official platformIO support for it.
It was then already clear to us that there was something wrong and that there might be a real possibility we would never see PlatformIO support for those newer SDK versions unless we do it ourselves.

At the end of '23 it became obvious others would be left in the dark too, so Jason did all the hard work in finding ways to make the platform packages less specific tailored to just what ESPEasy and Tasmota is using and more "vanilla Arduino"
This has taken a lot of work (glad some invaluable help from others was offered behind the scenes) and as you may have seen in the ESPEasy changelogs I have been running a lot of builds of those platform packages in the past 18 months.

Now that Arduino 3.0.0 is released and most of the libraries have fixes present to make them work with Arduino 3.0.x and ESP-IDF5.x pioarduino is made publicly available.

N.B. the pioarduino platform and the platform builds Jason and I have been using/working on do mainly differ in the amount of libs stripped from it to make the builds smaller.

This stripping of libs is not yet easily doable yourself in pioarduino but work is in progress behind the scenes.

Also this one will be merged soon: #5111
It will move all ESP32-variation builds to ESP-IDF5.1 for SPIFFS and ESP-IDF5.3 for LittleFS builds.

So I hope the "don't you have plans to switch to pioarduino?" question may be answered with this? ;)

@chemmex
Copy link

chemmex commented Aug 30, 2024

Yes, I'm fully aware of the story, have been watching it for months. The question only was if you are still using Jason2866's Tasmota packages or there will be a shift towards pioarduino as a complete platform

@TD-er
Copy link
Member Author

TD-er commented Aug 30, 2024

Right now we're still using the platform builds Jason makes as those result in quite a lot smaller builds for us.
And he even makes a build specific for ESPEasy with SPIFFS.
The first 'plain' Arduino 3.0.x platform builds (like pioarduino 0.0.1-pre-alpha style) I made of ESPEasy on my PC (about a year ago) were about 1 MB larger than the ones with Jason's builds.
So there already has been a lot of progress since.

When it is made possible to also make smaller platform builds without a lot of hassle, I will for sure switch to vanilla pioarduino :)
Right now there is not a lot of differences anymore between those pioarduino builds and the one Jason makes for us.
Even some specific code changes and patches have been removed 2 days ago.
It mainly differs in SDK config and support for JL1101 Ethernet which has not yet been merged by Espressif, however those changes still require a full platform build, properly setup build environment, etc.

@chemmex
Copy link

chemmex commented Aug 30, 2024

Thanks for the explanation, it becomes clear, finally.
Today, at last, I found the time to test recent release, and when I tried to custom build my config for ESP32-C3, after pulling latest code, I run into the same problem we discussed earlier here, so I created a new env with vanilla pioarduino as a platform, and was able to finish the build.
Thanks again guys for your efforts and for keeping us from falling back into the stone age.

@TD-er
Copy link
Member Author

TD-er commented Aug 30, 2024

For Windows you may still run into issues, until you change it to use this PR: #5111
Or at the very least change the folders as they are in this PR in platformio.ini.
Also make sure you don't use too deep paths.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants