Commit Graph

411 Commits

Author SHA1 Message Date
Robert Lubos
e3804731b0 doc: mqtt: Add mention of MQTT 5.0 support
MQTT 5.0 is now supported so reflect this in the library documentation.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Emil Gydesen
f6b54b1ce5 doc: Bluetooth: Audio: Update table of spec versions
Changed all to use the full version (e.g. 1.0.0 instead of
1.0).
Add version for the ones that were missing.
Changed version of CAP to 1.0.1.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-23 13:20:02 +01:00
Robert Lubos
a61287e876 net: lib: tls_credentials: Rename TLS_CREDENTIAL_SERVER_CERTIFICATE
TLS_CREDENTIAL_SERVER_CERTIFICATE credential type is misleading, as in
fact it just represents a public certificate, it does not matter if the
certificate belongs to a server or a client. And actually, it was
already used in-tree for clients as well, for example in LwM2M.

Therefore rename the credential type to a more generic
TLS_CREDENTIAL_PUBLIC_CERTIFICATE and deprecate the old one.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-21 14:18:52 +01:00
Emil Gydesen
d19abff476 Bluetooth: CSIP: Add support for dynamically setting set size
The set size can now be dynamically set and notified.
The rank is added as a argument in the case that changing
the set size, also affects the device's rank, as ranks
in a coordinated set needs to be continuous.

The set coordinator implementation has been updated
to support receiving the new set size, and providing
this information to the upper layers.

This commit adds a babblesim test for the new API,
as well as a shell command.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-20 14:23:40 +01:00
Jukka Rissanen
f13555c932 doc: net: Add socket service API usage documentation
Add information how to use socket service API from application
point of view.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-18 19:58:53 +01:00
Emil Gydesen
501b95ff9b Bluetooth: CSIP: Rename BT_CSIP_SET_MEMBER_NOTIFIABLE
Renamed BT_CSIP_SET_MEMBER_NOTIFIABLE to
BT_CSIP_SET_MEMBER_SIRK_NOTIFIABLE to be more specific.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-13 16:56:14 +00:00
Etienne de Maricourt
1d356abc5b doc: net: lwm2m: Update code snippet to use latest API
Documentation was not updated after the deprecated API was removed in
94e12d59.

Signed-off-by: Etienne de Maricourt <edmecomemail@gmail.com>
2025-03-12 02:27:59 +01:00
Alberto Escolar Piedras
a734805f82 doc/connectivity sockets: minor rephrase to avoid ambiguity
"native POSIX" in Zephyr's context is typically understood as something
else than what this text refers to. Let's rephrase it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 02:27:36 +01:00
Alberto Escolar Piedras
cb53e40ff9 drivers uart_native_posix: rename to native_pty and support N instances
Rename the driver from uart_native_posix to uart_native_pty.
Including renaming the DTS compatible, and kconfig options, deprecating
the old ones.

And refactor the driver, generalizing it, so we can have any number of
instances.
Note that, unfortunately generalizing to N instances cannot be done
without a degree of backwards compatibility breakage: This driver was
born with all its configuration and selection of the instances based on
kconfig.
When the driver was made to use DT, it was done in a way that required
both DT and kconfig needing to manually coherently enable the 2nd UART.
This has now been fixed, which it means only DT is used to decide how
many instances are avaliable, and UART_NATIVE_POSIX_PORT_1_ENABLE is
just ignored.

Including:
* Deprecate UART_NATIVE_WAIT_PTS_READY_ENABLE: the options is always on
  now as it has no practical drawbacks.
* Deprecate UART_NATIVE_POSIX_PORT_1_ENABLE: DTS intanciation defines it
  being available now.
* Rename a few functions and in general shorten pseudo-tty/pseudo-
  terminal to PTY instead of PTTY.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-11 18:54:02 +01:00
Ibe Van de Veire
2340dfad52 doc: networking: Add IPv4 commandline options description
Add the documentation on how to use the commandline options to set the
IPv4 addr, gateway and netmask of a native_sim setup.

Signed-off-by: Ibe Van de Veire <ibe.vandeveire@basalte.be>
2025-03-10 21:31:27 +01:00
Alberto Escolar Piedras
78f800642a drivers/ethernet/eth_native_posix: Rename to eth_native_tap
Rename this driver to eth_native_tap, including renaming all its
options.
The old options remain until v4.4, but as deprecated.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 20:10:38 +01:00
Håvard Reierstad
c7a19da8ca Bluetooth: Host: Improve more GATT documentation
Adds improvement to the GATT API documentation by providing examples of
where (and how) certain structs are used, and adds specification
references to the fields of bt_gatt_cpf to clarify their purpose.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-03-03 14:44:14 +01:00
Emil Gydesen
bf95ad47be docs: Rename BLE to Bluetooth (LE) where applicable
The BLE acronym is not an official description of Bluetooth
LE, and the Bluetooth SIG only ever refers to it as Bluetooth
Low Energy or Bluetooth LE, so Zephyr should as well.

