connectivity/bluetooth/api/mesh/dfd_srv.html · connectivity/bluetooth/api/mesh/dfd_srv.rst 공식 원문 ↗

Zephyr 3.7.0 · Connectivity · Bluetooth Mesh DFU

Firmware Distribution Server

Initiator에서 image를 받고 slot에 저장한 뒤 Mesh Target 전체로 배포합니다.

Official pathconnectivity/bluetooth/api/mesh/dfd_srv.html
Source fileconnectivity/bluetooth/api/mesh/dfd_srv.rst
Source versionZephyr 3.7.0
TranslationFull · reviewed

본문 기준: Zephyr 3.7.0 LTS3 · 이후 유지보수 패치는 별도입니다.

Part 1

요약·해설

BLOB Server·DFU Client를 결합한 Distributor와 remote slot 관리, application BLOB stream 책임을 설명합니다.

Role

Distributor

Upload

BLOB Server

Distribution

DFU Client

Storage

Firmware slots

Part 2

접을 수 있는 영어 원문 전체

영어 원문 전체 펼치기
원문 SHA-256 8A99B11DACF75275D7322B05362CE59AE30F160AACF8909E2C13AEF7502DE0EC
.. _bluetooth_mesh_dfd_srv:

Firmware Distribution Server
############################

The Firmware Distribution Server model implements the Distributor role for the
:ref:`bluetooth_mesh_dfu` subsystem. It extends the :ref:`bluetooth_mesh_blob_srv`, which it uses to
receive the firmware image binary from the Initiator node. It also instantiates a
:ref:`bluetooth_mesh_dfu_cli`, which it uses to distribute firmware updates throughout the mesh
network.

.. note::

   Currently, the Firmware Distribution Server supports out-of-band (OOB) retrieval of firmware
   images over SMP service only.

The Firmware Distribution Server does not have an API of its own, but relies on a Firmware
Distribution Client model on a different device to give it information and trigger image
distribution and upload.

Firmware slots
**************

The Firmware Distribution Server is capable of storing multiple firmware images for distribution.
Each slot contains a separate firmware image with metadata, and can be distributed to other mesh
nodes in the network in any order. The contents, format and size of the firmware images are vendor
specific, and may contain data from other vendors. The application should never attempt to execute
or modify them.

The slots are managed remotely by a Firmware Distribution Client, which can both upload new slots
and delete old ones. The application is notified of changes to the slots through the Firmware
Distribution Server's callbacks (:cpp:type:`bt_mesh_fd_srv_cb`). While the metadata for each
firmware slot is stored internally, the application must provide a :ref:`bluetooth_mesh_blob_stream`
for reading and writing the firmware image.

API reference
*************

.. doxygengroup:: bt_mesh_dfd_srv
   :project: Zephyr
   :members:

Part 3

한국어 전문 번역

Firmware Distribution Server

Firmware Distribution Server model은 Device Firmware Update subsystem의 Distributor role을 구현합니다. BLOB Transfer Server를 extend해 Initiator node에서 firmware image binary를 받고, Firmware Update Client를 함께 instance화해 mesh network 전체에 firmware update를 배포합니다.

Firmware Distribution Server에는 자체 API가 없습니다. 다른 device의 Firmware Distribution Client model이 image 정보와 distribution·upload trigger를 전달해 제어합니다.

Firmware slot

Server는 distribution을 위해 firmware image 여러 개를 저장할 수 있습니다. Slot마다 metadata가 붙은 별도 firmware image가 있으며 network의 다른 mesh node에 원하는 순서로 배포할 수 있습니다.

Firmware image의 content, format과 size는 vendor-specific이며 다른 vendor의 data를 포함할 수도 있습니다. Application은 이 image를 실행하거나 수정하려고 해서는 안 됩니다.

Firmware Distribution Client가 slot을 remote에서 관리하며 새 slot upload와 오래된 slot 삭제를 모두 수행합니다. Slot 변경은 bt_mesh_fd_srv_cb callback으로 application에 알립니다.

각 firmware slot의 metadata는 Server 내부에 저장하지만 실제 firmware image를 읽고 쓰는 BLOB stream은 application이 제공해야 합니다.

API Reference

공식 bt_mesh_dfd_srv Doxygen group이 Firmware Distribution Server model과 callback 정의를 생성합니다.

Source

출처

영어 원문에는 문단, 문서 지시문, 표, 코드, 코드 심벌, 경로를 그대로 보존했습니다.