Welcome! Log In Create A New Profile

Advanced

EEPROM & other storage

Posted by jspring111 
EEPROM & other storage
August 21, 2020 12:52PM
I'm trying to understand how settings are stored in a controller board (in my case it's a RAMBO board).

I think I know there is flash memory, EEPROM and possibly something else?

I'm thinking settings I change from the control on the printer and maybe Pronterface are stored in flash and go away when the printer is shut down and restarted?

I also believe you can save these settings to a persistent type of memory using M500.

EEPROM is longer term storage that persists when the printer is power cycled?

Is there a deeper, longer term memory?

Where is firmware written to?

Is it possible to backup and reload settings stored in the deeper types of memory? I've heard they are written in HEX so aren't editable but can they be saved and reloaded?

Thanks for helping me understand.
Re: EEPROM & other storage
August 21, 2020 03:23PM
Quote
jspring111
I'm trying to understand how settings are stored in a controller board (in my case it's a RAMBO board).

I think I know there is flash memory, EEPROM and possibly something else?

I'm thinking settings I change from the control on the printer and maybe Pronterface are stored in flash and go away when the printer is shut down and restarted?

I also believe you can save these settings to a persistent type of memory using M500.

EEPROM is longer term storage that persists when the printer is power cycled?

Is there a deeper, longer term memory?

Where is firmware written to?

Is it possible to backup and reload settings stored in the deeper types of memory? I've heard they are written in HEX so aren't editable but can they be saved and reloaded?

Thanks for helping me understand.

There is actually a lot to find out about this topic when Googled, since it doesn't limit itself to 3D-printer boards but to controller-driven electronics in general:
[simple.wikipedia.org]

Some more, and in my opinion a very detailed explanation:
[www.electronicsforu.com]

[electronics.stackexchange.com]

[en.wikipedia.org]


http://www.marinusdebeer.nl/
Re: EEPROM & other storage
August 21, 2020 09:21PM
Firmware is stored to flash, it is persistent over reboots
EEPROM is used for settings when you save them with M500

If you don't use M500 the settings are only in RAM and are lost on reboot.

but.. Marlin is more complex than that..
Some data is written to EEPROM without needing a M500 (printer stats, bed leveling data)
Some controllers don't have a EEPROM, so they fake having a EEPROM and use the end of flash.
Or you can use your SD card to store EEPROM data.
Re: EEPROM & other storage
August 31, 2020 09:26PM
Thanks for the answers. I did the suggested reading. Sorry for the delay.

So if a setting is written in firmware (and therefore written to flash) then you set a different value on the printer's control screen, does that value override what is stored in firmware until:

1) The printer is rebooted if M500 isn't used

or

2) Persists if M500 is used, thereby storing it to EEPROM. (in this case the setting in firmware is ignored?)

My example would be M92 if I change the E steps.
Re: EEPROM & other storage
August 31, 2020 10:44PM
yes setting in firmware are used on power up. if you change any they are changed in ram and only persist until reboot or deliberately changing again.

Yes eeprom data is designed to be used instead of firmware data if present. This is why you see many messages saying reset your eeprom data with the firmware data (ie M502 M500)
Re: EEPROM & other storage
September 03, 2020 02:16PM
Thanks again smiling smiley
Sorry, only registered users may post in this forum.

Click here to login