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

Interaction between LPN and Friend in a Mesh.

I am new to BLE and I have some question regarding Mesh and LPN which we cannot get a consistent result :

 

Assuming in a Mesh set up there are 2 Relay units (simply refer to as Friend#1 and Friend#2 here) spread out over, say, a home, and 2 Devices with one being a LPD (say, a push button a person will carry around being a LPN that is “mobile”, plus an alarm sounding unit).  My questions are :

 

If the LPN moved away from Friend#1 and close to Friend #2

  • If LNP totally out of Friend#1 range, will the LPN “automatically” make Friend with Friend #2 ?  If “yes”, what would happened to the “friendship” between the LPN and Friend#1 (terminated by Friend#2 automatically and immediately, or, Friend#1 terminate friendship with LNP after time out ?).
  • If LNP “not” totally out of Friend#1 range but very close to Friend#2 (thus the signal from Friend#2 is much stronger), will the LPN automatically make Friend with Friend #2 or stay with Friend#1 ?
  • If there are messages cache in Friend#1 not yet Poll by LPN, what will happen to those messages ? (considering the above 2 cases)
  • If LPN send a message that requires “acknowledgement”. What is the best way to do it ?  Go to sleep and let the Friend cache the acknowledgement message and then poll it later (assuming not an urgent matter that requires immediate response or re-transmission) ?  Keep the LPN’s radio on to receive message (will the acknowledge message be addressed to LPN directly thus allowing LPN to receive when radio stays on) ?  We probably have been doing some setting incorrectly and we are not getting any acknowledgement either way.  Is it better to use the App layer to create our own acknowledgment instead of using the built in acknowledgement capability ?

Many thanks in advance.

Parents
  •  Hi,

    I think most of your questions can be answered by looking into this article about LPN and friendship: https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.meshsdk.v5.0.0/md_doc_user_guide_modules_lpn_concept.html
    And reading about LPN in the Bluetooth Mesh specification.

    If LNP totally out of Friend#1 range, will the LPN “automatically” make Friend with Friend #2 ?  If “yes”, what would happened to the “friendship” between the LPN and Friend#1 (terminated by Friend#2 automatically and immediately, or, Friend#1 terminate friendship with LNP after time out ?).

    The LPN will search for a new friend. If the device fails to get any response from the Friend node, the Bluetooth mesh stack will terminate the friendship.

    "PollTimeout timer is used to measure time between two consecutive requests sent by the Low Power node. If no requests are received by the Friend node before the PollTimeout timer expires, then the friendship is considered terminated." it's explain in the Bluetooth Mesh model specification you can download from the Bluetooth website: https://www.bluetooth.com/specifications/specs/?status=active&keyword=mesh&filter= 

    If LNP “not” totally out of Friend#1 range but very close to Friend#2 (thus the signal from Friend#2 is much stronger), will the LPN automatically make Friend with Friend #2 or stay with Friend#1 ?

     The LNP will stay with the last node it made a friendship with, signal strenght doesn't play a role here. 

    If there are messages cache in Friend#1 not yet Poll by LPN, what will happen to those messages ? (considering the above 2 cases)

     Messages in cache in friend # 1 and are not yet delivered will be lost, including messages that are SAR acknowledged.

    If LPN send a message that requires “acknowledgement”. What is the best way to do it ?  Go to sleep and let the Friend cache the acknowledgement message and then poll it later (assuming not an urgent matter that requires immediate response or re-transmission) ?  Keep the LPN’s radio on to receive message (will the acknowledge message be addressed to LPN directly thus allowing LPN to receive when radio stays on) ?  We probably have been doing some setting incorrectly and we are not getting any acknowledgement either way.  Is it better to use the App layer to create our own acknowledgment instead of using the built in acknowledgement capability ?

     Yes, it's better to use the app layer if it's important to get a correct acking. You can use a "model" to send a "set" or "get-" message and get answer with some "status"-message.


    Best regards,

    Marjeris

  • Thanks a lot.  Will study carefully.

    By the way, I believe "If the device fails to get any response from the Friend node, the Bluetooth mesh stack will terminate the friendship." you mean the "LPN's Bluetooth mesh stack" (i.e. the LPN will initiate the termination).

Reply Children
No Data
Related