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/CC1310: Getting RSSI from Sensor

Part Number: CC1310

Tool/software: Code Composer Studio

Hello,

Is it possible for the sensor to get the RSSI (thus signal strength of the collector), during the handshake process, maybe via an ACK from the collector? Or should I send a separate packet from the collector back to the sensor to achieve this? 

Kind regards,

Mohamed 

  • Hi Mohamed,

    In sensor.c, there is a function called dataIndCB. In this function, the parameter that is passed into the function `pDataInd` has a value for RSSI. pDataInd->rssi.

    The function dataIndCB is called when the sensor is indicated that its received a message from the collector.

  • Hi Chris,

    Thanks for your response. This does correspond with the second option I had in mind, but I would rather to avoid having to send messages from collector to the sensor as much as possible due to energy consumption (As far I am aware, that is all dataIndCB provides: data such as config, tracking messages sent by collector; I do not use any of those). Hence why I would like to know whether I could obtain the RSSI from a response sent back to the sensor, e. g. poll confirmation or data confirmation, perhaps during the handshake?

    Kind regards,

    Mohamed

  • Sorry for the delayed response, due to work from home, responses can be delayed. Please allow me some time to look into this.

  • Mohamed,

    In the sensor, the only way to get the RSSI via code is to use the dataIndCB with messages from the collector. There are other callbacks in jdllc.c that are callbacks for association requests, etc., but they do not have open access to the RSSI. 

    If this is not related to the actual functionality and more related to your testing, you could also look at sniffer logs to see the RSSI. Wireshark will capture the RSSI in the logs.

  • When a sensor is looking for a network to join, I think you can use the link quality of the beacon sent from coordinator to sensor to find out the RSSI, by using the linkQuality variable provided by the PAN descriptor structure in the beacon notification callback.

    There is a relation between the link quality and the RSSI, which can be calculated such as explained here. I am not sure however if those constants are the same for the CC1310, could someone confirm this?

  • Yes, in scanCnfCB, you can get the link quality via the passed in parameter ApiMac_mlmeScanCnf_t which has ApiMac_panDesc_t variable with linkQuality as an attribute.