Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
Clemens Kirchgatterer
@everslick
clemens@secrets:~/Devel/ESP8266/genesys$ make stack
0x402010cf: __wrap_realloc at ??:?
0x40104c5c: lmacTxFrame at ??:?
0x4020ffcc: yield at ??:?
0x4020f76d: UpdaterClass::_writeBuffer() at ??:?
0x4020f81f: UpdaterClass::write(unsigned char*, unsigned int) at ??:?
0x402102da: String::String(char const*) at ??:?
0x4020de24: handle_update_progress_cb(AsyncWebServerRequest*, String, unsigned int, unsigned char*, unsigned int, bool) at http.cpp:?
This message was deleted
UpdaterClass::_writeBuffer() calls yield(). Isn't that forbidden in AsyncTCP ?
You can not use yield or delay or any function that uses them inside the callbacks
@me-no-dev looks pretty dim. :-(
Me No Dev
@me-no-dev
yes, let me look at the updater
I know some folks got it to run async
can you try commenting out the yield calls in write and _writeBuffer
Me No Dev
@me-no-dev
if that works, I'll PR a writeAsync method to the Updater
Clemens Kirchgatterer
@everslick
ok, i test it
it uploads the file, then reboots, but does not start anymore
Me No Dev
@me-no-dev
that should not be connected
Clemens Kirchgatterer
@everslick
either the update is not finished correctly (but on my side) or the update does not work correctly anymore
Me No Dev
@me-no-dev
if the updater said it's good, then it should by all means work
debug enabled on Updater?
Clemens Kirchgatterer
@everslick
no not anabled
trying that
skrew that, it worked, it just booted into bootloader
Me No Dev
@me-no-dev
btw, you did restart manually after Serial upload right?
Clemens Kirchgatterer
@everslick
hehe, exactly
everything is fine
i tried 5 times now, and it worked every single time
Me No Dev
@me-no-dev
it was expected :)
Clemens Kirchgatterer
@everslick
the progress log (in my code) is borked, but this will be easily fixable.
reloading different pages is now faster and more stable, i'm quite happy
Me No Dev
@me-no-dev
btw I do not know if you know, but there is an Async MQTT imlementation now based on AsyncTCP
Clemens Kirchgatterer
@everslick
no, i didn't
Me No Dev
@me-no-dev
the drawback is not supporting HTTPS yet
Clemens Kirchgatterer
@everslick
TLS
i guess
Me No Dev
@me-no-dev
but it has been tested with millions of messages to no fail
yes
Clemens Kirchgatterer
@everslick
sounds great
Clemens Kirchgatterer
@everslick
i will need TLS though, (even though i don't have it now)
is TLS planned?
click
Me No Dev
@me-no-dev
yes, as soon as I find implementable
axtls does not work with async
Clemens Kirchgatterer
@everslick
IC
Clemens Kirchgatterer
@everslick
@me-no-dev : anyway, thank you very much. can you pls announce here, if the asyncUpdater gets merged?
Me No Dev
@me-no-dev
sure thing, I'll post PR in a bit
Clemens Kirchgatterer
@everslick
i will pospone my push until it is at least in master
after more testing i have to say async works so much better, it really should be the default!
Me No Dev
@me-no-dev
it is better, but it's not as easy as the regular one :) there are many things that you can not do inside async callbacks that users can do in the callbacks of the included server
Me No Dev
@me-no-dev
esp8266/Arduino#2096 is the PR, it adds Updater.runAsync(true/false); to switch the modes
Me No Dev
@me-no-dev
@everslick merged into master ;)
@igrr thanks :)
Ivan Grokhotkov
@igrr
Yeah, making async the default approach is the plan, but it requires some work... we need to make shooting oneself in a foot more complicated. After all, Arduino is about ease of use.