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

SDK15.3 buttonless dfu example cant get into dfu mode on pca10040 using armgcc build.

nRF Connect log shows DFU mode cannot be achieved. Same test on SDK15.2 worked.

Comparing the ld files of 15.2 and 15.3 shows uicr_bootloader_start_address and uicr_mbr_params_page

are quite different. 

SDK15.2

uicr_bootloader_start_address (r) : ORIGIN = 0x100010014, LENGTH =0x4

uicr_mbr_params_page (r) : ORIGIN = 0x10001018, LENGTH = 0x4

SDK 15.3

uicr_bootloader_start_address (r) : ORIGIN = 0x00000FF8, LENGTH =0x4

uicr_mbr_params_page (r) : ORIGIN = 0x00000FFC, LENGTH = 0x4

Is this why SDK15.3 DFU is not working?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
nRF Connect, 2019-09-13
Nordic_Buttonless (D3:CD:8A:FD:E1:51)
V 12:20:27.822 Connecting to D3:CD:8A:FD:E1:51...
D 12:20:27.822 gatt = device.connectGatt(autoConnect = false, TRANSPORT_LE, preferred PHY = LE 1M)
D 12:20:29.342 [Broadcast] Action received: android.bluetooth.device.action.ACL_CONNECTED
D 12:20:29.358 [Callback] Connection state changed with status: 0 and new state: CONNECTED (2)
I 12:20:29.358 Connected to D3:CD:8A:FD:E1:51
V 12:20:29.399 Discovering services...
D 12:20:29.399 gatt.discoverServices()
I 12:20:29.726 Connection parameters updated (interval: 7.5ms, latency: 0, timeout: 5000ms)
D 12:20:29.921 [Callback] Services discovered with status: 0
I 12:20:29.921 Services discovered
V 12:20:29.946 Generic Access (0x1800)
- Device Name [R W] (0x2A00)
- Appearance [R] (0x2A01)
- Peripheral Preferred Connection Parameters [R] (0x2A04)
- Central Address Resolution [R] (0x2AA6)
Generic Attribute (0x1801)
- Service Changed [I] (0x2A05)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX