Skip to content

Commit 8038bae

Browse files
committed
sample/dfu/fw_loader/usb_mcumgr: add sample doc
Doc added (pattern for ble_mcumgr repalyed). Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
1 parent d98a9ef commit 8038bae

2 files changed

Lines changed: 73 additions & 9 deletions

File tree

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
.. _fw_loader_usb_mcumgr:
2+
3+
Minimal USB virtual serial port SMP firmware loader
4+
###################################################
5+
6+
.. contents::
7+
:local:
8+
:depth: 2
9+
10+
This sample provides the minimal and recommended configuration for the Firmware Loader application to run on the :zephyr:board:`nrf54lm20dk`.
11+
It uses code from Zephyr's :zephyr:code-sample:`smp-svr` sample to enable the USB serial Simple Management Protocol (SMP) server functionality.
12+
13+
This sample is not intended to function as a standalone sample.
14+
Instead, it serves as a starting point for developing a custom Firmware Loader application that works with the MCUboot bootloader.
15+
16+
.. _fw_loader_usb_minimal_overview:
17+
18+
Requirements
19+
************
20+
21+
The sample supports the following development kit:
22+
23+
.. table-from-sample-yaml::
24+
25+
.. _fw_loader_usb_minimal_build_run:
26+
27+
Overview
28+
********
29+
30+
The application uses the SMP over Bluetooth LE to perform firmware updates and manage device operations.
31+
It is optimized for minimal memory usage and contains only the essential functionalities required for firmware loading.
32+
33+
The firmware loader over USB CDC ACM virtual serial port accepts SMP commands for:
34+
35+
* Image upload and management
36+
* Device information queries
37+
* Bootloader information
38+
39+
.. _fw_loader_usb_minimal_reqs:
40+
41+
Building and running
42+
********************
43+
44+
This sample is not intended for standalone building.
45+
It is automatically included and built when the following Kconfig options are enabled in a project configuration:
46+
47+
* :kconfig:option:`SB_CONFIG_BOOTLOADER_MCUBOOT`
48+
* :kconfig:option:`SB_CONFIG_MCUBOOT_MODE_FIRMWARE_UPDATER`
49+
* :kconfig:option:`SB_CONFIG_FIRMWARE_LOADER_IMAGE_USB_MCUMGR`
50+
51+
52+
Testing
53+
=======
54+
55+
This sample is not intended for standalone testing.

samples/dfu/single_slot/README.rst

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,8 @@ Building and running
3434

3535
.. |sample path| replace:: :file:`samples/dfu/single_slot`
3636

37-
Sample by defult is building with :ref:`fw_loader_ble_mcumgr` firmware loader image.
38-
To build with :ref:`fw_loader_usb_mcumgr` firmware loader image, use the following provide FILE_SUFFIX=usb to the build command.
37+
By default, the sample builds with the :ref:`fw_loader_ble_mcumgr` firmware loader image.
38+
To build with the :ref:`fw_loader_usb_mcumgr` firmware loader image, append ``FILE_SUFFIX=usb`` to the build command.
3939

4040
.. include:: /includes/build_and_run.txt
4141

@@ -52,13 +52,22 @@ After programming the sample to your development kit, perform the following step
5252

5353
#. Build a second version of the sample.
5454
#. Enter the firmware loader mode by holding the **Button 0** on your development kit while you reset the device.
55-
#. For Bluetooth firmware loader: Open the `nRF Connect Device Manager`_ mobile app to perform DFU over Bluetooth LE.
56-
The firmware loader advertises itself as **FW loader** and accepts MCUmgr image upload.
57-
#. Send the generated update package for the second version of the sample.
58-
See :ref:`ug_nrf54l_developing_ble_fota_steps_testing` for details on how to use the mobile app to perform the DFU.
59-
#. For USB CDC ACM serial firmware loader: Use `nRF Util mcu-manager serial` to perform DFU over serial port.
60-
#. Send the generated update package for the second version of the sample.
61-
See `nRF Util mcu-manager serial`_ for details on how to use the command to perform the DFU.
55+
56+
a. Bluetooth firmware loader:
57+
58+
Open the `nRF Connect Device Manager`_ mobile app to perform DFU over Bluetooth® LE.
59+
60+
* The firmware loader advertises itself as *FW loader* and accepts MCUmgr image upload.
61+
* Send the generated update package for the second version of the sample.
62+
See :ref:`ug_nrf54l_developing_ble_fota_steps_testing` for details on how to use the mobile app to perform the DFU.
63+
64+
b. USB CDC ACM serial firmware loader:
65+
66+
Use `nRF Util mcu-manager serial` to perform DFU over serial port.
67+
68+
* Send the generated update package for the second version of the sample.
69+
See `nRF Util mcu-manager serial`_ for details on how to use the command to perform the DFU.
70+
6271
#. Verify that the printed build time corresponds to the new version once the update is complete and the device reboots into the main application.
6372

6473
Dependencies

0 commit comments

Comments
 (0)