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

Smart Remote 3 nRF52 v1.2 building

I try to build your an example Smart Remote 3 nRF52 v1.2 in Keil v5.34 and I have some errors.

In the case of nRF52832_xxAA (Target: PCA63519-SR3_nRF52832_Shield) I have such error:

...
...
...
linking...
.\_build\PCA63519-SR3_nRF52832_Shield.axf: error: L6050U: The code size of this image (207308 bytes) exceeds the maximum allowed for this version of the linker.
Finished: 0 information, 0 warning, 0 error and 1 fatal error messages.
".\_build\PCA63519-SR3_nRF52832_Shield.axf" - 1 Error(s), 0 Warning(s).
Target not created.

In the case of nRF52840_xxAA (Target: PCA63519-SR3_nRF52832_Shield) I have such errors and many warnings:

...
...
...
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(42): warning:  #47-D: incompatible redefinition of macro "POWER_FEATURE_RAM_REGISTERS_COUNT"  (declared at line 42 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define POWER_FEATURE_RAM_REGISTERS_COUNT       9
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(64): warning:  #47-D: incompatible redefinition of macro "GPIO_COUNT"  (declared at line 62 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define GPIO_COUNT 2
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(162): warning:  #47-D: incompatible redefinition of macro "SPIM_COUNT"  (declared at line 160 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define SPIM_COUNT 4
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(174): warning:  #47-D: incompatible redefinition of macro "SPIM0_EASYDMA_MAXCNT_SIZE"  (declared at line 170 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define SPIM0_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(175): warning:  #47-D: incompatible redefinition of macro "SPIM1_EASYDMA_MAXCNT_SIZE"  (declared at line 171 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define SPIM1_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(176): warning:  #47-D: incompatible redefinition of macro "SPIM2_EASYDMA_MAXCNT_SIZE"  (declared at line 172 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define SPIM2_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(183): warning:  #47-D: incompatible redefinition of macro "SPIS0_EASYDMA_MAXCNT_SIZE"  (declared at line 178 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define SPIS0_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(184): warning:  #47-D: incompatible redefinition of macro "SPIS1_EASYDMA_MAXCNT_SIZE"  (declared at line 179 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define SPIS1_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(185): warning:  #47-D: incompatible redefinition of macro "SPIS2_EASYDMA_MAXCNT_SIZE"  (declared at line 180 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define SPIS2_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(195): warning:  #47-D: incompatible redefinition of macro "TWIM0_EASYDMA_MAXCNT_SIZE"  (declared at line 190 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define TWIM0_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(196): warning:  #47-D: incompatible redefinition of macro "TWIM1_EASYDMA_MAXCNT_SIZE"  (declared at line 191 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define TWIM1_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(202): warning:  #47-D: incompatible redefinition of macro "TWIS0_EASYDMA_MAXCNT_SIZE"  (declared at line 197 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define TWIS0_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(203): warning:  #47-D: incompatible redefinition of macro "TWIS1_EASYDMA_MAXCNT_SIZE"  (declared at line 198 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define TWIS1_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(211): warning:  #47-D: incompatible redefinition of macro "UARTE_COUNT"  (declared at line 206 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define UARTE_COUNT 2
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(213): warning:  #47-D: incompatible redefinition of macro "UARTE0_EASYDMA_MAXCNT_SIZE"  (declared at line 208 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define UARTE0_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(249): warning:  #47-D: incompatible redefinition of macro "PWM_COUNT"  (declared at line 243 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define PWM_COUNT 4
..\..\..\..\..\..\components\libraries\twi_mngr\nrf_twi_mngr.c: 16 warnings, 0 errors
compiling hal_nfc_t2t.c...
..\..\..\..\..\..\components\nfc\t2t_lib\hal_t2t\hal_nfc_t2t.c(584): error:  #20: identifier "NFCT_ERRORSTATUS_NFCFIELDTOOWEAK_Msk" is undefined
      NRF_NFCT->ERRORSTATUS = NRF_NFCT_ERRORSTATUS_ALL;
..\..\..\..\..\..\components\nfc\t2t_lib\hal_t2t\hal_nfc_t2t.c(584): error:  #20: identifier "NFCT_ERRORSTATUS_NFCFIELDTOOSTRONG_Msk" is undefined
      NRF_NFCT->ERRORSTATUS = NRF_NFCT_ERRORSTATUS_ALL;
..\..\..\..\..\..\components\nfc\t2t_lib\hal_t2t\hal_nfc_t2t.c(733): error:  #20: identifier "NFCT_ERRORSTATUS_NFCFIELDTOOWEAK_Msk" is undefined
          NRF_NFCT->ERRORSTATUS    = NRF_NFCT_ERRORSTATUS_ALL;
..\..\..\..\..\..\components\nfc\t2t_lib\hal_t2t\hal_nfc_t2t.c(733): error:  #20: identifier "NFCT_ERRORSTATUS_NFCFIELDTOOSTRONG_Msk" is undefined
          NRF_NFCT->ERRORSTATUS    = NRF_NFCT_ERRORSTATUS_ALL;
..\..\..\..\..\..\components\nfc\t2t_lib\hal_t2t\hal_nfc_t2t.c(781): error:  #20: identifier "NFCT_ERRORSTATUS_NFCFIELDTOOWEAK_Msk" is undefined
          NRF_NFCT->ERRORSTATUS = NRF_NFCT_ERRORSTATUS_ALL;
