使用ESP32的NVS-BLOB存储12000个字节数据,每次完全擦除flash后编程写第一次都没问题,但之后再写就报错误ESP_ERR_NVS_NOT_ENOUGH_SPACE (0x1105): There is not enough space in the underlying storage to save the value
但每次读出都问题,数量也对,重新上电也不行,请问这是什么原因呢?使用的是IDF4.3稳定版本
[已解决] ESP32的NVS blob问题
-
- Posts: 786
- Joined: Wed Nov 14, 2018 8:45 am
Re: ESP32的NVS blob问题
错误是 ESP_ERR_NVS_NOT_ENOUGH_SPACE,你的 NVS 分区多大?搞大些。
Re: ESP32的NVS blob问题
# ESP-IDF Partition Table
# Name, Type, SubType, Offset, Size, Flags
nvs,data,nvs,0x9000,24K,
phy_init,data,phy,0xf000,4K,
factory,app,factory,0x10000,1M,
NVS分区存储的数据是足够了,第一次读写都是正常的,之后读正常,写报错
# Name, Type, SubType, Offset, Size, Flags
nvs,data,nvs,0x9000,24K,
phy_init,data,phy,0xf000,4K,
factory,app,factory,0x10000,1M,
NVS分区存储的数据是足够了,第一次读写都是正常的,之后读正常,写报错
-
- Posts: 786
- Joined: Wed Nov 14, 2018 8:45 am
Re: ESP32的NVS blob问题
你 nvs 是 24KB,写入的是 12000,nvs 里可能本来还有些其他参数在,你再写就没这么大空间了。
他写入的话,是不会把原来的擦掉的,在写入新的之后,会把原来的置成无效。
具体看下 https://docs.espressif.com/projects/esp ... flash.html
另外,你这样的参数存储,最开单独再开一块 nvs 分区,不要和系统的放在一起。
他写入的话,是不会把原来的擦掉的,在写入新的之后,会把原来的置成无效。
具体看下 https://docs.espressif.com/projects/esp ... flash.html
另外,你这样的参数存储,最开单独再开一块 nvs 分区,不要和系统的放在一起。
Re: ESP32的NVS blob问题
正解,我今天刚好测试了下,情况就是这样,不是先擦除后写。
Who is online
Users browsing this forum: Google [Bot] and 48 guests