This commit does not change any board or vendor specific
documentation, and the term BLE may still be used in those.
It will be up to the vendors to update it if they want,
since many of them are using the term BLE in their
products.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-02-12 12:24:18 +01:00
Emil Gydesen
e0017b9097 doc: Bluetooth: Audio: Update Discord channel name
The Discord channel name for LE Audio has been renamed to bt-audio
The Discord channel name for bluetooth-sig has been renamed to bt-sig

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-02-11 18:56:12 +01:00
Johann Fischer
d9f40b4e25 doc: usb: add initial USB/IP documentation
Add initial USB/IP documentation for the new USB support.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-02-10 09:02:45 +01:00
Aleksandr Khromykh
5e235bbf88 doc: update migration guide with mesh versions incompatibility
Commit adds description of key representation incompatibility
for mesh images built with different crypto libraries.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-02-06 21:13:31 +01:00
Johann Fischer
2914174d27 doc: usb: minor fixes to improve consistency
Follow-up on newly introduced USB MIDI2 support.
Prefix with usbd_, use midi2 consistently.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-02-06 17:49:12 +01:00
Johann Fischer
e98f1ef19d doc: usb: update the USB device stack deprecation plans
Deprecation has been postponed for another version.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-02-06 10:43:00 +01:00
Johann Fischer
8b0bdb563f usb: device_next: implement USB DFU class for the new device support
This new implementation is written from scratch and is not tied to the
image manager and MCUboot. It allows the user to define their own
backend and use a simple macro to instantiate an image. On the USB side
this is represented by an interface. The number of possible images is
configurable using the Kconfig option, and is a fairly inexpensive
approach since it only changes the size of the pointer array. The number
of images is only limited by the number of possible interfaces in a
configuration. The class implementation does not support multiple
instances, as there is no real use for it. However, it does provide two
class instances, one for runtime mode and one for DFU mode. The switch
from runtime to DFU mode can only be performed by the user application,
i.e. the application receives a notification when the host wants to
switch to DFU mode, and then the application can disable the runtime
configuration and enable the DFU configuration. This implementation does
not support switching to the DFU mode by bus reset issued by the
host.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-02-04 11:55:25 +01:00
Titouan Christophe
c525e7a0a5 usb: device_next: add new MIDI 2.0 device class
This adds a new USB device class (based on usb/device_next) that implements
revision 2.0 of the MIDIStreaming interface, a sub-class of the USB audio
device class. In practice, the MIDI interface is much more simple and has
little in common with Audio, so it makes sense to have it as a separate
class driver.

MIDI inputs and outputs are configured through the device tree, under a
node `compatible = "zephyr,usb-midi"`. As per the USB-MIDI2.0 spec,
a single usb-midi interface can convey up to 16 Universal MIDI groups,
comprising 16 channels each. Data is carried from/to the host via
so-called Group Terminals, that are organized in Group Terminal Blocks.
They are represented as children of the usb-midi interface in the device
tree.

From the Zephyr application programmer perspective, MIDI data is exchanged
with the host through the device associated with the `zephyr,usb-midi`
interface, using the following API:

* Send a Universal MIDI Packet to the host: `usb_midi_send(device, pkt)`
* Universal MIDI Packets from the host are delivered to the function passed
  in `usb_midi_set_ops(device, &{.rx_packet_cb = handler})`

Compliant USB-MIDI 2.0 devices are required to expose a USB-MIDI1.0
interface as alt setting 0, and the 2.0 interface on alt setting 1.
To avoid the extra complexity of generating backward compatible USB
descriptors and translating Universal MIDI Packets from/to the old
USB-MIDI1.0 format, this driver generates an empty MIDI1.0 interface
(without any input/output); and therefore will only be able to exchange
MIDI data when the host has explicitely enabled MIDI2.0 (alt setting 1).

This implementation is based on the following documents, which are referred
to in the inline comments:

* `midi20`:
    Universal Serial Bus Device Class Definition for MIDI Devices
    Release 2.0
    https://www.usb.org/sites/default/files/USB%20MIDI%20v2_0.pdf
* `ump112`:
    Universal MIDI Packet (UMP) Format and MIDI 2.0 Protocol
      With MIDI 1.0 Protocol in UMP Format
    Document Version 1.1.2
    https://midi.org/universal-midi-packet-ump-and-midi-2-0-protocol-specification

