This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

NRF52832 Firmware Upgrade using Esp8266

Hi Team

I am trying to implement the firmware upgrade for master controller nrf52832 on chip using esp8266 over uart and I am very new with this boot-loader part.

I had gone through many examples and trying to understand the flow from where to start. Code had already implementation of DFU using nrf connect application and working, but now I need to do this using esp8266.

My flow is I will download the hex file from the server and then upgrade the hex file form esp8266 over uart.

I had seen the examples - secure_bootloader_dfu and iot example but still not able to understand the example.

Any help or suggestion in this.

Parents Reply Children
  • Softdevice is present. But I had a doubt that why it is working in BLE mode but not in Serial mode. 

  • It's been a few months so I would need to have an update of what you are working on. 

    On the bootloader side, did you modify anything  ? Have you tried to test doing DFU to a unmodified bootloader from PC (instead of ESP) ?

    On the DFU master side, have you managed to build it ? Have you tested that with unmodified bootloader ? 
    Which SDK version are you working on ? 
    Are you combining BLE DFU bootloader and UART DFU bootloader ? 

  • On bootloader I didn't make any changes:

    I am using SDK 14.2 that supports BLE DFU and Serial DFU both.

    Yes with PC using NRF util I am getting same response.

    DFU master I had studied that packet protocol that needed to be sent and design a logic accordingly.

    After more debugging  I had observed that - 

    sd_flash_page_erase(p_op->erase.page + p_op->erase.progress);

    This function is not returning only in case of serial dfu but working fine in BLE DFU.

  • I'm not aware of an example in SDK v14.2 that support both BLE and Serial. From where you got it ? 

    Again, please try to always test with stock example first and make sure it works before you test with anything else. 

  • Apologies for not making myself clear.

    I meant is Serial DFU and BLE DFU are present in Examples in SDK14.2. 

    What I am doing is, I had a code that supports BLE DFU and working fine. In the same code I had enable the Serial DFU also. But only use one at a time, either use BLE or use Serial.

    In the field I don't have any BLE connections at client site so in that case I will using Serial DFU to upgrade my nrf firmware and where BLE is available I will be using BLE DFU.

    I have to implement those feature in same firmware because I am not aware which device will be going to client, so all devices should support both.

    So, after all I did I am getting this error that I had mentioned earlier.

    Is there any way to resolve this error because my DFU controller is ready for testing, only this error is causing problems.

    Please suggest what should I do in this.

    Currently I am trying with example for Serial DFU mentioned in SDK 14.2 will share the results here.

Related