Use this forum to chat about hardware specific topics for the ESP8266 (peripherals, memory, clocks, JTAG, programming)

User avatar
By davydnorris
#86665
sblantipodi wrote:...

Wow man thanks for the answer, I really appreciate it.
I'm using Arduino it's simple and portable, I'm a noob and still not understanding why use rtos or nonos over arduino.

What are the real benefits of nonos or rtos over the arduino way?

Thanks


The Arduino port to ESP8266 uses the NonOS SDK under the hood. As you said - it makes it portable, and it does a pretty great job too. There are times, however, when you may want total control over the code and Arduino does things a pretty specific way in order to give you that portability. This is when you might decide to use the RTOS or NonOS SDK, but if you're getting joy from Arduino then there's no real reason to move - it's a pretty nice port that has been built!

Just FYI - they have also ported the SPIFFS library and the EEPROM library to the ESP8266. In these cases, both of them use the low level NonOS flash read and write functions to implement the Arduino versions. You can have both of these libraries in your code at the same time, and can use SPIFFS to read and write files, but use the EEPROM library to read and write configuration data.

Just remember that when Arduino says EEPROM, on the ESP side they are really talking about flash.
User avatar
By sblantipodi
#87024
eriksl wrote:BTW might it not be clear by now: "EEPROM" is something unique to Arduino, not to ESP8266. The ESP8266 does NOT have EEPROM. Arduino can emulate the EEPROM found on other microcontrollers while using FLASH. I am not too sure whether you'd want to, because EEPROM is generally very small and limited. I guess it's used to run existing Arduino stuff designed for other microcontrollers.


Arduino Core 2.7.1 deprecated SPIFFS so I switched to LittleFS and I'm happy with it.
It is fast and I can easily store and read JSON objects so no need for "stupid EEPROM anymore" :D

thanks man