Skip to content

Commit b033d5b

Browse files
b-gentMirkoCovizzi
authored andcommitted
doc: Update documentation for v0.7.0
Release notes and other doc updates. Signed-off-by: Bartosz Gentkowski <bartosz.gentkowski@nordicsemi.no>
1 parent 992ae29 commit b033d5b

24 files changed

+330
-142
lines changed

doc/nrf-bm/conf.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818
# -- Project information -----------------------------------------------------
1919

20-
project = 'nRF Connect SDK Bare Metal option - 0.1.99'
20+
project = 'nRF Connect SDK Bare Metal option - 0.7.0'
2121
copyright = '2025, Nordic Semiconductor'
2222
author = 'Nordic Semiconductor'
2323

@@ -55,4 +55,4 @@
5555
# Add any paths that contain custom static files (such as style sheets) here,
5656
# relative to this directory. They are copied after the builtin static files,
5757
# so a file named "default.css" will overwrite the builtin "default.css".
58-
# html_static_path = ['../_static']
58+
html_static_path = ['_static', 'pdfs']

doc/nrf-bm/gen_docs.py

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,9 @@
99
static_dir = os.path.abspath("../_static") # Path to the _static directory
1010
requirements_path = os.path.join(script_dir, "requirements.txt") # Path to the requirements.txt file
1111
includes_dir = os.path.join(script_dir, "includes") # Path to the includes directory
12+
sample_dir = os.path.join(script_dir, "sample") # Path to the sample directory
13+
pdf_source_dir = os.path.abspath('../../subsys/softdevice/hex/s115') # Path to the PDF source directory
14+
pdf_destination_dir = os.path.join(source_dir, 'pdfs') # Destination directory within _static
1215
images_dir = os.path.join(script_dir, "images") # Path to the images directory
1316

1417
# Install packages from requirements.txt
@@ -21,16 +24,30 @@
2124

2225
# Create the source directory if it doesn't exist
2326
os.makedirs(source_dir, exist_ok=True)
27+
os.makedirs(pdf_destination_dir, exist_ok=True)
2428

25-
# Copy RST files
29+
# Copy RST files and maintain directory structure
2630
for root, dirs, files in os.walk(".", topdown=True):
2731
# Exclude the source directory from the search
2832
dirs[:] = [d for d in dirs if os.path.abspath(os.path.join(root, d)) != source_dir]
2933
for file in files:
3034
if file.endswith(".rst"):
3135
src_file_path = os.path.join(root, file)
32-
if os.path.abspath(src_file_path) != os.path.join(source_dir, file):
33-
shutil.copy2(src_file_path, source_dir)
36+
relative_path = os.path.relpath(root, ".")
37+
dest_dir = os.path.join(source_dir, relative_path)
38+
os.makedirs(dest_dir, exist_ok=True)
39+
shutil.copy2(src_file_path, dest_dir)
40+
41+
# Copy PDFs
42+
if os.path.exists(pdf_source_dir):
43+
for file in os.listdir(pdf_source_dir):
44+
if file.endswith(".pdf"):
45+
src_file_path = os.path.join(pdf_source_dir, file)
46+
shutil.copy2(src_file_path, pdf_destination_dir)
47+
print(f"Copied PDFs to {pdf_destination_dir}")
48+
else:
49+
print("PDF source directory not found.")
50+
exit()
3451

3552
# Copy sample READMEs
3653
if os.path.exists(samples_dir):
3.2 KB
Loading

doc/nrf-bm/includes/configure_and_build_sample.txt

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,15 @@ Follow these steps to create your first build configuration for this sample:
77

88
You will need the following information:
99

10-
* The |NCS| version and toolchain version the current |BMshort| release is based on: v3.0.1
11-
* The board target onto which you want to program the firmware (**Requirements** section).
10+
* The |NCS| version and toolchain version that the current |BMshort| release is based on: |ncs_release|
11+
* The board target onto which you want to program the firmware (see `Requirements`_).
1212

1313
This information will be used in the steps that follow.
1414

1515
.. note::
1616
The following steps will use the **Hello SoftDevice** sample as reference.
1717

18-
#. In the `Applications View`_, click on :guilabel:`Add build configuration`.
18+
#. In the `Applications View`_, click :guilabel:`Add build configuration`.
1919

2020
.. figure:: /images/add_build_configuration.png
2121
:alt: Add Build Configuration
@@ -33,7 +33,7 @@ Follow these steps to create your first build configuration for this sample:
3333

3434
#. Select the board target onto which you want to program the firmware.
3535

36-
For your very first build configuration, select a compatible board target from the drop down menu.
36+
For your very first build configuration, select a compatible board target from the drop-down menu.
3737

3838
.. figure:: /images/board_target.png
3939
:alt: Board target drop-down menu
@@ -44,11 +44,12 @@ Follow these steps to create your first build configuration for this sample:
4444

4545
For more details on how to configure builds, see `How to build an application`_ in |VSC| extension documentation.
4646

47-
#. Click the :guilabel:`Generate and Build` button.
47+
#. Click :guilabel:`Generate and Build`.
4848

4949
The |VSC| extension generates the configuration file and triggers the build process, which can take some time. You can monitor its progress in the notification that appears.
5050

51-
When the process is complete, the `Actions View`_ appears. In this View, you can trigger the build process again, flash the built application, start a debug session, or generate a memory report.
51+
When the process is complete, the `Actions View`_ appears.
52+
In this View, you can trigger the build process again, flash the built application, start a debug session (if debug options were set when building), or generate a memory report.
5253
The build files appear in the build's `Details View`_, which is named after your application.
5354

