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.