Update over the air

Hi,

I’ve enabled OTA firmware updates in our project using MCUboot. Before enabling OTA, everything worked correctly—our firmware received interrupts on pin P1.00 from one of our TI sensors with no issues.

However, after enabling OTA (MCUboot), the interrupt on P1.00 no longer triggers. It seems the bootloader is reconfiguring or overriding this pin before jumping to the application.

Could you please help me understand why this is happening and how to prevent MCUboot from altering this pin so the interrupt works again?

Thanks,

Alireza

  • Good morning Advin,

    These are two screenshots from Digital Analyzer, when I enable CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y, as you see, the proximity sensor doesn't send ACK:

    But when I disable the CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=n, the proximity sensor starts to send ack,

     

  • Hello,

    Sorry for the late reply. We have had some issues with DevZone lately. 

    That seems odd. The signals coming from the nRF53 seems identical in both cases. They have the same output voltage, I presume?

    Is there any other parts of the I2C traffic that seems different after you enable the DFU? Could it be something during the init sequence that doesn't happen after you enable DFU? You mentioned that the i2c_dev.name and i2c_dev.config changed What does it look like, before and after? These should be compile time variables.

    Best regards,

    Edvin

  • Hi Edvin,

    Thank you for your reply. I have resolved the issue by disabling the external flash, which corrected the behaviour. When the external flash is enabled, additional pulses appear on the SDA line, and these pulses interfere with the sensor’s operation

    Thanks,

    Alireza

Related