..\..\..\..\..\..\components\nfc\t2t_lib\hal_t2t\hal_nfc_t2t.c(781): error:  #20: identifier "NFCT_ERRORSTATUS_NFCFIELDTOOSTRONG_Msk" is undefined
          NRF_NFCT->ERRORSTATUS = NRF_NFCT_ERRORSTATUS_ALL;
..\..\..\..\..\..\components\nfc\t2t_lib\hal_t2t\hal_nfc_t2t.c: 0 warnings, 6 errors
...
...
...
".\_build\PCA63519-SR3_nRF52832_Shield.axf" - 6 Error(s), 673 Warning(s).
Target not created.

In the case of nRF52832_xxAA (Target: PCA20023-SR3_nRF52832_Product_Example) I have such error:

...
...
...
linking...
.\_build\PCA20023-SR3_nRF52832_Product_Example.axf: error: L6050U: The code size of this image (205476 bytes) exceeds the maximum allowed for this version of the linker.
Finished: 0 information, 0 warning, 0 error and 1 fatal error messages.
".\_build\PCA20023-SR3_nRF52832_Product_Example.axf" - 1 Error(s), 0 Warning(s).
Target not created.

In the case of nRF52840_xxAA (Target: PCA20023-SR3_nRF52832_Product_Example) I have such errors and many warnings:

...
...
...
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(42): warning:  #47-D: incompatible redefinition of macro "POWER_FEATURE_RAM_REGISTERS_COUNT"  (declared at line 42 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define POWER_FEATURE_RAM_REGISTERS_COUNT       9
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(64): warning:  #47-D: incompatible redefinition of macro "GPIO_COUNT"  (declared at line 62 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define GPIO_COUNT 2
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(162): warning:  #47-D: incompatible redefinition of macro "SPIM_COUNT"  (declared at line 160 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define SPIM_COUNT 4
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(174): warning:  #47-D: incompatible redefinition of macro "SPIM0_EASYDMA_MAXCNT_SIZE"  (declared at line 170 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define SPIM0_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(175): warning:  #47-D: incompatible redefinition of macro "SPIM1_EASYDMA_MAXCNT_SIZE"  (declared at line 171 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define SPIM1_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(176): warning:  #47-D: incompatible redefinition of macro "SPIM2_EASYDMA_MAXCNT_SIZE"  (declared at line 172 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define SPIM2_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(183): warning:  #47-D: incompatible redefinition of macro "SPIS0_EASYDMA_MAXCNT_SIZE"  (declared at line 178 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define SPIS0_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(184): warning:  #47-D: incompatible redefinition of macro "SPIS1_EASYDMA_MAXCNT_SIZE"  (declared at line 179 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define SPIS1_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(185): warning:  #47-D: incompatible redefinition of macro "SPIS2_EASYDMA_MAXCNT_SIZE"  (declared at line 180 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define SPIS2_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(195): warning:  #47-D: incompatible redefinition of macro "TWIM0_EASYDMA_MAXCNT_SIZE"  (declared at line 190 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define TWIM0_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(196): warning:  #47-D: incompatible redefinition of macro "TWIM1_EASYDMA_MAXCNT_SIZE"  (declared at line 191 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define TWIM1_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(202): warning:  #47-D: incompatible redefinition of macro "TWIS0_EASYDMA_MAXCNT_SIZE"  (declared at line 197 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define TWIS0_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(203): warning:  #47-D: incompatible redefinition of macro "TWIS1_EASYDMA_MAXCNT_SIZE"  (declared at line 198 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define TWIS1_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(211): warning:  #47-D: incompatible redefinition of macro "UARTE_COUNT"  (declared at line 206 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define UARTE_COUNT 2
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(213): warning:  #47-D: incompatible redefinition of macro "UARTE0_EASYDMA_MAXCNT_SIZE"  (declared at line 208 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define UARTE0_EASYDMA_MAXCNT_SIZE 16
C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52840_peripherals.h(249): warning:  #47-D: incompatible redefinition of macro "PWM_COUNT"  (declared at line 243 of "C:\Users\User\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.15.0\Device\Include\nrf52832_peripherals.h")
  #define PWM_COUNT 4
..\..\..\..\..\..\components\libraries\twi_mngr\nrf_twi_mngr.c: 16 warnings, 0 errors
...
...
...
linking...
.\_build\PCA20023-SR3_nRF52832_Product_Example.axf: error: L6050U: The code size of this image (205636 bytes) exceeds the maximum allowed for this version of the linker.
Finished: 0 information, 0 warning, 0 error and 1 fatal error messages.
".\_build\PCA20023-SR3_nRF52832_Product_Example.axf" - 1 Error(s), 673 Warning(s).
Target not created.

If I choose nRF52810_xxAA, then I have even more errors and warnings. Although my goal is to use nRF52810/nRF52805 chip.

Could you clarify how I can build it to avoid those errors and warnings? Why do I have them in the case of building the default example? It seems that such example should be possible to built out of the box. So, before I can modify it for my goals I would like to be able to build the provided example. And it worth to mention that I can build other examples from "examples" directory in Keil.
Before I used nRF Connect SDK, and not nRF5 SDK, but as I understood, memory footprint is significantly smaller for nRF5 SDK and SoftDevices, which is critical in the case of using nRF52805 chip. So now I have to build Smart Remote 3 nRF52 v1.2 example.

Parents Reply Children
No Data
Related