Skip to main content Link Menu Expand (external link) Document Search Copy Copied

File Transfer Test Cases

Test Case ID: BLE/EP/API/FILETRANSFER/BV/01: Initialize the feature and start receiving a file

Field Value
Case ID C103619294
Executable by Customer Yes
Preconditions
  • EN is registered in Sidewalk network
  • EN has time synchronized
  • BLE stack initialized
  • (Preconditions to be provided.)
Test Steps
Step Description Expected Result
1 Initialize BLE stack, start, and initialize SBDT:
sid init 1
sid start
sbdt init
SBDT: [NO LOAD] dup drop: 29000000 (3)
MET: SRC: 13
CMD: ERR: 0
Key check: SBDT initialized, no pending transfer
2 Create a FUOTA task on AWS:
File: fuota_test_file_2048bytes.txt, block_size: 1024
Note the task_id from response
FUOTA task created successfully
Response: { "Id": "<task_id>" }
Key check: task_id obtained
3 Associate EN wireless device ID with the FUOTA task:
wireless_device_id: <wireless_device_id>
task_id: <task_id>
Response: 2xx
Key check: EN associated with FUOTA task
4 Schedule start time for the FUOTA task (at least 5 minutes from now):
task_id: <task_id>
start_time: <time>
Response: 2xx
Key check: FUOTA task scheduled
5 Wait for BLE disconnected, establish BLE connection and send UL:
sid conn_req 1
sid send TEST
EVENT SID SEND STATUS: SID ERR: 0, TYPE: 2, ID: <id>, LINK: 1
Key check: UL sent via BLE
6 Wait for file transfer to complete (timeout: 600s):
Monitor EN log
DEC: M:15 [3:D:2]
Key check: File transfer completed
7 Check file transfer task status on cloud:
task_id: <task_id>
Task status: FuotaDone
Wireless device status: Successful
Key check: Cloud confirms transfer complete

Test Case ID: BLE/EP/API/FILETRANSFER/BV/02: Cancel ongoing transfer

Field Value
Case ID C103619295
Executable by Customer Yes
Preconditions
  • EN is registered in Sidewalk network
  • EN has time synchronized
  • BLE stack initialized
  • (Preconditions to be provided.)
Test Steps
Step Description Expected Result
1 Initialize BLE stack, start, and initialize SBDT:
sid init 1
sid start
sbdt init
SBDT: [NO LOAD]
CMD: ERR: 0
Key check: SBDT initialized
2 Create a FUOTA task on AWS:
File: fuota_test_file_10240bytes.txt, block_size: 1024
Note the task_id from response
FUOTA task created successfully
Response: { "Id": "<task_id>" }
Key check: task_id obtained
3 Associate EN wireless device ID with the FUOTA task Response: 2xx
Key check: EN associated with FUOTA task
4 Schedule start time for the FUOTA task (at least 5 minutes from now) Response: 2xx
Key check: FUOTA task scheduled
5 Wait for BLE disconnected, establish BLE connection and send UL:
sid conn_req 1
sid send TEST
EVENT SID SEND STATUS: SID ERR: 0, TYPE: 2, ID: <id>, LINK: 1
Key check: UL sent via BLE
6 Wait for file transfer to start (blocks transferring):
Monitor EN log
DEC: M:15 [3:5:1]
Key check: File transfer started
7 Cancel the file transfer:
sbdt cancel 0 0x00
CMD: ERR: 0
Key check: File transfer cancelled. Note: The cancel is not immediate; chunks in flight from GW or cloud will continue to arrive. Device tags them as errors and sends response [3:5:3] (by design). SDK triggers on_sbdt_error.
8 Check file transfer task status on cloud Task status: FuotaDone
Wireless device status: Successful
Key check: Cloud confirms task complete

Test Case ID: BLE/EP/API/FILETRANSFER/BV/03: Print the progress of the transfer and current file offset

Field Value
Case ID C103619296
Executable by Customer Yes
Preconditions
  • EN is registered in Sidewalk network
  • EN has time synchronized
  • BLE stack initialized
  • (Preconditions to be provided.)
