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.

CC1120 transmit speed

Other Parts Discussed in Thread: CC1120

I need advice for speeding up TX times for small packet size transmissions.

I'm using  CC1120DK to test . In testing the time it takes for packets to be transmitted I have set up the following configuration using easylinkTX  code as a template... turned off preamble,  sync packets = 2, 2-FSK, 3000bps. I have made the following time measurements regarding bytes sent and estimated time to sent VS Actual.

2 sync only: estimated TX time = 5.333ms actual = 15.617ms.

2 sync +2 payload:  estimated TX time = 10.666ms actual = 20.8ms. 

2 sync +6 payload:  estimated TX time = 21.333ms actual = 31.563ms.

I have measured the processor time and experimented with turning off auto calibration but these factors are insignificant compared to the large discrepancy in time between 2-FSK bit rate and actual TX times especially at smaller packet sizes.

My application involves FCC part 15.247 50 channel hopping with fast acquisition time and requires high sensitivity, so simply turning up the bit rate is not a good option, plus the issue seems to be with the TX startup time since larger packet sizes become more efficient and closer to estimated times for the given bit rate.

  • Hi

    How are you measuring your TX times? And are you sure you have set the preamble to 0? from the delta it looks like you send approx. 4 bytes extra.

    If you look at the plot below, I have measured the CC1120 TX time using your parameters ( 3kbps, 2FSK, 2 byte sync and 2 byte payload). I look at the GPIO signal MARC_STATUS which shows the radio state together with the PKT_SYNC_RXTX signal which shows when the actual payload is sent.

    When you measure the TX time remember that you have to take account the symbol ramp time, which in this case I have set to 3/8 (PACFG1.RAMP_SHAPE = 0). This will add 0.25 ms to your tx time (ramp up and ramp down) opposed to your estimate.

    Looking at the plot you will see that the TX time (from cursor A to C) is 10.952 ms, which corresponds good with the theoretical time of 10.67 ms + 0.25 ms ramp time = 10.92 ms.

    Between cursor A and B is the time where the 2 byte sync word is sent. with ramp up this theoretical time will be 5.33 ms + 0.125 ms = 5.455 ms. The measured time is 5.46 ms.

     

  • I was measuring the TX time using code. The  halTimer32K() timer which I used to measure from STX to radioRxTxISR falling edge. I had the preamble turned off but the CRC/RSSI Packets were on in PKT_CFG1.APPEND_STATUS, so that was my time issue. I also set up the Marc_2pin Status and got about the same results as your plot on my logic analyzer. 10.9ms with RAMP_SHAPE = 3/8 VS 12.75ms with RAMP_SHAPE = 3 symbols.

    Thank you.