If you have these updated tools, programming can be done as usual. If these tools are not available, a separate programming tool will be
distributed with the release.
Bugfixes
Link layer
SVC handler now checks SPSEL and will use the Process Stack Pointer ( ) if . Previously the SVC handler onlyPSP SPSEL=1
supported the use of the Main Stack Pointer ( ) and using the would result in undefined behavior (NRFFOETT-317,MSP PSP
NRFFOETT-426, FORT-787).
Fixed hard fault handler issue that could corrupt the register or give invalid return address if hard fault triggered whenLR
SoftDevice was disabled (NRFFOETT-478, FORT-793).
ECB, CCM and AAR peripherals are now properly reset at SoftDevice enable (DRGN-3305, FORT-797).
Fixed an issue which could lead to accepting packets with MIC failure, or incorrectly disconnect due to MIC failure (DRGN-3177).
Fixed an issue where the VERSION_IND procedure could cause links to be disconnected (DRGN-3926).
Fixed issue where control procedures initiated from master and slave simultaneously could trigger an assert (DRGN-3945).
Fixed an issue where, under certain conditions, a call to could remain blocked until the next scansd_ble_gap_scan_stop()
interval (DRGN-3936).
Fixed an issue where, under certain conditions, and especially with heavy data traffic ongoing, an encryption procedure could fail
leading to a disconnection (DRGN-3880).
GAP
Directed advertising packets not matching the scanner's address are now ignored and not forwarded up to the application
(DRGN-4047, NRFFOETT-764).
Security: Fixed an issue where the SoftDevice would assert if sd_ble_gap_sec_params_reply() was called after disconnect
(DRGN-3129).
Security: Fixed the cause of a possible assert during the pairing procedure (DRGN-3756, DRGN-3371, DRGN-3320).
Security: Starting encryption while sending data packets at the same time can no longer cause the encryption procedure to fail
and disconnect the link (DRGN-4084).
Security: Pending Security Requests from peripherals no longer prevent the central from initiating authentication procedures on
other links (DRGN-4134).
GATTS
Fixed an issue where the SoftDevice would sometimes assert if the peer disconnected during the Write Long Characteristic
Values and Reliable Writes procedures (DRGN-3759).
System attributes can now be written using the Write Long Characteristic Values or Reliable Writes procedures (DRGN-3493).
Fixed an issue where the SoftDevice would assert if the peer canceled the Write Long Characteristic Values and Reliable Writes
procedures (DRGN-3492).
Changes
SoftDevice
API facing event structures and functions now consistenly use in their names (DRGN-2232).evt
The API now requires the application forwarding address (FORT-822).sd_softdevice_forward_to_application()
SVC numbers changed (DRGN-3147, FORT-798, FORT-836).
Link Layer
The Link Layer Version Parameter, , has been updated as a result of Bluetooth spec 4.1 qualification (DRGN-3956).VersNr
BLE
now checks whether the UUID was previously added and therefore redundant (NRFFOETT-359,sd_ble_uuid_vs_add()
DRGN-2881).
Fixed inconsistent use of , and in API documentation. Also fixed inconsistent use of keyword in[in] [out] [in/out] const
API (DRGN-3440).
GAP
sd_ble_gap_scan_start() and will no longer return . No application retriessd_ble_gap_connect() NRF_ERROR_BUSY
are necessary anymore (DRGN-2997, DRGN-3831, DRGN-3309).
sd_ble_gap_device_name_get() now returns the full length of the name if the name is longer than the buffer provided
(DRGN-3009, DRGN-3133).
The GAP device name permissions can now be set to writable regardless of name length (DRGN-3551).
The peer address field has been removed from the event (DRGN-2638).BLE_GAP_EVT_DISCONNECTED
Security: Passkey missing responses during pairing using in BLE_GAP_AUTH_KEY_TYPE_NONE sd_ble_gap_auth_key_rep
are now fully supported (DRGN-2540, NRFFOETT-290).ly()
Documentation of and in clarified (NRFFOETT-451,min_conn_interval max_conn_interval ble_gap_conn_params_t
DRGN-1040).
The maximum slave latency, has been adjusted to 499 according to the 4.1 specificationBLE_GAP_CP_SLAVE_LATENCY_MAX
(DRGN-2392).