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

Location and Navigation Service Experimental

Hello Everybody,

I am trying to implement the LNS Experimental Service from SDK 14.1. I am asking myself why they split the flags in two seperate packets, because that is not what the BLE Spec is suggesting. I thought the 16 bit at start are the flags. I am just trying to figure out if i need to change it myself or if there is a perpose why the flags are split in 2 seperate packets.

Also is there a good method to distinguish the 2 packets in Android?

Thank you for your help.

Dominik

Parents
  • Hi,

    I'm a little puzzled about this myself, but unfortunately the guy who wrote the code doesn't work at Nordic anymore so I can't ask him about his reasoning. 

    The example is starting to get old and hasn't changed much since SDK 11. At that time our Softdevices didn't support MTUs longer than 23 bytes, and I wonder if the point of splitting the packets was to make sure that the payload didn't exceed this limit. Note the warning in your link: "...it is possible for this characteristic to exceed the default LE MTU size" (default was, and still is, 23). However, if this is the reasoning, the method seems a bit flawed since you might end up sending two packets while all the data could have fitted into one. 

    Nowadays you can increase the MTU size, and I don't see why you can't modify the example and fit all the data into one packet.

    Also is there a good method to distinguish the 2 packets in Android?
    Maybe you can use the flags? 

Reply
  • Hi,

    I'm a little puzzled about this myself, but unfortunately the guy who wrote the code doesn't work at Nordic anymore so I can't ask him about his reasoning. 

    The example is starting to get old and hasn't changed much since SDK 11. At that time our Softdevices didn't support MTUs longer than 23 bytes, and I wonder if the point of splitting the packets was to make sure that the payload didn't exceed this limit. Note the warning in your link: "...it is possible for this characteristic to exceed the default LE MTU size" (default was, and still is, 23). However, if this is the reasoning, the method seems a bit flawed since you might end up sending two packets while all the data could have fitted into one. 

    Nowadays you can increase the MTU size, and I don't see why you can't modify the example and fit all the data into one packet.

    Also is there a good method to distinguish the 2 packets in Android?
    Maybe you can use the flags? 

Children
No Data
Related