The first option for dynamic sizing sounds good. It seems like that's a good option (allowing the softdevice to change as required).
However there's quite a bit of work to do to make this usable - for instance the RAM needed actually has to be computed, and the options have to be saved somewhere. I guess dedicating some area of flash memory to it would be a good idea.
I feel like just having separate firmware images would be far easier though. And it's something I need to do more anyway, and for instance many people would prefer not to have a networking capability inside Puck.js but to instead have a bunch of extra storage space.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
The first option for dynamic sizing sounds good. It seems like that's a good option (allowing the softdevice to change as required).
However there's quite a bit of work to do to make this usable - for instance the RAM needed actually has to be computed, and the options have to be saved somewhere. I guess dedicating some area of flash memory to it would be a good idea.
I feel like just having separate firmware images would be far easier though. And it's something I need to do more anyway, and for instance many people would prefer not to have a networking capability inside Puck.js but to instead have a bunch of extra storage space.