Test Steps
Step Description Expected Result
1 Initialize BLE stack, start, and initialize SBDT:
sid init 1
sid start
sbdt init
SBDT: [NO LOAD]
CMD: ERR: 0
Key check: SBDT initialized
2 Create a FUOTA task on AWS:
File: fuota_test_file_10240bytes.txt, block_size: 1024
Note the task_id from response
FUOTA task created successfully
Response: { "Id": "<task_id>" }
Key check: task_id obtained
3 Associate EN wireless device ID with the FUOTA task Response: 2xx
Key check: EN associated with FUOTA task
4 Schedule start time for the FUOTA task (at least 5 minutes from now) Response: 2xx
Key check: FUOTA task scheduled
5 Wait for BLE disconnected, establish BLE connection and send UL:
sid conn_req 1
sid send TEST
EVENT SID SEND STATUS: SID ERR: 0, TYPE: 2, ID: <id>, LINK: 1
Key check: UL sent via BLE
6 Wait for file transfer to start (blocks transferring):
Monitor EN log
DEC: M:15 [3:5:1]
Key check: File transfer started
7 Print file transfer progress:
sbdt stats 0
FILE_OFFSET: 2048, FILE_PROGRESS: 49
Key check: Progress and file offset retrieved successfully

Test Case ID: BLE/EP/API/FILETRANSFER/BV/04: Print various parameters of the transfer

Field Value
Case ID C103619297
Executable by Customer Yes
Preconditions
  • EN is registered in Sidewalk network
  • EN has time synchronized
  • BLE stack initialized
  • (Preconditions to be provided.)
Test Steps
Step Description Expected Result
1 Initialize BLE stack, start, and initialize SBDT:
sid init 1
sid start
sbdt init
SBDT: [NO LOAD]
CMD: ERR: 0
Key check: SBDT initialized
2 Create a FUOTA task on AWS:
File: fuota_test_file_10240bytes.txt, block_size: 1024
Note the task_id from response
FUOTA task created successfully
Response: { "Id": "<task_id>" }
Key check: task_id obtained
3 Associate EN wireless device ID with the FUOTA task Response: 2xx
Key check: EN associated with FUOTA task
4 Schedule start time for the FUOTA task (at least 5 minutes from now) Response: 2xx
Key check: FUOTA task scheduled
5 Wait for BLE disconnected, establish BLE connection and send UL:
sid conn_req 1
sid send TEST
EVENT SID SEND STATUS: SID ERR: 0, TYPE: 2, ID: <id>, LINK: 1
Key check: UL sent via BLE
6 Wait for file transfer to start (blocks transferring):
Monitor EN log
DEC: M:15 [3:5:1]
Key check: File transfer started
7 Print file transfer parameters:
sbdt params 0
FILE_ID: 0, FILE_SIZE: 4098, BLOCK_SIZE: 1024, MIN_SCRATCH_SPACE: 2712, FILE_DESCRIPTOR_SIZE: 0, SCRATCH_BUFFER_SIZE: 6144
Key check: Parameters retrieved successfully

Test Case ID: BLE/EP/API/FILETRANSFER/RECOVERY/BI/01: Recover transfer after EP powered off and back on

Field Value
Case ID C103619298
Executable by Customer Yes
Preconditions
  • EN is registered in Sidewalk network
  • EN has time synchronized
  • BLE stack initialized
  • (Preconditions to be provided.)
Test Steps
Step Description Expected Result
1 Initialize BLE stack, start, and initialize SBDT:
sid init 1
sid start
sbdt init
SBDT: [NO LOAD]
CMD: ERR: 0
Key check: SBDT initialized
2 Create a FUOTA task on AWS:
File: fuota_test_file_10240bytes.txt, block_size: 1024
Note the task_id from response
FUOTA task created successfully
Response: { "Id": "<task_id>" }
Key check: task_id obtained
3 Associate EN wireless device ID with the FUOTA task Response: 2xx
Key check: EN associated with FUOTA task
4 Schedule start time for the FUOTA task (at least 5 minutes from now) Response: 2xx
Key check: FUOTA task scheduled
5 Wait for BLE disconnected, establish BLE connection and send UL:
sid conn_req 1
sid send TEST
EVENT SID SEND STATUS: SID ERR: 0, TYPE: 2, ID: <id>, LINK: 1
Key check: UL sent via BLE
6 Wait for file transfer to start (blocks transferring):
Monitor EN log
DEC: M:15 [3:5:1]
Key check: File transfer started
7 Power off EN and re-initialize:
sbdt deinit
sid deinit
Reboot EN
Wait 10 seconds to simulate EN offline
sid init 1
sid start
sbdt init
SBDT: LOAD [...]
CMD: ERR: 0
Key check: EN re-initialized, pending transfer detected (LOAD)
8 Wait for file transfer to complete (timeout: 600s):
Monitor EN log
DEC: M:15 [3:D:2]
Key check: File transfer resumed and completed
9 Check file transfer task status on cloud:
task_id: <task_id>
Task status: FuotaDone
Wireless device status: Successful
Key check: Cloud confirms transfer complete

