we enhanced the bootloader to allow a simple xml editing that is stored in flash/eeprom/extflash. the bootloader and app parse the xml for some simple parameter tuning (i.e. ip address, netmask, hostname, ....)
How is this setup?
Use a second bootloadble that just writes to memory?
we have a modified bootloader that includes some additional commands: readXML, writeXML, console ....
the actual bootloader then contains the code to save the XML to a storage. we usually have a small external flash that is used for other things. we reserve a block for the boot XML. you could modify to save to internal flash, external eeprom, external flash etc.
then we have a standalone bootloader program (j1UBL) that handles the extra commands and has buttons to edit the XML. The program then reads the XML from the psoc, allows editing, and writes it back to the psoc which then, in our design, saves it to the external flash.
the standard way would be to upload new settings to PSoC (as a buffer or each value individually) using UART or USBUART and save it in EEPROM for further use: