History log and SD card lifetime
I am running Unipi Neuron L403 as home automation controller with about 20 datapoints being stored to MervisDB. I am saving all values every 5 minutes and sending it to DB with the same interval.
My problem with this setup is that I have to change SD card every two months due to it's total failure. I am guessing that this failure is caused by temporary saving values to SD card before it's transfered to DB. In debugging system status window there is a note saying that values are saved to internal storage.
My questions are:
- Is there any way to store values just to operation memory before it's transfered to DB and save card from many unwanted memory writes?
- I am still using MLC cards. Does it mean that if I buy SLC card, this problem will be solved forever or it just 20-times prolongs the card's life?
- Is there any way how to directly create bootable USB drive from Mervis image? I have found solution here, but it seems pretty complicated...
Hello @Petr-Helebrant ,
I have not tested myself so cannot tell if it makes a difference but there is also this alternative: http://www.uugear.com/product/raspikey-plug-and-play-emmc-module-for-raspberry-pi/
thanks for your reply. I have also considered using this eMMC adapter. After some "google reseach" I didn't found it more reliable than MLC SD card. It seems that eMMC modules are also using MLC memory chips so there is no differrence in memory reliability.
I think that only solution for me is using SSD drive over USB or finding a way how not to store history data on SD but RAM and lower writes to SD to minimum.
we suggest using SLC or pSLC cards. The differences are explained in this article https://www.unipi.technology/key_feature/what-are-the-differences-between-memory-card-types-and-why-is-it-important-to-know-them-371
Additionally, check the new upcoming Mervis IDE which features an option to configure the period of writing the nvram file (variables used at startup of Mervis RT) to the storage. If your application handles monitoring, you can set the period to 1minute and significantly reduce the amount of data written to the card.
Excellent! Thank you Thomas.
when is this upcoming version od Mervis IDE going to be released? How often is the nvram file written to the storage in current version?
Hello, the Mervis IDE has been released last week. Until this, the NVRAM has been overwritten with every cycle of the RunTime which depends on the complexity of the executed application...
thanks for you answer, now it makes sense, why SD card died so quickly.
One more question. It seems that this feature is called retain configuration in new Mervis IDE. What's going to happen if I disable 'enable periodical saving' option?
Hello @Petr-Helebrant, despite the "disable" option being present in the configuration, the option cannot be disabled. The build of the solution will fail.