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.

CCS/LAUNCHXL-CC1352P: GATT/ATT Indication

Part Number: LAUNCHXL-CC1352P

Tool/software: Code Composer Studio

Hi,

I am working on the simple central project. I would like to modify the simple central project in order to manage indication message from a GATT server when a characteristic value is changed. I analysed the code of simple central, I understood that the client has to send an acknowledge message once the first indication of type attHandleValueInd_t  is received. The second step is the server respond to the ACK message with an other attHandleValueInd_t message. But I don't understand where sould I use the GATT_ResgisterForInd() function which subscribed the client to the notification ? I would like to someone confirm or not my guess on the processing indication message. The GATT_Indication() function should be called in the function that process the GATTMsg once a ATT_HANDLE_VALUE packet is received in order to send a ACK message. 

Best Regards,

Paul-Emile Perrin

  • Hi everyone,

    I have some news, I clarify some of my concerns. I think I shouldn't call the GATT_Indication function for the client it's for the server. I should prcosse the ATT_HANDLE_VALUE_IND message in the function SimpleCentral_processGATTMsg send by the server and once this type of message received I call the function ATT_HandleValueCfm to send an acknowledge message. Is it the good solution ? Or am I on the right way or not ?

    Best Regards,

    Paul-Emile Perrin

  • Hi Paul-Emile,

    Sorry we don't have an example application that showcases this.

    There is a note on GATT_RegisterForInd() in the user's guide:

    You're correct, GATT_Indication() is called by the server. 

  • Hi Marie,

    Thanks you for your response, the note in the user's guide help me a lot. I am trying to notify the client when I change the value of the characteristique coded on 2 bytes. I test to send a write request on the characteristic which has Read/Write/Identification permission but the GATT client doesn't receive the ATT_HANDLE_VALUE_IND from the GATT server(sensortag). So I can't to send back the ack message to the GATT server. I debug step by step the function processing the GattMsg in the client. I put a breackpoint in the case of ATT_HANDLE_VALUE_IND but the debug session doesn't stop so I deduce the event received isn't a ATT_HANDLE_VALUE_IND. I put too a breackpoint point in the case of an ATT_WRITE_RSP and the debug session this time stop well. I guess I write sucessfully in the characteristic of the GATT Server but i don't receive the indication message in the GATT client. I attache to the post, the pictures of my code based on the simpleCentral that I modified in order to process indication message. I think it's maybe due to the timeout which is wrong configured but I let the default timeout from SimpleCentral so I don't know.

    Best Regards,

    Paul-Emile Perrin