Is there anything preventing anyone from uploading the tinyest image that simply dumps the entire ROM content on the UART?
This would sort of circumvent the HW locking.
Is there anything preventing anyone from uploading the tinyest image that simply dumps the entire ROM content on the UART?
This would sort of circumvent the HW locking.
OK, I see - thanks for clarifying.
Another thought I had was how to update the soft device (a bug fix might be required some day). I guess this is not possible over the air (yet)?
I makes me wonder if I should include an EEPROM in my design, and use it to upload both the SD and application firmware upgrades in. Do you think it would be possible to do this, or are there any obstacles that I have to take into consideration, like if you overwrite the UICR or similar?
Well, I would need to run the flashing from a safe area, I guess I could maybe run it from the RAM.
OK, I see - thanks for clarifying.
Another thought I had was how to update the soft device (a bug fix might be required some day). I guess this is not possible over the air (yet)?
I makes me wonder if I should include an EEPROM in my design, and use it to upload both the SD and application firmware upgrades in. Do you think it would be possible to do this, or are there any obstacles that I have to take into consideration, like if you overwrite the UICR or similar?
Well, I would need to run the flashing from a safe area, I guess I could maybe run it from the RAM.
It is theoretically possible to upgrade the softdevice with the 6.0.0 release, but it won't be possible to do completely safe, since you at some point have to erase page 0. Page 0 contains the vector table and the address of the reset handler, and if you get a power loss right after having erased this, the chip will be bricked. If you can live with this risk, you can do a softdevice upgrade by making sure CLENR0 is not set when flashing it, essentially making all code part of code region 0, and then write a bootloader that can receive a softdevice somewhere in flash or externally, erase the one that's on the chip, copy in the new one, receive a new application and copy that in as well. This is not trivial, but should be doable.
The only way to safely replace or upgrade the softdevice right now is to use the SWD interface.