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

Device not connecting in boot loader mode

Hello ,

I am using nRF52832 controller in peripheral role. I have integrated Secure boot loader code. I am facing issue of mobile device is not getting connected to the DFU service in boot-loader.

When device is in Application  it is connected and operation is fine,but after entering DFU by triggering command from DFU service to enter boot-loader mobile does not get connected but device remains in boot-loader mode. SDK used is 15.2.0 . Secure bootloader example code from DFU section is used.

I am using Custom board with ready module integrated  of nrf52832 from RAYTAC (MDBT42Q-512KV2). Board has Power supply regulator on board. Input supply voltage 10 v to 30 v with 500 mA current rating. When i use supply input of 5 volt it works perfectly. But for 12 volts it gives me above error behavior. This issue is been faced after flashing secure boot-loader code. Without boot-loader code simple application works totally fine.

Thanks in advance.

Parents
  • Hello,

    When device is in Application  it is connected and operation is fine,but after entering DFU by triggering command from DFU service to enter boot-loader mobile does not get connected but device remains in boot-loader mode. SDK used is 15.2.0 . Secure bootloader example code from DFU section is used.

     What does that mean? How do you know it is "stuck in bootloader mode" if you are not able to connect? Can you see the advertisements from the bootloader?

     

    When i use supply input of 5 volt it works perfectly. But for 12 volts it gives me above error behavior.

     12 volts into the power supply regulator I suppose? What is the input voltage to the nRF at that point?

  • Hello Edvin,

    Device starts broadcasting with "Dfutarg" name when in bootloader mode. Doesn't that mean it it bootloader mode?

    12volt into power supply regulator and nRF gets 3.3 V . Input regulator can be given variable voltage from 5 volts to 30 volt.  But as I said earlier it works properly for 5 volt only .. i want to know what are the possibilities that could hamper the function?

  • ssc said:
    Why BLE do not allow service discovery in bootloader mode.. where it works in application ? 

     It does allow service discovery. Can you try to connect to it with nRF Connect for desktop? It should always do service discovery, while on mobile phones, it is the OS that decides whether it should do a service discovery or not. What are you trying to connect with? A phone? Is it the same behavior if you use nRF Connect for Desktop?

  • Can you try to connect to it with nRF Connect for desktop? It should always do service discovery, while on mobile phones, it is the OS that decides whether it should do a service discovery or not.

    Yes i have tried with desktop it behaves the same way it behaves for mobile. If it was the issue for discovery it should get at lower voltages too. 

    I get error 8: BLE_HCI_CONNECTION_TIMEOUT when i use 24 volt.

    So i referred to THIS link. and changed the PPM to 500 but no luck.

  • If it doesn't show up in nRF Connect for desktop either, then there must be something wrong. Have you tried to sniff the connection? Does the central send a service discovery message?

  • Hello Edvin ,

    I think it is clock related issue. I change the NRF_SDH_CLOCK_LF_SRC to  NRF_CLOCK_LF_SRC_SYNTH instead of NRF_CLOCK_LF_SRC_XTAL . Then Boot-loader worked for all over voltage range of 5 volt to 30 volts.  I have question that if Application BLE worked fine then why Boot loader had issue ?

    Thanks and regards

  • Are all the clock configurations in your bootloader and the application the same? Before you changed to NRF_CLOCK_LF_SRC_SYNTH in the bootloader, of course.

    The settings I am asking about are:

    NRF_SDH_CLOCK_LF_SRC
    NRF_SDH_CLOCK_LF_RC_CTIV
    NRF_SDH_CLOCK_LF_RC_TEMP_CTIV
    NRF_SDH_CLOCK_LF_ACCURACY

    Note that these are not the same as:

    NRFX_CLOCK_CONFIG_LF_SRC. I am looking for the defines with "..._SDH_..."

    Can you list these defines from the bootloader project and for the application project?

    BR,

    Edvin

Reply
  • Are all the clock configurations in your bootloader and the application the same? Before you changed to NRF_CLOCK_LF_SRC_SYNTH in the bootloader, of course.

    The settings I am asking about are:

    NRF_SDH_CLOCK_LF_SRC
    NRF_SDH_CLOCK_LF_RC_CTIV
    NRF_SDH_CLOCK_LF_RC_TEMP_CTIV
    NRF_SDH_CLOCK_LF_ACCURACY

    Note that these are not the same as:

    NRFX_CLOCK_CONFIG_LF_SRC. I am looking for the defines with "..._SDH_..."

    Can you list these defines from the bootloader project and for the application project?

    BR,

    Edvin

Children
Related