This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LP-EM-CC2340R53: How Zephyr mesh implements LPN and reduces power consumption to low levels

Part Number: LP-EM-CC2340R53

Tool/software:

Hi, I created the BLE Mesh routine using simplelink-zephyr and configured CONFIG_BT_MESH_LOW_POWER in prj.conf and added bt_mesh_lpn_set(true) in main.c. I'm using simplelink-zephyr to create the BLE Mesh routine.

In the actual test, I found that the FN keeps sending Offers but the module doesn't send requests, maybe the power is too low? Or it has some requirement for FN?

Looking at the current, the module wakes up every 1 second, what kind of wakeup is this?

Even with serial printing turned off, the minimum current is 8uA, can this be reduced?

(This graph shows the current values when the module retains the serial log prints)

  • Hi !

    I would need more information about your setup in order to give you advices to fix your problem :

    - What topology are you use for your test ? You're talking about having a FN (which I assume is Friend Node in this context), and a low power node. Do you have other nodes ?
    - What is it that you call a "module" when you say "the module doesn't send requests" ? Is it the low power node ?
    - What do you mean by "offers" when you say " the FN keeps sending Offers" ?
    - Is every node running Zephyr ? Which sample are you using and what exactly are you flashing on each node ?
    - Are all nodes running on a CC2340R53 Launchpad ?

    As for the current, according to the CC23405 datasheet, in standby mode it should be below 1 uA for the MCU, but with a peripherals like Timers or SPI, it could reach around 8 uA. I will try to measure the current on Zephyr for a simple blinky application on a Launchpad and tell you the current I get.

    Kind regards,
    Maxence

  • Thanks for your reply. Here's my response:

    - My mesh network consists of only one Friend Node (FN) and one Low Power Node (LPN), there are no other nodes.
    - I used a Bluetooth sniffing tool, but it didn't capture any Friend Request packets from the LPN, so I'm unsure if the LPN actually sent the Friend Request.
    - The FN sends a Friend Offer after receiving a Friend Request. This might indicate that the LPN did send the request, which was possibly missed by the sniffer due to low transmission power or other reasons. However, since the FN continuously sends Friend Offers, it implies that the friendship between the LPN and FN has not been successfully established.
    - Only the LPN is running Zephyr, using the zephyr/samples/bluetooth/mesh example. And I modified prj.conf to enable LPN and power management.
    - The FN is a third-party module, not running Zephyr.
  • Hi,

    I will try to reproduce your environment on my side, and tell you if I can reproduce your bug, and if I can find a workaround.

    In the meanwhile, can you tell me which version of the downstream you are using, and if your LPN is on a Launchpad or a custom board ?

    Kind regards,
    Maxence

  • Thanks for the help, I'm using simplelink-zephyr v3.7.0-ti-8.40.00_ea and my LPN is on a custom board.

  • Hi !

    After testing on my side, I was able to create a friendship but the polling did not work. I asked the team responsible for the development of Bluetooth Mesh, and they confirmed that Low Power Nodes and Friendship Nodes are not yet supported by the Texas Instruments Zephyr downstream, but we are working on it. I will update you as soon as we have something to share.

    Kind regards,
    Maxence

  • Hi !

    The team responsible for the development of Bluetooth Mesh for Zephyr have updated me with a working sample for a Low Power Node with a Nordic Friend Node. The sample also fixes the 8uA standby current, which was caused by the external flash not being disabled.

    Do you have a FAE assigned to you that I could contact to give you access to this sample ?

    Kind regards,
    Maxence

  • Hi,

    Thank you for providing the Zephyr LPN sample. While testing it, we've encountered a power consumption issue we are unable to resolve.

    The LPN is waking up every 10 seconds to perform an action that consumes power consistent with a transmit-receive cycle, yet no data is being transmitted over the air. This behavior seems to be an internal, recurring process within the LPN stack when paired with a third-party FN.

    Could you please provide any insight? I want to minimize the power consumption of the LPN as much as possible.

    Thank you for your support.
  • Hi !

    I have sent a message to the team who created this sample, and we will get back to you as soon as we can.

    Kind regards,
    Maxence

  • Hi,

    May I ask when I can expect a response?

    In addition to the previous issues I mentioned, I also tried changing the PollTimeout value. However, after this modification, the LPN no longer seems to perform any polling.

    Thank you.

  • Hi !

    I've transferred your issue with the PollTimeout value to the team who provided me with the LPN sample. So far I did not receive any update, but I asked them if they had any on the power consumption or on the new PollTimeout issue.

    Kind regards,
    Maxence

  • Hi,

    Here is the log we captured. It shows that after the LPN and FN establish a connection, the node continues to send beacons.

    Additionally, the log indicates that the LPN’s receive window is quite long, which is a major reason for the higher current consumption.

    We hope this information helps your analysis.

    Thank you!
  • Hi,

    Thanks for the logs, this is valuable information that the team responsible for this will use to try to fix your issue.

    Kind regards,
    Maxence