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.

Limiting data rate based on RSSI?

Other Parts Discussed in Thread: CC1200

We are developing a new product that transfers signal data using the CC1200.  We were planning on limiting the speed at which we transfer this signal data based on the RSSI values.  For example, if we had excellent RSSI numbers, we'd pump up the data rate to the max through-put.  Less than optimal RSSI, and we would reduce the data transmission rate.  We were doing this in the hope that it would reduce lost packets.


Does this sort of approach make sense?  If so, do we need to generate a calibrated RSSI Offset value to calculate the actually RSSI value for each board or is one calibrated RSSI Offset value sufficient for the given board design?


Thanks in advance for any advice you can send my way!

  • You actually need 2 different RSSI offsets depending on the RX filter BW.

    -99 for RX filter BW < 100 kHz
    -81 for RX filter BW >= 100 kHz

    Unless you dont't need the RSSI to be very accurate you can use the above offsets, which are measured on our reference design.
  • Thank you very much for your quick response. Are these values dependent on the base frequency (868Mhz, etc). The reason I ask is I saw a table in the PER_TEST software used to set this offset value and the name of the array specifically called out the frequency (i.e. rssiOffset868Mhz[3]). Interestingly, the values in that table were 102, 84, and 84.

    What about the idea of reducing data rate based on the RSSI value. Does that make sense? Is there really any benefit to doing this with respect to reducing packet comm problems? Intuitively, it seems like the right thing to do.
  • The RSSI offset is basically only dependent on the DVGA setting. 

    I assume that the datarate / RSSI would work fine. Check how wifi adjust the datarate.

  • Thank you again for the response. I've done some digging as you suggested with respect to wifi datarate adjustments. What I've seen doesn't seem to directly equate an RSSI value to data rate. Rather, there seem to be packet accumulators (good vs. bad packets) transmitted that are used to adjust the data rate up or down. At least that's what I've found so far. Did you have a specific resource in mind when you suggested I "Check of wifi adjust the datarate"? It may be too simplistic, but I was hoping that if I averaged the RSSI values obtained after the transaction of a few packets, that I could use this average RSSI value to made an educated guess as to what datarate has a chance. This really only needs to be a course estimate as I only intend to support 1Mbsp, 500kbps and 200kbps configurations.
    Thanks again for your advice so far!
  • Hi, the idea looks interesting, but have you thought about adaptation method? CC1200 radio could receive data at one data rate at the moment. So if you wait for packet at high speed you simply does not get packet if sender has already decreased baudrate.