Hello, I tried to do DFU using MCP 3.10.0.14 and I'm getting the error:
"Error during firmware upload. Timeout while waiting for response for START DFU"
How do I increase timeout in MCP??
It seems to happen when I try to upload bigger firmware.
Hello, I tried to do DFU using MCP 3.10.0.14 and I'm getting the error:
"Error during firmware upload. Timeout while waiting for response for START DFU"
How do I increase timeout in MCP??
It seems to happen when I try to upload bigger firmware.
if you are able to use nrfconnect, then i think you can proceed further. I think we are trying to move away from MCP and will support nRFConnect more in future.
Using nrfconnect on android is fine for me. Do you know if (and optionally when) the DFU feature would be implemented into PC version of nrfconnect?
hopefully in the next release, its in the backlog and we in support have no idea of priorities of the features.
I also have the MCP issue. I need the PC nrfConnect version ASAP.
"Timeout while waiting for response for START DFU" should be 60 seconds according to the documentation, but it seems to be less. A quick fix is to add an additional delay in "..\Master Control Panel\3.10.0.14\lib\nordicsemi\dfu\dfu_transport_ble.py" at line ~229:
def _start_dfu(self, program_mode, image_size_packet):
logger.debug("Sending 'START DFU' command")
self.send_control_data(DfuOpcodesBle.START_DFU, chr(program_mode))
logger.debug("Sending image size")
self.send_packet_data(image_size_packet)
# wait 10 seconds
sleep(10)
self._wait_for_condition(self.get_received_response, waiting_for="response for START DFU")
self.clear_received_response()
Reason for this failure is that the swap erase is taking too long time to complete when the FW image exceeds a certain size. I will report this internally so that it will be addressed when adding DFU support for nRFconnect.
Note that the MIN_CONN_INTERVAL should not be reduced as the flash writes may become a bottleneck. 15 ms is the lowest recommended interval.