This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Where I can find the migration guide from sdk 15.2 to sdk 15.3, please?

Hi,

Since there are lots of changes in doc website, I can not locate the migration guide from sdk 15.2 to 15.3. Please anyone show me? Thanks!

Vincent

Parents Reply Children
  • HI Simon,

    Thanks for your asking. Well, its been a while, and I believe APIs are changed as follows:

    1. nrf_mpu_lib, the old name is nrf_mpu

    2. some definitions are added in sdk_config.h, including: 

    NRF_CRYPTO_BACKEND_CC310_BL_INTERRUPTS_ENABLED

    NRF_DFU_IN_APP

    NRF_DFU_APP_ACCEPT_SAME_VERSION

    NRF_MPU_* all renamed to NRF_MPU_LIB*

    NRFX_USBD_CONFIG_ISO_IN_ZLP

    NRFX_USBD_CONFIG_DMASCHEDULER_ISO_BOOST

    NRFX_USBD_CONFIG_DMASCHEDULER_MODE

    Still, these are just what I found by comparing the sdk_config.h and looking into them one by one. It really costs. I am not sure whether I found all of them. Its quite bad experience when there is no doc related to these changes. It would be better to document them even it is rarely in use.

    Thanks

  • I am sorry if you've had a bad experience, and I can see that the changes may cause some trouble. Optimally, as I see it, you should be able move your project (along with the driver/library linking information) directly from SDK 15.2 to SDK 15.3, and the application should run without any modifications. However, if the sdk_config.h definitions have changed inside a function, the old sdk_config file won't be sufficient. 

    I am sure there are reasons behind these changes, but I am not sure what they are. Of the changes you listed, only one is an API change, specifically the functions in nrf_mpu.h. I searched through the entire SDK, and saw that these functions are never called directly. Either through nrf_stack_guard_init() in nrf_stack_guard.c or task_stack_protect() in task_manager.c, and if your project uses any of these functions you will be fine. It may be that the SDK developers have allowed API changes in this instance due to its limited direct usage.

    Again, this is not optimal and I am sorry for the inconvenience you've experienced.

    Best regards,

    Simon

Related