/Zephyr-latest/doc/connectivity/bluetooth/api/mesh/ |
D | blob.rst | 3 BLOB Transfer models 6 The Binary Large Object (BLOB) Transfer models implement the Bluetooth Mesh Binary Large Object 12 The BLOB Transfer models support transfers of continuous binary objects of up to 4 GB (2 \ :sup:`32` 13 bytes). The BLOB transfer protocol has built-in recovery procedures for packet losses, and sets up 17 BLOB transfers are constrained by the transfer speed and reliability of the underlying mesh network. 19 BLOB to be transferred in 10-15 minutes. However, network conditions, transfer capabilities and 26 There are two BLOB Transfer models: 34 The BLOB Transfer Client is instantiated on the sender node, and the BLOB Transfer Server is 40 The BLOB transfer protocol introduces several new concepts to implement the BLOB transfer. 49 structure of the BLOB, and applications are free to define any encoding or compression they'd like [all …]
|
D | blob_srv.rst | 3 BLOB Transfer Server 6 The Binary Large Object (BLOB) Transfer Server model implements reliable receiving of large binary 13 As described in :ref:`bluetooth_mesh_blob`, the binary objects transferred by the BLOB Transfer 15 BLOB Transfer Client model, the BLOB Transfer Server must allow blocks to come in any order. The 19 The BLOB Transfer Server keeps track of the received blocks and chunks, and will process each block 20 and chunk only once. The BLOB Transfer Server also ensures that any missing chunks are resent by the 21 BLOB Transfer Client. 26 The BLOB Transfer Server is instantiated on an element with a set of event handler callbacks: 42 A BLOB Transfer Server is capable of receiving a single BLOB transfer at a time. Before the BLOB 44 passed to the BLOB Transfer Server through the :c:func:`bt_mesh_blob_srv_recv` function before the [all …]
|
D | blob_flash.rst | 3 BLOB Flash 6 The BLOB Flash Readers and Writers implement BLOB reading to and writing from flash partitions 10 BLOB Flash Reader 13 The BLOB Flash Reader interacts with the BLOB Transfer Client to read BLOB data directly from flash. 15 BLOB Transfer Client. Each BLOB Flash Reader only supports one transfer at the time. 18 BLOB Flash Writer 21 The BLOB Flash Writer interacts with the BLOB Transfer Server to write BLOB data directly to flash. 23 BLOB Transfer Server. Each BLOB Flash Writer only supports one transfer at the time, and requires a 27 The BLOB Flash Writer copies chunk data into a buffer to accommodate chunks that are unaligned with
|
D | blob_cli.rst | 3 BLOB Transfer Client 6 The Binary Large Object (BLOB) Transfer Client is the sender of the BLOB transfer. It supports 7 sending BLOBs of any size to any number of Target nodes, in both Push BLOB Transfer Mode and Pull 8 BLOB Transfer Mode. 16 The BLOB Transfer Client is instantiated on an element with a set of event handler callbacks: 35 Both the transfer capabilities retrieval procedure and the BLOB transfer uses an instance of a 36 :c:struct:`bt_mesh_blob_cli_inputs` to determine how to perform the transfer. The BLOB Transfer Cli… 57 Note that all BLOB Transfer Servers in the transfer must be bound to the chosen application key. 66 Target nodes having the BLOB Transfer Server model subscribe to this group address. 69 BLOB Transfer Client sends each message to all Target nodes at the same time. However, sending [all …]
|
D | dfu_srv.rst | 10 Together with the extended BLOB Transfer Server model, the Firmware Update Server model implements 30 The Firmware Update Server model uses a BLOB Transfer Server model on the same element to transfer 31 the binary image. The interaction between the Firmware Update Server, BLOB Transfer Server and 88 pointer to the BLOB Writer the BLOB Transfer Server will send the BLOB to. 90 BLOB transfer 93 After the setup stage, the Firmware Update Server prepares the BLOB Transfer Server for the incoming 94 transfer. The entire firmware image is transferred to the BLOB Transfer Server, which passes the 95 image to its assigned BLOB Writer. 97 At the end of the BLOB transfer, the Firmware Update Server calls its 103 After the BLOB transfer has finished, the application should verify the image in any way it can to
|
/Zephyr-latest/scripts/west_commands/ |
D | blobs.py | 50 - module: name of the module that contains this blob 51 - abspath: blob absolute path 53 - path: blob local path from <module>/zephyr/blobs/ 54 - sha256: blob SHA256 hash in hex 55 - type: type of blob 57 - license_path: path to the license file for the blob 58 - uri: URI to the remote location of the blob 59 - description: blob text description 60 - doc-url: URL to the documentation for this blob 73 group = parser.add_argument_group('west blob list options') [all …]
|
/Zephyr-latest/include/zephyr/bluetooth/mesh/ |
D | blob.h | 19 * @defgroup bt_mesh_blob Bluetooth Mesh BLOB model API 28 /** BLOB transfer mode. */ 32 /** Push mode (Push BLOB Transfer Mode). */ 34 /** Pull mode (Pull BLOB Transfer Mode). */ 42 /** The BLOB Transfer Server is awaiting configuration. */ 44 /** The BLOB Transfer Server is ready to receive a BLOB transfer. */ 46 /** The BLOB Transfer Server is waiting for the next block of data. */ 48 /** The BLOB Transfer Server is waiting for the next chunk of data. */ 50 /** The BLOB was transferred successfully. */ 52 /** The BLOB transfer is paused. */ [all …]
|
D | blob_srv.h | 11 #include <zephyr/bluetooth/mesh/blob.h> 18 * @defgroup bt_mesh_blob_srv Bluetooth Mesh BLOB Transfer Server model API 39 * @brief BLOB Transfer Server model composition data entry. 47 /** @brief BLOB Transfer Server model event handlers. 54 * Called when the transfer has started with the prepared BLOB ID. 56 * @param srv BLOB Transfer Server instance. 76 * @param srv BLOB Transfer Server instance. 77 * @param id BLOB ID of the cancelled transfer. 91 * @note The BLOB Transfer Server does not run a timer in the suspended state, 94 * the transfer will be suspended indefinitely, and the BLOB Transfer [all …]
|
D | blob_cli.h | 13 #include <zephyr/bluetooth/mesh/blob.h> 20 * @defgroup bt_mesh_blob_cli Bluetooth Mesh BLOB Transfer Client model API 29 * @brief BLOB Transfer Client model Composition Data entry. 37 /** Target node's Pull mode (Pull BLOB Transfer Mode) context used 48 /** BLOB Transfer Client Target node. */ 57 * Needs to be initialized when sending a BLOB in Pull mode. 61 /** BLOB transfer status, see @ref bt_mesh_blob_status. */ 70 /** BLOB transfer information. 78 /** BLOB transfer status. */ 81 /** BLOB transfer mode. */ [all …]
|
D | blob_io_flash.h | 17 * @defgroup bt_mesh_blob_io_flash Bluetooth Mesh BLOB flash stream 22 /** BLOB flash stream. */ 24 /** Flash area ID to write the BLOB to. */ 28 /** Offset into the flash area to place the BLOB at (in bytes). */ 34 /* BLOB stream. */
|
D | dfu_cli.h | 39 .blob = { .cb = &_bt_mesh_dfu_cli_blob_handlers }, \ 49 BT_MESH_MODEL_BLOB_CLI(&(_cli)->blob), \ 55 /** BLOB Target node */ 56 struct bt_mesh_blob_target blob; member 85 /** BLOB ID used in the transfer. */ 131 /** @brief BLOB transfer is suspended. 133 * Called when the BLOB transfer is suspended due to response timeout from all Target nodes. 187 /** Underlying BLOB Transfer Client. */ 188 struct bt_mesh_blob_cli blob; member 198 struct bt_mesh_blob_xfer blob; member [all …]
|
/Zephyr-latest/.github/ISSUE_TEMPLATE/ |
D | 008_bin-blobs.md | 3 about: Submit a proposal to integrate binary blob(s) 12 Describe where the binary blob(s) originate from 21 The Zephyr module that this blob(s) will be referenced from 25 Brief description of what the blob(s) do. It is especially important to describe 26 the functionality that the blob(s) provide, to the largest extent possible 36 What other components do the blob(s) depend on, if any? 40 Document the license the blob(s) are distributed under
|
/Zephyr-latest/subsys/bluetooth/mesh/ |
D | dfu_cli.c | 13 #include "blob.h" 22 (sys_slist_t *)&((cli)->blob.inputs)->targets, target, blob.n) 26 .app_idx = (cli)->blob.inputs->app_idx, .addr = dst, \ 27 .send_ttl = (cli)->blob.inputs->ttl, \ 30 #define DFU_CLI(blob_cli) CONTAINER_OF(blob_cli, struct bt_mesh_dfu_cli, blob) 77 if (addr == target->blob.addr) { in target_get() 91 LOG_ERR("Target 0x%04x failed: %u", target->blob.addr, status); in target_failed() 93 /* Invalidate blob status to prevent the target from being included in in target_failed() 96 if (target->blob.status == BT_MESH_BLOB_SUCCESS) { in target_failed() 97 target->blob.status = BT_MESH_BLOB_ERR_INTERNAL; in target_failed() [all …]
|
D | blob.h | 122 /** @brief Perform a message broadcast to all BLOB Transfer Client Target nodes. 127 * @param cli BLOB Transfer Client instance 135 * @param cli BLOB Transfer Client instance 141 /** @brief Notify the BLOB Transfer Client that the requested transmission is complete. 146 * @param cli BLOB Transfer Client instance. 150 /** @brief Aborts any ongoing BLOB Transfer Client operations. 152 * @param cli BLOB Transfer Client instance.
|
/Zephyr-latest/doc/contribute/coding_guidelines/ |
D | index.rst | 73 …- `Dir 1.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_01_01.c>`_ 80 …- `Dir 2.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_02_01.c>`_ 87 …- `Dir 3.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_03_01.c>`_ 94 …- `Dir 4.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_01.c>`_ 101 …- `Dir 4.2 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_02.c>`_ 108 …- `Dir 4.4 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_04.c>`_ 115 …- `Dir 4.5 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_05.c>`_ 122 …- `Dir 4.6 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_06.c>`_ 129 …- `Dir 4.7 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_07.c>`_ 136 …- | `Dir 4.8 example 1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master… [all …]
|
/Zephyr-latest/samples/userspace/prod_consumer/ |
D | README.rst | 72 I:writing processed data blob back to the sample device 76 I:writing processed data blob back to the sample device 80 I:writing processed data blob back to the sample device 84 I:writing processed data blob back to the sample device 88 I:writing processed data blob back to the sample device 92 I:writing processed data blob back to the sample device 94 I:writing processed data blob back to the sample device 96 I:writing processed data blob back to the sample device 98 I:writing processed data blob back to the sample device 100 I:writing processed data blob back to the sample device
|
/Zephyr-latest/doc/contribute/ |
D | bin_blobs.rst | 29 license as part of the blob submission process. Blob vendors may impose a 51 include a reference to a binary blob to the upstream Zephyr distribution, a 55 Each blob which may be fetched must be individually identified in the 56 corresponding :file:`module.yml` file. A specification for a blob must contain: 58 - An abstract description of the blob itself 61 - The blob’s :ref:`type <bin-blobs-types>`, which must be one of the allowed types 62 - A checksum for the blob, which ``west blobs`` checks after downloading. 65 - License text applicable to the blob or a reference to such text, in SPDX 102 The following binary blob types are acceptable in Zephyr: 118 Note that just because a blob has an acceptable type does not imply that it will [all …]
|
/Zephyr-latest/tests/bsim/bluetooth/mesh/tests_scripts/blob_mdls/ |
D | blob_cli_friend.sh | 7 # Establish multiple different friendships concurrently. Perform BLOB transfer with BLOB Client 8 # on friend node and BLOB Server on LPNs.
|
D | blob_cli_trans_resume_push.sh | 7 # Test that BLOB Client can resume a suspended BLOB Transfer in Push mode
|
D | blob_cli_persistent_transfer_pull.sh | 7 # Test that BLOB Client continues BLOB Transfer after one target timed out while sending chunks.
|
D | blob_cli_trans_resume_pull.sh | 7 # Test that BLOB Client can resume a suspended BLOB Transfer in Pull mode
|
/Zephyr-latest/subsys/bluetooth/mesh/shell/ |
D | Kconfig | 126 bool "Support for BLOB Transfer Client shell commands" 130 BLOB Transfer Client shell support. 133 bool "Support for BLOB Transfer Server shell commands" 137 BLOB Transfer Server shell support. 140 bool "Support for BLOB IO flash stream shell commands" 144 BLOB Transfer Client shell support.
|
D | blob.c | 7 #include "blob.h" 24 static const char *blob_data = "blob"; 88 shell_print(bt_mesh_shell_ctx_shell, "Mesh Blob: Lost target 0x%04x (reason: %u)", in blob_cli_lost_target() 104 "None of the targets can be used for BLOB transfer"); in blob_cli_caps() 108 shell_print(bt_mesh_shell_ctx_shell, "Mesh BLOB: capabilities:"); in blob_cli_caps() 109 shell_print(bt_mesh_shell_ctx_shell, "\tMax BLOB size: %u bytes", caps->max_size); in blob_cli_caps() 124 shell_print(bt_mesh_shell_ctx_shell, "Mesh BLOB transfer complete."); in blob_cli_end() 126 shell_print(bt_mesh_shell_ctx_shell, "Mesh BLOB transfer failed."); in blob_cli_end() 155 "BLOB transfer progress received from target 0x%04x:\n" in xfer_progress() 163 shell_print(bt_mesh_shell_ctx_shell, "Determine BLOB transfer progress procedure complete"); in xfer_progress_complete() [all …]
|
/Zephyr-latest/drivers/dai/intel/dmic/ |
D | Kconfig.dmic | 21 1. A HW registers dump blob that is passed via IPC 26 bool "Use NHLT DMIC blob" 28 All registers configuration is retrieved from blob. The 30 defined in the blob and there are no runtime made
|
/Zephyr-latest/tests/bluetooth/mesh/blob_io_flash/src/ |
D | main.c | 11 #include "mesh/blob.h" 89 zassert_equal(err, 0, "BLOB I/O init failed with err=%d", err); in ZTEST() 92 zassert_equal(err, 0, "BLOB I/O open failed with err=%d", err); in ZTEST() 105 /* BLOB Client should do nothing to flash area as it's in read mode */ in ZTEST() 107 zassert_equal(err, 0, "BLOB I/O open failed with err=%d", err); in ZTEST() 125 zassert_equal(err, 0, "BLOB I/O read failed with err=%d off=%d len=%d", in ZTEST() 139 /* We read whole sector as BLOB. Try to increment every offset by one and read, in ZTEST() 184 zassert_equal(err, 0, "BLOB I/O init failed with err=%d", err); in ZTEST() 187 zassert_equal(err, 0, "BLOB I/O open failed with err=%d", err); in ZTEST() 204 zassert_equal(err, 0, "BLOB I/O open failed with err=%d", err); in ZTEST() [all …]
|