5455
.. figure:: /images/show_build_configuration_files.png

doc/nrf-bm/includes/create_sample.txt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ Follow these steps to create a new application based on this sample:
88

99
A quick pick menu appears.
1010

11-
#. Choose the option :guilabel:`Copy a sample` - This will create a `freestanding application`_ from a sample in |BMlong|.
11+
#. Select :guilabel:`Copy a sample` - this will create a `freestanding application`_ from a sample in |BMlong|.
1212

1313
A quick pick menu appears showing a list of available samples to choose from.
1414

@@ -39,6 +39,7 @@ Follow these steps to create a new application based on this sample:
3939

4040
A prompt appears asking to enter the location for the application.
4141
You can also use the folder button at the top of the quick pick to open a folder picker.
42+
4243
The application creation process starts after you enter the name.
4344
When the application is created, a prompt appears.
44-
Click on :guilabel:`Open` or :guilabel:`Open in New Window` to open the new application.
45+
Click :guilabel:`Open` or :guilabel:`Open in New Window` to open the new application.

doc/nrf-bm/includes/program_sample.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ Programming the sample
44
Follow these steps to program this sample:
55

66
1. Plug in your device to the serial terminal using a USB cable.
7-
Your device appears on the Connected Devices View list in |VSC|.
7+
Your device appears on the `Connected Devices View`_ list in |VSC|.
88
#. To flash the application you have built, click :guilabel:`Flash` in the `Actions View`_ after connecting the device to the terminal.
99

1010
For more details, see `How to flash an application`_ in |VSC| extension documentation.

doc/nrf-bm/includes/softdevice_flash.txt

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,19 @@ To flash the S115 SoftDevice binary to your device, open the terminal and run th
88

99
.. code-block:: console
1010

11-
cd C:/ncs/v0.7.0/nrf-bm
11+
cd C:/ncs/bm_v0.7.0/nrf-bm
1212

1313
.. group-tab:: Linux
1414

1515
.. code-block:: console
1616

17-
cd ~/ncs/v0.7.0/nrf-bm
17+
cd ~/ncs/bm_v0.7.0/nrf-bm
1818

1919
.. group-tab:: macOS
2020

2121
.. code-block:: console
2222

23-
cd /opt/nordic/ncs/v0.7.0/nrf-bm
23+
cd /opt/nordic/ncs/bm_v0.7.0/nrf-bm
2424

2525
#. Then, make sure that your device is erased:
2626

@@ -49,3 +49,7 @@ To flash the S115 SoftDevice binary to your device, open the terminal and run th
4949
.. code-block:: console
5050

5151
nrfutil device program --firmware subsys/softdevice/hex/s115/s115_9.0.0-2.prototype+offset-0x05D000_softdevice.hex
52+
53+
.. note::
54+
Keep in mind that the flashed SoftDevice variant must be in sync with the board target that you are planning to use in the build configuration of the sample.
55+
For example, for the ``bm_nrf54l15dk/nrf54l15/cpuapp/softdevice_s115`` board target, you must use the SoftDevice binary :file:`s115_9.0.0-2.prototype+offset-0x15D000_softdevice.hex` .

doc/nrf-bm/index.rst

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,36 @@
44
Introduction
55
############
66

7-
|BMlong| is an enhancement to the |NCS|, offering an optional configuration for developing Bluetooth LE applications that do not benefit from utilizing an RTOS nor require advanced features.
7+
The |BMlong| is a streamlined enhancement of the |NCS|, tailored for developers who are working on Bluetooth® LE applications that do not require the complexities of an RTOS or the full suite of advanced features.
8+
This option is particularly beneficial for applications that require a lightweight, responsive solution.
89

9-
You can use this development option for the following:
10+
A major component of the |BMshort| configuration is the SoftDevice.
11+
To facilitate Bluetooth LE operations without an RTOS, a new SoftDevice variant supporting the latest nRF54L devices has been released.
12+
This new variant maintains a similar functionality and API to those found in the existing nRF52 SoftDevices, ensuring a smooth transition and familiarity for developers.
1013

11-
* Development of threadless applications without the use of Zephyr RTOS.
12-
* Migration of applications originally created for the nRF52 devices using the nRF5 SDK.
14+
The |BMshort| codebase is structured to include libraries and modules that are specifically designed to operate without an RTOS.
15+
This ensures that all included components are optimized for threadless, bare metal environments.
16+
17+
The |BMshort| option is ideal for:
18+
19+
* Developing simple, threadless applications without the need for Zephyr RTOS.
20+
* Migrating applications initially developed for nRF52 devices using the nRF5 SDK.
21+
22+
Integration and structure
23+
*************************
24+
25+
The |BMlong| is a distinct repository that incorporates elements from the existing |NCS|:
26+
27+
* **Repository-Level Filtering:** |BMshort| utilizes a repository-level filtering mechanism designed to include components beneficial for bare metal development.
28+
However, this approach is based on the best possible method available, which means that some components that are not ideally suited for bare metal applications will also be included.
29+
Developers should be aware of these limitations and exercise discretion when utilizing the repository.
30+
* **Tools:** Tools such as the compiler and linker from the original |NCS| are reused in the Bare Metal option.
31+
The existing nRF Connect extension in |VSC| is the recommended IDE for working with Bare Metal.
1332

1433
.. toctree::
15-
:maxdepth: 2
34+
:maxdepth: 3
1635
:caption: Contents
1736

1837
install_nrf_bm.rst
1938
samples.rst
20-
release_notes_0.1.0.rst
39+
release_notes.rst

0 commit comments

Comments
 (0)