Signed-off-by: Titouan Christophe <moiandme@gmail.com>
2025-01-31 19:50:26 +01:00
Matt Rodgers
8d3175018f doc: http_server: document how to specify a default resource
Add documentation showing how to use the _detail parameter when
registering an HTTP service to provide a default resource handling any
unknown path. Also update the 4.1 release migration guide.

Signed-off-by: Matt Rodgers <mrodgers@witekio.com>
2025-01-28 18:14:36 +01:00
Emil Gydesen
9688c2d43f Bluetooth: CCP: Initial CCP Client implemenation
Added initial CCP client implementation that simply
does discovery of TBS on a remote CCP server.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-01-28 09:46:39 +01:00
Jukka Rissanen
572518edc7 doc: net: http-server: Add information about static fs resources
The supported resource list was missing static file system resource
description.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-01-14 15:39:50 +01:00
Matt Rodgers
579e5868b0 doc: websocket: update docs to describe additional callback parameter
Update HTTP server documentation and migration guide to account for
added request_ctx parameter to the http_resource_websocket_cb_t
callback.

Signed-off-by: Matt Rodgers <mrodgers@witekio.com>
2025-01-08 21:02:02 +01:00
Emil Gydesen
e45830893f Bluetooth: CCP: Introduce new CCP API
The CCP API for the Call Control Profile works on top of the
TBS API, and will eventually replace parts of the TBS API.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-01-08 07:50:32 +01:00
Martin Jäger
17cde7d574 samples: net: openthread: create category in docs
Add higher-level category for OpenThread in docs to avoid orphaned
sample documentation.

Signed-off-by: Martin Jäger <martin@libre.solar>
2025-01-03 19:39:13 +01:00
Martin Jäger
8eff86229e samples: net: openthread: shell: add sample application
Add simple application to test Thread and IEEE 802.15.4 using the
OpenThread shell.

Signed-off-by: Martin Jäger <martin@libre.solar>
2025-01-03 19:39:13 +01:00
Mark Wang
19dee0e937 tests: bluetooth: shell: add a2dp new features test
add test for reconfigure, release, suspend, abort and disconnect.
app_config_req and app_reconfig_req always accept the req,
so don't need to handle reject case.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2024-12-23 09:15:35 +01:00
Håvard Reierstad
4b086612cc Bluetooth: Mesh: Correct DFU metadata shell doc
Specifies that the `CONFIG_BT_MESH_SHELL_DFU_METADATA` must be enabled
to use the `dfu metadata` commands in the mesh shell.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2024-12-19 19:55:17 +01:00
Håvard Reierstad
06f9281e2b Bluetooth: Mesh: Add documentation for mesh shell blob flash stream
Adds documentation for the mesh shell blob flash stream feature. This
feature allows the user to specify the flash area to write the BLOB to.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2024-12-19 19:55:17 +01:00
Håvard Reierstad
a782ec14bc Bluetooth: Mesh: Fix blob cli documentation
Renames the blob cli bounds command to blob cli caps in documentation,
matching the implementation in shell.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2024-12-18 10:16:49 +01:00
Parth Sanepara
de234b6742 doc: correct typo from 'date' to 'data' in README
Fixed a typo in this two files.
lsm6dso README and coap_server document file

Signed-off-by: Parth Sanepara <parthsanepara@gmail.com>
2024-12-18 10:16:39 +01:00
Johann Fischer
36e8144b90 usb: device: remove USB H4 Bluetooth function and sample
The Bluetooth HCI USB transport layer implementation is provided by
"subsys/usb/device/class/bluetooth.c". The USB H4 Bluetooth function
implements a non-standard transport layer. There is no known host-side
equivalent that uses this protocol.

Note that the H4 protocol functionality is also provided by the
"subsys/usb/device/class/bluetooth.c".

Since that there are no real USB H4 Bluetooth users, remove the
implementation and sample without deprecation.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2024-12-17 11:35:57 +00:00
Phumphathai Chansriwong
49a27255da doc: fix typo in usb_device docs
Fix spelling from 'USPIP' to 'USBIP'.

Signed-off-by: Phumphathai Chansriwong <ouoam2555@gmail.com>
2024-12-17 09:47:51 +01:00
Vivekananda Uppunda
ab6dfa2bf2 doc: wifi: Add section for PSA enabled build for Wi-Fi
Add a section which describes how to enable PSA API support
for Wi-Fi build.

Signed-off-by: Vivekananda Uppunda <vivekananda.uppunda@nordicsemi.no>
2024-12-13 09:13:27 +01:00
Andries Kruithof
86ab272286 Bluetooth: Audio: add shell command for distribute broadcast code
Adds a shell command for the distribute broadcast code CAP procedure

