-
SoftDevice : S110 7.1
-
SDK 7.2
-
Example : nrf51-ble-app-temp
-
Using IAR 7.1
(Before debugging with IAR, I downloaded both the bootloader.hex and s110 7.1 hex with nrfjprog.exe)
- Modified SDK files : bootloader_util_arm.c
(copied asm code SDK 8.1 since I use ICCARM, thanks to Vidar Berg for answering my prev question.)
-
Using nRFGo Studio 1.19.0
-
Board : PCA10001 V 2.0.0 (Rev. 2 MCU)
-
Test device : Nexus 5 (Android 5.1.1) and iPhone 6+ (iOS 8.4)
-
Toolbox App Version : 1.14.1 (at Nexus 5) & 2.1 (at iPhone 6+)
-
nRF Loader iOS App (Ver 1.0.0) : Cannot scan the board
/************************/
Hi, before defining "BLE_DFU_APP_SUPPORT" the example worked well.
However, after defining, both Tool kit app showed error.
At iOS,
The "nRF Loader" app doesn't scan the board.
Where as, at Android
I selected "NO".
What could be the reason?
Added 8, July, 2015 :
I noticed that, at debugging mode and after calling on_rw_auth_req (at ble_dfu.c),
the board falls into a HardFault_handler.
I couldn't check the returned error number from on_ctrl_pt_write.
Added : 12, July, 2015 : I tried to open your bootloader IAR project.
However, it showed this message 6 times.
So, I followed your linker script settings manually.
I also changed the ble_stack_init as well.
Thanks to you, if there isn't application at memory 0x16000,
the firmware update over the air (DFU) is managed successfully.
I tested with the test devices mentioned above (Nexus 5 and iPhone 6+).
After downloading the bootloader firmware,
I changed the linker setting of the nrf51-ble-app-temp example.
- Is this setting in the nrf51-ble-app-temp example's linker script is fine?
I took a guess using this memory layout.
- The hilarious thing is that, after downloading this nrf51-ble-app-temp example,
I tried the DFU using the nRF Toolbox app and failed.
With detail, when using the Nexus 5, it sometimes update the firmware.
(Edited : Now the Nexus 5 works well.)
Whereas when using the iPhone 6+, the app kept shows "waiting".
I placed a breakpoint at the bootloader project after the board was advertising HRS.
I noticed that, when using the iPhone 6+, after requesting upload, the breakpoint didn't triggered.
The firmware was kept running at the nrf51-ble-app-temp example.
However, it did not lost connection together.
So, what could be the problem?
-Regards, Mango922