Hi,
We are using OTA update in production and currently it takes about 40 seconds to update 70KB image. Is there a way to improve the speed?
Thanks!
Hi,
We are using OTA update in production and currently it takes about 40 seconds to update 70KB image. Is there a way to improve the speed?
Thanks!
Assuming master control panel version 3.10.0 you can do the following changes to the DFU script to increase overall throughput:
Step 1. Reduce connection interval:
Open "\Master Control Panel\3.10.0.14\lib\dfu\master_emulator.py", go to line ~237 and replace the following code snippet:
conn_params.ConnectionIntervalMs = 15
if self.master.Connect(self.myPeerDevice.DeviceAddress):
with
conn_params.ConnectionIntervalMs = 11.25
if self.master.Connect(self.myPeerDevice.DeviceAddress,conn_params):
Step 2. Disable packet receipt notification:
Open "\Master Control Panel\3.10.0.14\lib\nordicsemi\dfu\dfu_transport_ble.py", go to line ~109 and change the packet number from '10' to '0'.
If I remember correctly this should take about 10-15 seconds to upload the image with the above changes.
Assuming master control panel version 3.10.0 you can do the following changes to the DFU script to increase overall throughput:
Step 1. Reduce connection interval:
Open "\Master Control Panel\3.10.0.14\lib\dfu\master_emulator.py", go to line ~237 and replace the following code snippet:
conn_params.ConnectionIntervalMs = 15
if self.master.Connect(self.myPeerDevice.DeviceAddress):
with
conn_params.ConnectionIntervalMs = 11.25
if self.master.Connect(self.myPeerDevice.DeviceAddress,conn_params):
Step 2. Disable packet receipt notification:
Open "\Master Control Panel\3.10.0.14\lib\nordicsemi\dfu\dfu_transport_ble.py", go to line ~109 and change the packet number from '10' to '0'.
If I remember correctly this should take about 10-15 seconds to upload the image with the above changes.
doesnt seem to help im afraid...
Tested the above changes and realized that the suggested connection interval will be too short when packet receipt notification is disabled (scheduling of flash store fails). It needs to be at least 20 ms on 51. However, by disabling the packet receipt notification I was able to upload s110 v.8.0.0 (87KB) in ~15 seconds.
Are you using MCP v.3.10? Also, did you try to restart MCP after you did the change?
indeed im using mcp 3.10, but i dont use application itself, just doing it from command line with python script.
Is it possible that it's not invoking the correct dfu_transport_ble.py script? Sounds like the change you did is not being applied.
Can you share the command line arguments so I can try the same here?
its using the right script, because if i make a mistake on purpose and break the script it doesnt work:)
here is my command line:
"c:\Program Files (x86)\IronPython 2.7\ipy.exe" main.py --file c:\Keil_v5\OTA_NOBL.zip --address f1b472ce7137
Im wondering if the screen printout slows down the progress may be?