Skip to content

Commit 92e5c0d

Browse files
MarekPietakapi-no
authored andcommitted
applications: nrf_desktop: Enable GATT long (reliable) writes
Support for GATT long (reliable) writes allows to perform fwupd DFU over Bluetooth LE with GATT Clients that do not perform MTU exchange. This is needed to support fwupd BLE DFU with ChromeOS and Floss. Jira: NCSDK-32719 Signed-off-by: Marek Pieta <[email protected]> Signed-off-by: Divya Pillai <[email protected]>
1 parent 52fa753 commit 92e5c0d

File tree

9 files changed

+34
-0
lines changed

9 files changed

+34
-0
lines changed

applications/nrf_desktop/configuration/nrf52840dk_nrf52840/prj_fast_pair.conf

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,10 @@ CONFIG_BT_CTLR_TX_PWR_DYNAMIC_CONTROL=y
130130
CONFIG_BT_ATT_TX_COUNT=4
131131
CONFIG_BT_CONN_TX_MAX=4
132132

133+
# Support for GATT long (reliable) writes allows to perform fwupd DFU over Bluetooth LE with GATT
134+
# Clients that do not perform MTU exchange. Needed to support fwupd BLE DFU with ChromeOS and Floss.
135+
CONFIG_BT_ATT_PREPARE_COUNT=2
136+
133137
CONFIG_BT_FAST_PAIR=y
134138
CONFIG_BT_FAST_PAIR_USE_CASE_MOUSE=y
135139
CONFIG_BT_FAST_PAIR_LOG_LEVEL_DBG=y

applications/nrf_desktop/configuration/nrf52840dk_nrf52840/prj_wwcb.conf

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,10 @@ CONFIG_BT_CTLR_TX_PWR_DYNAMIC_CONTROL=y
101101
CONFIG_BT_ATT_TX_COUNT=4
102102
CONFIG_BT_CONN_TX_MAX=4
103103

104+
# Support for GATT long (reliable) writes allows to perform fwupd DFU over Bluetooth LE with GATT
105+
# Clients that do not perform MTU exchange. Needed to support fwupd BLE DFU with ChromeOS and Floss.
106+
CONFIG_BT_ATT_PREPARE_COUNT=2
107+
104108
CONFIG_ENTROPY_CC3XX=n
105109

106110
CONFIG_FW_INFO=y

applications/nrf_desktop/configuration/nrf52840gmouse_nrf52840/prj_fast_pair.conf

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,10 @@ CONFIG_BT_CTLR_TX_PWR_DYNAMIC_CONTROL=y
172172
CONFIG_BT_ATT_TX_COUNT=4
173173
CONFIG_BT_CONN_TX_MAX=4
174174

175+
# Support for GATT long (reliable) writes allows to perform fwupd DFU over Bluetooth LE with GATT
176+
# Clients that do not perform MTU exchange. Needed to support fwupd BLE DFU with ChromeOS and Floss.
177+
CONFIG_BT_ATT_PREPARE_COUNT=2
178+
175179
CONFIG_BT_FAST_PAIR=y
176180
CONFIG_BT_FAST_PAIR_USE_CASE_MOUSE=y
177181
CONFIG_BT_FAST_PAIR_LOG_LEVEL_DBG=y

applications/nrf_desktop/configuration/nrf52840gmouse_nrf52840/prj_release_fast_pair.conf

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,10 @@ CONFIG_BT_CTLR_TX_PWR_DYNAMIC_CONTROL=y
166166
CONFIG_BT_ATT_TX_COUNT=4
167167
CONFIG_BT_CONN_TX_MAX=4
168168

169+
# Support for GATT long (reliable) writes allows to perform fwupd DFU over Bluetooth LE with GATT
170+
# Clients that do not perform MTU exchange. Needed to support fwupd BLE DFU with ChromeOS and Floss.
171+
CONFIG_BT_ATT_PREPARE_COUNT=2
172+
169173
CONFIG_BT_FAST_PAIR=y
170174
CONFIG_BT_FAST_PAIR_USE_CASE_MOUSE=y
171175
CONFIG_BT_PRIVACY=y