Signed-off-by: Andries Kruithof <andries.kruithof@nordicsemi.no>
2024-12-12 16:23:22 +01:00
Matt Rodgers
eae06d0ff7 doc: http_server: document changes to dynamic resource callback
Dynamic resource callback function signature has changed to combine the
data, data length and request header details into a struct
http_request_ctx. Update documentation to describe this, and add a note
in the 4.1 migration guide since this is a public API change.

Signed-off-by: Matt Rodgers <mrodgers@witekio.com>
2024-12-04 14:13:24 -05:00
Johan Hedberg
b6b70a014d doc: bluetooth: Update references to Kconfig options and DTS
Update the instructions for the three possible Bluetooth setups
(controller-only, combined build, host-only) to be in line with how the
features are actually enabled (e.g. device tree for the controller and HCI
drivers).

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2024-12-03 10:16:44 +01:00
Ivan Iushkov
75fc0a0776 Bluetooth: Host: deprecate bt_le_set_auto_conn()
bt_le_set_auto_conn() function is not working as
expected. Also, it doesn't have any test coverage
and any usage in sample applications.
The function is deprecated
Fixes #81597

Signed-off-by: Ivan Iushkov <ivan.iushkov@nordicsemi.no>
2024-11-26 10:37:12 +00:00
Johan Hedberg
30d1d0e526 Bluetooth: Host: Remove deprecated HCI driver API
Remove the deprecated HCI driver API which was provided by the hci_driver.h
header file. The deprecation happened in Zephyr 3.7, so the API can now be
removed for Zephyr 4.1.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2024-11-22 11:37:12 +01:00
Emil Gydesen
07b7802460 doc: Bluetooth: Audio: Shell: Make shell docs a bit more consistent
Make the headers of the audio shell documentation files consistent.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2024-11-21 20:11:13 +01:00
Emil Gydesen
b20784dfbb docs: Bluetooth: Move documentating for shell out of API
The API directory really isn't the best place for shell
documentation, which isn't API.

Created a new directory for Bluetooth shell documentation
and moved the ISO and LE Audio docs in there.

The existing bluetooth-shell.rst file was also split into
several new files, so that it follows the same structure.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2024-11-21 20:11:13 +01:00
Omkar Kulkarni
95fff388ba Bluetooth: Mesh: Shell: Align commands
Aligns subnet bridge related commands according to conventions used for
rest of the shell commands. Also updates documentations to reflect the
change.

Signed-off-by: Omkar Kulkarni <omkar.kulkarni@nordicsemi.no>
2024-11-21 14:46:31 +01:00
Håvard Reierstad
665a555e75 Bluetooth: Mesh: Use relay bufs/pool for brg_cfg
Adds support for using relay buffers and advertising set for the subnet
bridge feature, even if the relay feature is disabled.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2024-11-19 10:12:19 -05:00
Kenneth Witham
aa9c9228d4 net: mqtt-sn: Add Gateway Advertisement and Discovery process support
Fixes: #78010
This commit implements the "Gateway Advertisement and Discovery" process
defined in section 6.1 of the MQTT-SN specification.
This includes breaking changes to the transport interface and the default
included UDP interface implementation as support for UDP multicast
messages is added as implemented by the Paho MQTT-SN Gateway.

Signed-off-by: Kenneth Witham <kennywitham4@gmail.com>
2024-11-16 15:08:27 -05:00
Pisit Sawangvonganan
1175f57640 doc: fix typo in multiple directories before v4.0.0 release
Utilize a code spell-checking tool to scan for and correct spelling errors
in various files within the `doc` directory.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2024-11-13 13:35:49 -06:00
Emil Gydesen
4d8acdf9ed doc: Fix VMWare type in autopots-linux
It is called VMWare and not WMWare.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2024-11-08 11:36:41 -06:00
Emil Gydesen
58c3940a6b doc: autopts-linux: Add troubleshooting for window opening and closing
Refactored the structure of the troubleshooting section so it
is more similar to how e.g. the ArchWiki lists troubleshooting
entries, which makes it easier to search for and separate
each entry.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2024-11-08 11:36:41 -06:00
Emil Gydesen
e89a5d10ef doc: Update Virtualbox steps for autopts-linux
The exisitng documentation was out of date and
possibly not working.

Added a section on how to use NAT and port forwarding.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2024-11-08 11:36:41 -06:00
Emil Gydesen
397b5cbcd9 doc: Use correct RST headings in autopts-linux.rst
The documentation guidelines have a specified order of
header underlines that this file did not follow.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2024-11-08 11:36:41 -06:00