We have gone through the following docs. We have enabled the support of StartFirmwareUpgrade API in our ONVIF driver.
We have received the same size as we have uploaded from the milestone client.we have checked the md5sum of received file and upload file. Both are matched also.
I can more elaborate by sharing two cases as per below.
Case 1 : small size firmware (partial firmware ) File size : 569K
The device are able to receive the firmware and we checked the md5sum too. we have got a success status from the milestone UI.
Wireshark Capture packets file : Success_lowsizefwfile.pcapngCase 2 : Large size firmware (Full firmware ) File size : 252M
We are getting the failure here. We are getting the system timeout failure within 100 sec. The 100 sec time i measured from http post request of milestone as per below.
POST / HTTP/1.1
Host: 172.16.32.253:12345
User-Agent: HTTP Image Reader
Connection: Keep-Alive
Content-Length: 252497055
Content-Type: application/octet-stream
In this case, After the status changed into failure, the device backend still receiving the firmware data. the device receives full firmware file at the end.Wireshark Capature packets file : fail_highsizefwfile.pcapng
I have uploaded the capture_packets.zip file for above both case along with milestone backend ONVIF logs. How we can ensure device firmware upgrade successfully in case of large firmware file. ?





