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.

CC1350: CSMA implementation

Part Number: CC1350

hi sir

i am using the cc1350 launchpad for my application. i have to implement CSMA Network in my application. because my application is 1 gateway and no of sensor device. so

i have used the one example code of ti for implementing CSMA. 

here what i am doing is .

Step1. sensor node always is in RX mode.

step2 . when it Receive data it will vallidate and fill the tx packet.

step3. after filling packet of tx. before Tx . cheac weather CH is busy or not.

step4. when get channel idel then send the packet.

for that purpose i am  using below configuration settings . that i have done  in code.

/* Modify CMD_PROP_TX and CMD_PROP_RX commands for application needs */
/* Set the Data Entity queue for received data */
RF_cmdPropRx.pQueue = &dataQueue;
/* Discard ignored packets from Rx queue */
RF_cmdPropRx.rxConf.bAutoFlushIgnored = 1;
/* Discard packets with CRC error from Rx queue */
RF_cmdPropRx.rxConf.bAutoFlushCrcErr = 1;
/* Implement packet length filtering to avoid PROP_ERROR_RXBUF */
RF_cmdPropRx.maxPktLen = PAYLOAD_LENGTH;
RF_cmdPropRx.pktConf.bRepeatOk = 0;
RF_cmdPropRx.pktConf.bRepeatNok = 1;
RF_cmdPropRx.startTrigger.triggerType = TRIG_NOW;
RF_cmdPropRx.pOutput = (uint8_t *)&rxStatistics;

/* Settings for the No operation commands i.e RF_cmdNop*/
RF_cmdNop.pNextOp = (rfc_radioOp_t*) &RF_cmdPropCs;
RF_cmdNop.startTrigger.triggerType = TRIG_ABSTIME;
RF_cmdNop.startTrigger.pastTrig = 1;
RF_cmdNop.condition.rule = COND_STOP_ON_FALSE;


/* Modify the settings for the carrier settings set the receiver sensitivity threshold level and command end time*/
RF_cmdPropCs.pNextOp = (rfc_radioOp_t*) &RF_cmdCountBranch;
RF_cmdPropCs.rssiThr = RSSI_THRESHOLD_DBM;
RF_cmdPropCs.csEndTime = (IDLE_TIME_US + 200) * ucNetwork_config.Device_ID; /* Add some margin */

/* settings for the count branch command i.e RF_cmdCountbranch */
RF_cmdCountBranch.counter = CS_RETRIES_WHEN_BUSY;
RF_cmdCountBranch.pNextOp = (rfc_radioOp_t*) &RF_cmdPropTx;
//RF_cmdCountBranch.pNextOpIfOk = (rfc_radioOp_t*) &RF_cmdPropCs;

/* Modify the Transmitter command settings i.e CMD_PROP_TX */
RF_cmdPropTx.pktLen = 0;
RF_cmdPropTx.pPkt = txPacket;
RF_cmdPropTx.startTrigger.pastTrig = 1;
RF_cmdPropTx.startTime=0;

here i am executing the separate RF runcmd () function for the RX. and for the Tx separate RF runcmd () funtion i am using.

after this command setting i have connect two sensor and one gateway. 

here gateway send the data. data has been received both sensor device. but i  am getting only one  sensor data.

i am not getting data like one after another.

and also i want know the below configuration 

RF_cmdPropCs.csEndTime = (IDLE_TIME_US + 200) * 10; /* Add some margin */

what is this time. means the time between the two packet for the sending?

please guide me about this issue

Thanks