Part 1
요약·해설
BLOB Server·DFU Client를 결합한 Distributor와 remote slot 관리, application BLOB stream 책임을 설명합니다.
Distributor
BLOB Server
DFU Client
Firmware slots
Part 2
접을 수 있는 영어 원문 전체
영어 원문 전체 펼치기
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
출처
영어 원문에는 문단, 문서 지시문, 표, 코드, 코드 심벌, 경로를 그대로 보존했습니다.