81
General controls / Non-Volatile Memory - Set Default Value only editable through Service App
« Last post by GreaseMonkey on September 28, 2023, 08:39:31 PM »This is my first time using the "Non-volatile Memory Dynamic" feature, so please excuse my ignorance.
My software controls several hydraulic pumps, and I would like to use non-volatile memory parameters to make the Max and Start current values for each pump EDC adjustable from the service application. I'm trying to make the default multiplier parameter 100, and then set min as 50 and max as 200 to allow field techs to achieve 50%-200% output current.
I'm trying to understand how I can use the "Non-volatile Memory Dynamic with Default" to achieve this. I know that when the DEF ENABLE pin go true, it copies the default value to NVM. My problem is that I only want to copy the default value to memory the very first time the module starts. After that, it should stay the same unless someone edits it with the service tool. It looks like the values in NVM default to the max value for the data type if they have never been written. I could set the default values in the service application, but that would require someone to hook up the service tool and write initial values to NVM before the machine would function as intended. It would be much better if my code could handle that initial setup instead of the service application.
Thank you in advance. I've attached a screenshot of my current setup, which never writes the default to memory.
My software controls several hydraulic pumps, and I would like to use non-volatile memory parameters to make the Max and Start current values for each pump EDC adjustable from the service application. I'm trying to make the default multiplier parameter 100, and then set min as 50 and max as 200 to allow field techs to achieve 50%-200% output current.
I'm trying to understand how I can use the "Non-volatile Memory Dynamic with Default" to achieve this. I know that when the DEF ENABLE pin go true, it copies the default value to NVM. My problem is that I only want to copy the default value to memory the very first time the module starts. After that, it should stay the same unless someone edits it with the service tool. It looks like the values in NVM default to the max value for the data type if they have never been written. I could set the default values in the service application, but that would require someone to hook up the service tool and write initial values to NVM before the machine would function as intended. It would be much better if my code could handle that initial setup instead of the service application.
Thank you in advance. I've attached a screenshot of my current setup, which never writes the default to memory.