[SOLVED] EEPROM Not Supported


Hi Eric,
Is there EEPROM in Bluz? How big is it? I use EEPROM.read/write. read always return 0 no matter what value I put there. Same as EEPROM.length().
We need store configuration data in to bluz. Is there a way to do that?
Shirui Xu


That is currently not implement, it is on the list. We could probably get something put together relatively quickly in the develop branch if you need it soon. How much storage area do you need?


Hi Eric,
How much EEProm available on nrf51822? I am working on the new project based on bluz, I am testing the device’s capabilities now.
If you can have something relatively quickly, that will be great.
Shirui Xu


Hi Eric,
I noticed there is a 2MBits flash chip on board. Can I use it for my app data? Do you have any example code for read/write with it?
Shirui Xu


The on-board SPI flash is actually all used for other things. It stores the system keys, backup firmware, and is used to download OTA updates from the cloud. If you wanted to use the OTA space, you could, but it would get wiped if you ever did an OTA update.

I should be able to get the EEPROM library implemented rather quickly. It will just be a wrapper for the Nordic pstorage library, so it should be straight forward. We won’t


Any updates on this @eric?


This is next on my list of firmware items to address. We just got the gateways in, though, so my time is going to be a little occupied with shipping those over the next week.

This feature is now being requested by mutiple people, so I will try and get to it very soon


@mdoan and @xushirui: We have added support for EEPROM. You can now use the same EEPROM calls as you would on the Photon on bluz: https://docs.particle.io/reference/firmware/photon/#eeprom

This is currently checked into the develop repository so you would need to local compile to get this feature. I am hoping to get a beta out soon so you would be able to use this from the Web IDE, but this requires local compile for now.

We will add this to our docs when we get the beta out. Currently, we have 512 bytes for storage, though we should be able to increase this in the future as we are using the external SPI flash.

Wake on interrupt