nRF21540 does not work

I use nRF52840DK and nRF21540EK to develop BLE programs, and the program uses FLASH for BLE image storage, the program works well on the DK.
However, when I burned it into our own drawn PCB, FEM didn't seem to work (couldn't search for the device I wanted to connect to).

We tried to find out if nRF21540 was the cause, however when we burned another BLE program, the FEM was working correctly (broadcast device).

3146.code.zip

This is a program that doesn't work。

1385.Code1.zip

This is the test program.

  • Hi,

    Since your FEM seems to be working with a code and not with another, it could be that the problem is with the BLE code? 

    Could you confirm whether code or code1 is the BLE program that doesn't work?

    Regards,

    Priyanka

  • I'm sorry for replying to your message so late. I was on holiday the other day.

    I also think my code is the problem, so I can explain to you again what the main structure of my code is:

    1. --[This program can't use FEM]--
    MCUBOOT --> MAIN [Mount Little FS --> Start USB UART --> Power on FEM --> Check DFU mode --> Enable BLE]

    2. --[This program can use FEM]--
    Start USB UART --> Power on FEM --> Power on BLE

    The difference between the two BLE programs is that [1] will filter the specified manufacturer information to search for the specified Bluetooth device (host), [2] will be broadcast as a device and can be searched by mobile phones or computers.

    And [1] is available on nRF52840DK and nRF21540EK (I've modified part of the IO to make sure the program is compatible with the pins), you can search for the specified device and establish a connection. However, the device cannot be searched on my development board, and the message of successful Bluetooth startup can be seen from the debug information

    [2] It broadcasts correctly on my development board.

    Thanks!

  • I think the only difference from the DK board is this:
    Overlay:
    flash qspi: <NRF_PSEL(QSPI_CSN, 0, 24)>; //DK:17 Custom:24

  • Add:
    1: In addition to the above differences, our PCB will use a separate IO to power on the nRF21540.
    2: It can be used on the DK because the antenna of the DK itself works, not the nRF21540

  • Hi,

    carefree said:
    1. --[This program can't use FEM]--
    MCUBOOT --> MAIN [Mount Little FS --> Start USB UART --> Power on FEM --> Check DFU mode --> Enable BLE]

    Since this has more steps in the process, for diagnosing which part causes the issue, you could try to modify the program to bypass certain initialization steps (e.g., mounting LittleFS or checking DFU mode) and see if the FEM starts working. So this can help us isolate to which part causes the issue.

    Also make sure that the FEM is properly set up or configure for the receive mode, i.e. you could recheck the control logic.

    -Priyanka

Related