Migrating nRF53 Zigbee project to nRF54 results in ZBOSS errors

Hi,

I try to migrate a working nRF53 Zigbee project from SDK 2.7 to the latest SDK and an nRF54. As described here, I also switched to Zigbee R23. The project structure is shown below.

But the build exit with the error message

C:/Users/konta/Desktop/BeeLight/firmware/ncs-zigbee/subsys/osif/zb_nrf_nvram.c:16:32: error: 'PM_ZBOSS_NVRAM_SIZE' undeclared here (not in a function); did you mean 'PM_SRAM_SIZE'?
   16 | #define ZBOSS_NVRAM_PAGE_SIZE (PM_ZBOSS_NVRAM_SIZE / CONFIG_ZIGBEE_NVRAM_PAGE_COUNT)
      |                                ^~~~~~~~~~~~~~~~~~~
C:/Users/konta/Desktop/BeeLight/firmware/zephyr/include/zephyr/toolchain/gcc.h:87:52: note: in definition of macro 'BUILD_ASSERT'
   87 | #define BUILD_ASSERT(EXPR, MSG...) _Static_assert((EXPR), "" MSG)
      |                                                    ^~~~
C:/Users/konta/Desktop/BeeLight/firmware/ncs-zigbee/subsys/osif/zb_nrf_nvram.c:18:15: note: in expansion of macro 'ZBOSS_NVRAM_PAGE_SIZE'
   18 | BUILD_ASSERT((ZBOSS_NVRAM_PAGE_SIZE % PHYSICAL_PAGE_SIZE) == 0,
      |               ^~~~~~~~~~~~~~~~~~~~~
C:/Users/konta/Desktop/BeeLight/firmware/zephyr/include/zephyr/toolchain/gcc.h:87:51: error: expression in static assertion is not an integer
   87 | #define BUILD_ASSERT(EXPR, MSG...) _Static_assert((EXPR), "" MSG)
      |                                                   ^
C:/Users/konta/Desktop/BeeLight/firmware/ncs-zigbee/subsys/osif/zb_nrf_nvram.c:18:1: note: in expansion of macro 'BUILD_ASSERT'
   18 | BUILD_ASSERT((ZBOSS_NVRAM_PAGE_SIZE % PHYSICAL_PAGE_SIZE) == 0,
      | ^~~~~~~~~~~~
C:/Users/konta/Desktop/BeeLight/firmware/ncs-zigbee/subsys/osif/zb_nrf_nvram.c: In function 'zb_osif_nvram_init':
C:/Users/konta/Desktop/BeeLight/firmware/ncs-zigbee/subsys/osif/zb_nrf_nvram.c:39:31: error: 'PM_ZBOSS_NVRAM_ID' undeclared (first use in this function)
   39 |         ret = flash_area_open(PM_ZBOSS_NVRAM_ID, &fa);
      |                               ^~~~~~~~~~~~~~~~~
C:/Users/konta/Desktop/BeeLight/firmware/ncs-zigbee/subsys/osif/zb_nrf_nvram.c:39:31: note: each undeclared identifier is reported only once for each function it appears in
C:/Users/konta/Desktop/BeeLight/firmware/ncs-zigbee/subsys/osif/zb_nrf_nvram.c:45:31: error: 'PM_ZBOSS_PRODUCT_CONFIG_ID' undeclared (first use in this function)
   45 |         ret = flash_area_open(PM_ZBOSS_PRODUCT_CONFIG_ID, &fa_pc);
      |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~
C:/Users/konta/Desktop/BeeLight/firmware/ncs-zigbee/subsys/osif/zb_nrf_nvram.c: In function 'zb_get_nvram_page_length':
C:/Users/konta/Desktop/BeeLight/firmware/ncs-zigbee/subsys/osif/zb_nrf_nvram.c:55:1: warning: control reaches end of non-void function [-Wreturn-type]
   55 | }
      | ^
[449/492] Building C object modules/nrfxlib/nrf_802154/nrf_802154/driver/CMakeFiles/nrf-802154-driver.dir/src/nrf_802154_trx_dppi.c.obj

What causes this issue and how can I fix it?

Parents Reply
  • Hi,

    No, unfortunately not. Since there's no way for me to reproduce the issue within NCS with a DK, I'm limited in what recommendations I can give other than those initially given w.r.t migration notes. NCS 2.7.0 to NCS 3.0.0 is a big leap, so incrementally updating the features from your working application to a newer version and gradually checking that it works together with comparing any of the relevant R23 Zigbee samples with 54L15DK configuration is my best recommendation until I hear back internally.

    Kind regards,
    Andreas

Children
Related