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.

Notification triggering: in profile or in app?

Hi everybody

I implement a special sensor profile for a sensor peripheral, which is similar to the new (and not jet existing) Environmental Sensing Profile.
 There it is possible to set special events when a notification is triggered, for instance if the characteristic value is above a certain limit, or after a certain time.

If I check the examples from TI I noticed, this kind of notification were triggered from the Application (e.g. thermometer). In the SimpleProfile profile, the notification (for characteristic 4) is triggered always on value change and is coded within the profile... I'm now not sure which way I should take.

I was therefore wondering: Is there a reason to implement the notification triggering from the Application? In my opinion, this is not really efficient because the trigger mechanism must be programmed again for every app. Or are there certain benefits by do this in the application?

I would really appreciate any ideas from you guys. How do you do this generally? And why?

Thanks in advance

Matthias

  • Hello Matthias,

    A non technical explanation is that you want your profile to take precedence over the app.  In designing your profile you want to grant an application permission to do certain things with the data, read/write/notify.  This is not only for convenience, but for security as well.

    The app will check to see what it is allowed to do with the data, included receiving notifications.  The app can then decide if it wants to receive them.

    Hope that makes sense.  If someone wants to provide a more technically correct explanation, please do so.

    Thanks,

  • Hi Greenja


    Thank you for your detailed answer.

    That certainly makes sense, especially the security aspect.
    I guess I will implement the profile "dumb" and will move the notification-trigger intelligence to the application level. This also gives the ultimate amount of flexibility because of the easy access of timers etc. Or has somebody another idea / explanation?

    Thanks