applications/nrf_desktop/configuration/nrf52kbd_nrf52832/prj_release_fast_pair.conf

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,10 @@ CONFIG_BT_CTLR_TX_PWR_DYNAMIC_CONTROL=y
132132
CONFIG_BT_ATT_TX_COUNT=6
133133
CONFIG_BT_CONN_TX_MAX=6
134134

135+
# Support for GATT long (reliable) writes allows to perform fwupd DFU over Bluetooth LE with GATT
136+
# Clients that do not perform MTU exchange. Needed to support fwupd BLE DFU with ChromeOS and Floss.
137+
CONFIG_BT_ATT_PREPARE_COUNT=2
138+
135139
CONFIG_BT_FAST_PAIR=y
136140
# The Google Fast Pair specification does not support the keyboard device type.
137141
# Due to this limitation, this configuration uses the generic input device use case.

applications/nrf_desktop/configuration/nrf54l15dk_nrf54l05_cpuapp/prj_release_fast_pair.conf

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,10 @@ CONFIG_BT_CTLR_TX_PWR_DYNAMIC_CONTROL=y
107107
CONFIG_BT_ATT_TX_COUNT=4
108108
CONFIG_BT_CONN_TX_MAX=4
109109

110+
# Support for GATT long (reliable) writes allows to perform fwupd DFU over Bluetooth LE with GATT
111+
# Clients that do not perform MTU exchange. Needed to support fwupd BLE DFU with ChromeOS and Floss.
112+
CONFIG_BT_ATT_PREPARE_COUNT=2
113+
110114
CONFIG_STREAM_FLASH=y
111115
CONFIG_IMG_MANAGER=y
112116
CONFIG_MCUBOOT_IMG_MANAGER=y

applications/nrf_desktop/configuration/nrf54l15dk_nrf54l10_cpuapp/prj_fast_pair.conf

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,10 @@ CONFIG_BT_CTLR_TX_PWR_DYNAMIC_CONTROL=y
121121
CONFIG_BT_ATT_TX_COUNT=4
122122
CONFIG_BT_CONN_TX_MAX=4
123123

124+
# Support for GATT long (reliable) writes allows to perform fwupd DFU over Bluetooth LE with GATT
125+
# Clients that do not perform MTU exchange. Needed to support fwupd BLE DFU with ChromeOS and Floss.
126+
CONFIG_BT_ATT_PREPARE_COUNT=2
127+
124128
CONFIG_BT_FAST_PAIR=y
125129
# Use PSA crypto APIs for improved security
126130
CONFIG_BT_FAST_PAIR_CRYPTO_PSA=y

applications/nrf_desktop/configuration/nrf54l15dk_nrf54l15_cpuapp/prj_fast_pair.conf

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,10 @@ CONFIG_BT_CTLR_TX_PWR_DYNAMIC_CONTROL=y
121121
CONFIG_BT_ATT_TX_COUNT=4
122122
CONFIG_BT_CONN_TX_MAX=4
123123

124+
# Support for GATT long (reliable) writes allows to perform fwupd DFU over Bluetooth LE with GATT
125+
# Clients that do not perform MTU exchange. Needed to support fwupd BLE DFU with ChromeOS and Floss.
126+
CONFIG_BT_ATT_PREPARE_COUNT=2
127+
124128
CONFIG_BT_FAST_PAIR=y
125129
# Use PSA crypto APIs for improved security
126130
CONFIG_BT_FAST_PAIR_CRYPTO_PSA=y

doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -305,6 +305,8 @@ nRF Desktop
305305
In the |NCS|, the Partition Manager is enabled by default for single-image sysbuild builds.
306306
The static memory map ensures control over settings partition placement and size.
307307
The introduced static memory maps may not be consistent with the ``storage_partition`` defined by the board-level DTS configuration.
308+
* Support for GATT long (reliable) writes (:kconfig:option:`CONFIG_BT_ATT_PREPARE_COUNT`) to Fast Pair and Works With ChromeBook (WWCB) configurations.
309+
This allows performing :ref:`fwupd <nrf_desktop_fwupd>` DFU image upload over Bluetooth LE with GATT clients that do not perform MTU exchange (for example, ChromeOS using the Floss Bluetooth stack).
308310

309311
* Updated:
310312

0 commit comments

Comments
 (0)