project-chip / connectedhomeip

Matter (formerly Project CHIP) creates more connections between more objects, simplifying development for manufacturers and increasing compatibility for consumers, guided by the Connectivity Standards Alliance.
https://buildwithmatter.com
Apache License 2.0
7.34k stars 1.97k forks source link

[1.3] Linux platform, OTA speed is very slow, how to get better speed #33039

Open GnarFang opened 5 months ago

GnarFang commented 5 months ago

Reproduction steps

The OTA-provider sample can work fine, And using the wifi/Ethernet to transmit data. but the speed of it is sadly slow, I have a 77mb *.ota file, and it made alomst 3 hours how can I resolve this situation, thank you guys very much!!

My platform is Linux platform. OTA Provider and request are running on different Linux platform (Soc i.MX93 or i.MX8MM)

provider

chip-ota-provider-app --discriminator 22 --secured-device-port 5565 --KVS /tmp/chip_kvs_provider --filepath /home/root/thermostat-app.ota &

request

chip-ota-requestor-app --discriminator 18 --secured-device-port 5560 --KVS /tmp/chip_kvs_requestor --periodicQueryTimeout 60 --otaDownloadPath /home/root/download.bin

Even if I add -P 5 to decrease the polling time, but the speed didn't improve. chip-ota-provider-app --discriminator 22 --secured-device-port 5565 --KVS /tmp/chip_kvs_provider --filepath /home/root/thermostat-app.ota -P 5&

[1713415243.648261][1468:1468] CHIP:ATM: ReceiveInit [1713415243.648271][1468:1468] CHIP:ATM: Proposed Transfer Control: 0x20 [1713415243.648281][1468:1468] CHIP:ATM: Range Control: 0x0 [1713415243.648291][1468:1468] CHIP:ATM: Proposed Max Block Size: 10240 [1713415243.648301][1468:1468] CHIP:ATM: Start Offset: 0x0000000000000000 [1713415243.648311][1468:1468] CHIP:ATM: Proposed Max Length: 0x0000000000000000 [1713415243.648321][1468:1468] CHIP:ATM: File Designator Length: 29 [1713415243.648331][1468:1468] CHIP:ATM: File Designator: /home/root/thermostat-app.ota [1713415243.650419][1468:1468] CHIP:BDX: OutputEvent type: InitReceived [1713415243.650440][1468:1468] CHIP:ATM: Sending BDX Message [1713415243.650451][1468:1468] CHIP:ATM: ReceiveAccept [1713415243.650460][1468:1468] CHIP:ATM: Transfer Control: 0x20 [1713415243.650470][1468:1468] CHIP:ATM: Range Control: 0x0 [1713415243.982741][1468:1468] CHIP:ATM: Max Block Size: 1024 [1713415243.982754][1468:1468] CHIP:ATM: Length: 0x0000000000000000

The Max Block Size is limited to 1024. only 10KB data can be transferred in one second.

Bug prevalence

Whenvever I do this.

GitHub hash of the SDK that was being used

1.2 /1.3

Platform

IMX8

Platform Version(s)

No response

Type

Core SDK Performance Improvement

Anything else?

No response

KEEPHEADU commented 2 weeks ago

I have the same problem. I use efr32mg24.