3 Replies Latest reply on Sep 25, 2020 4:40 AM by SudheeshK_26

    Fixed Stack v Upgradeable Stack


      I'm in the process of implementing OTA in some of our existing BLE products.  These are devices that are likely to be out in the field operational for up to 10 years, and I'm guessing early on they'll probably need one or two software upgrades to iron out a few bugs, but beyond that I would think they'll be reasonably stable.


      I'm weighing up the pro's and con's of the Fixed Stack v Upgradeable Stack options.  As I understand it, if I want to go with the Upgradeable Stack option I'm most likely going to have to go with a 256KB PSOC IC (we're currently using the CY8C4127LQI-BL473 devices), as most of my devices are using up > 50% of available flash.  Alternatively, I could go with an external memory chip I guess.


      If I stick with the Fixed Stack approach, I know I'll not be able to update my stack and add new services, or make modifications to the existing services.  So, I'm limited to only making changes to the Bootloadable code.


      What I'm not sure about is the implications of BLE component upgrades within PSOC Creator, and how this will impact my ability to update the firmware on devices already out in the field.  For example, I'm currently coding with the V3.66 BLE component.  If in 2 years time I need to update the firmware on a device OTA, I am assuming as long as I don't make any changes to the Bootloader code (and not update the BLE component for example), then I can just update the bootloadable code and copy across the new firmware to the device and everything should be OK, correct?  So, in theory, as long as V3.66 BLE component remains available, I can continue supporting devices that were originally programmed with a bootloader using that version?


      Are there any other issues that I might get caught out by if I go with a Fixed Stack OTA option?


      I don't want to upgrade to the 256KB chips unless I really have to, as there is a cost penalty that I'd like to avoid if I can get away with it.