The use of the ESP8266 in the world of IoT

User avatar
By rab
#20391 Really the short answer is that it doesn't need any. However, the way the boot loaders are written means that execution goes through a couple of functions before reaching user code. To use pure c compiled with gcc you can't get away with less than 16 bytes per function (which rBoot previously did) if you make efforts to minimise it, but it doesn't look like Espressif made any effort to minimise their stack use. I didn't think you could do it with assembler easily inline either (hence having previously given up), well you still can't really, but I slightly cheated and it looks like I'm getting away with it!
User avatar
By alonewolfx2
#20411 did you saw sming project? can you merge your bootloader with sming ? if you can this is very good.
https://github.com/anakod
https://gitter.im/alonewolfx2/Sming
User avatar
By rab
#20413 It certainly can be used to boot sming compiled applications, I've done it myself as a quick test (had it dual booting between blink and http example projects). How it would interact with their OTA update mechanism or embedded filesystems etc. would take a little more thinking about, but no reason it couldn't be made to work (and without much effort I'm sure).

See this post and the couple before it.
User avatar
By gschmott
#20427 I can confirm as well that rboot can be integrated into a Sming based project. I did the integration for one of my projects although it doesn't (yet) include Richard's latest modifications. Integrating it properly into the Sming framework is probably straightforward but will likely result in changes to Sming's makefiles and the output they produce. As was mentioned, what to do with the spiffs file-system file is still TBD and fortunately I didn't need it for my project. Another small issue is that it now appears you now have to change the Expressif SDK to make one of the symbols in a library "weak" so that it can be replaced by Richard's implementation. Effectively, that means Sming would then be dependent on a modified SDK . . . albeit a modification that is likely to be transparent to any projects that use it.

With that said, I would love it to be integrated in Sming, the Arduino SDK etc... It seems to be one of the more robust (and thanks to Richards documentation) transparent OTA solutions available at the moment.