Test Case ID: BLE/EP/API/FILETRANSFER/RECOVERY/BI/02: Recover transfer after EP was out of range from GW

Field Value
Case ID C103619299
Executable by Customer Yes
Preconditions
  • EN is registered in Sidewalk network
  • EN has time synchronized
  • BLE stack initialized
  • (Preconditions to be provided.)
Test Steps
Step Description Expected Result
1 Initialize BLE stack and start:
sid init 1
sid start
sbdt init
EN is started and time synced
Key check: SBDT initialized
2 Create FUOTA task, associate EN, and schedule start:
Call CreateFuotaTask API
Call AssociateFuotaTask API
Call ScheduleFuotaTask API (Gamma 3 min, Prod 5 min later)
FUOTA task created and scheduled
Key check: Task ready
3 After data blocks start sending, move EN out of GW range Transfer interrupted
Key check: EN out of range
4 After 1 minute, move EN back to GW range File transfer recovered. Sidewalk Cloud resends remaining blocks.
Device receives uncorrupted file.
Expected Finalize Response:
DEC: M:15 [3:8:1]
ENC: M:15 [3:8:3]
DEC: M:15 [3:D:2]
Key check: File transfer completed successfully

Test Case ID: BLE/EP/API/FILETRANSFER/RECOVERY/BI/03: Recover transfer after GW that was using to send packets switched to another GW

Field Value
Case ID C103619300
Executable by Customer No
Preconditions
  • EN is registered in Sidewalk network
  • EN has time synchronized
  • BLE stack initialized
  • Two GWs available (GW1, GW2)
  • (Preconditions to be provided.)
Test Steps
Step Description Expected Result
1 Initialize BLE stack and start:
sid init 1
sid start
sbdt init
EN is started and time synced
Key check: SBDT initialized
2 Create FUOTA task, associate EN, and schedule start:
Call CreateFuotaTask API
Call AssociateFuotaTask API
Call ScheduleFuotaTask API (Gamma 3 min, Prod 5 min later)
FUOTA task created and scheduled
Key check: Task ready
3 After data blocks start sending, turn off GW1 and turn on GW2 File transfer recovered via GW2. Sidewalk Cloud resends remaining blocks.
Device receives uncorrupted file.
Expected Finalize Response:
DEC: M:15 [3:8:1]
ENC: M:15 [3:8:3]
DEC: M:15 [3:D:2]
Key check: File transfer completed successfully

Test Case ID: BLE/EP/API/FILETRANSFER/RECOVERY/BI/04: Recover transfer after GW that was using to send packets being opt-out

Field Value
Case ID C103619301
Executable by Customer No
Preconditions
  • EN is registered in Sidewalk network
  • EN has time synchronized
  • BLE stack initialized
  • (Preconditions to be provided.)
Test Steps

No test steps available for this test case.


Test Case ID: BLE/EP/API/FILETRANSFER/RECOVERY/BI/05: Recover transfer after GW that was using to send packets powered off for a while and back on

Field Value
Case ID C103619302
Executable by Customer Yes
Preconditions
  • EN is registered in Sidewalk network
  • EN has time synchronized
  • BLE stack initialized
  • File transfer in progress
  • (Preconditions to be provided.)
Test Steps
Step Description Expected Result
1 Wait for the device to start receiving parts of the file, then turn off GW for 5 minutes, then turn it back on File transfer recovered. Sidewalk Cloud resends remaining blocks.
Device receives uncorrupted file.
Expected Finalize Response:
DEC: M:15 [3:8:1]
ENC: M:15 [3:8:3]
DEC: M:15 [3:D:2]
Key check: File transfer completed successfully

Back to top

©2023 Amazon.com, Inc. or its affiliates (collectively, “Amazon”). All Rights Reserved.