WriteNVRAM fail

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hi guys,

Short version : WriteNVRAM gives me 0x00 for one call, on a line of my software, all other call works. The page ID is 0x12, I try to change it no improvment.

I delayed the write process by 7s (I was wondering is another process could interfer with the EEPROM, no improvement)

Ok, I have a program running on the BLE 20737S, everything works properly beside write/read EEPROM of one function. I'll explain.

My software used 3 page of EEPROM. Each Page is computed regarding of data from BLE.

T = 0s - "BLE transfer" (different UUID ....)

T = 0s - Write to page 0x13, length 50,  OK

T = 0,1 (right after the Write, I read the same ID); OK

T = 3s - Write to page 0x11, length 0xFF, OK

T = 5s - Write to page 0x12, length 200, fail (return 0x00 instead of 0xC8 wanted)

I did try lost of possibility

PageID and Length are #define

In Page 0x13 and 0x11, buffer are local memory,

Page 0x12 is a array inside a struct, (I try to use a local buffer, no changes...)

I try to chang the ID 0x12 by 0x13, no changes

I try to reduce the length, no changes

Ready for any comment.

I'm pretty sure it's nothing, but I can't figure it out.

Thanks

0 Likes
13 Replies