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.

the actual data transfer rate is 250kbps?

Other Parts Discussed in Thread: CC2530

how to test the network data transfer rate,and i get the information that it is 250kbps in some materials,but how to verify it?

and there are some pepole said that it can't achieve that datarate,does there any one can give me some datails about how to  test the data rate.

tnanks

  • Hi Xiaoqiang,

    In my experience, there is no way to achieve this 250k bps data transfer rate using cc2530. If you want to do some experiments, you can start a timer event which wakes up every 2 milliseconds in an end device and use AF_DataRequest to send 64 bytes data to coordinator when this end device wake up. If all the packets can be received by coordinator, the data rate is (1000 milliseconds/2 milliseconds)x64bytesx8=256k bps. Of course, is is impossible to receive all packets because the limits of data rate is 250k bps. Then, you can increase the wake up period by yourself and see at what value you can receive all packets. In my experiment, the data rate is under 20 kbps.

    Regards!

    YK Chen

  • thank you for your reply.

    unfortunately,i haven't understand the method you have told me, could you give me more details,maybe some code segment is helpful.

    thank you.

  • Hi Xiaoqiang,

    You can do as the followings:

    1. In zcl_xxx_event_loop(), add SENDPKT_EVT:

      if (events & SENDPKT_EVT)
      {
          osal_start_timerEx( zcl_xxx_TaskID, SENDPKT_EVT, _30_MSEC_);
          AF_DataRequest( &_xxx_DstAddr, &_xxx_epDesc,
                           _xxx_CLUSTERID,
                           (byte)SEND_BUFF_SIZE,
                           (byte *)pSendBuf,
                           &_852_TransID,
                           AF_DISCV_ROUTE, AF_DEFAULT_RADIUS);
        return (events ^ SENDPKT_EVT);
      }
    2.  In zcl_xxx_HandleKeys(), add code to start SENDPKT_EVT when SW_1 key is triggered

      if ( keys & HAL_KEY_SW_1 )
      {

          osal_start_timerEx( zcl_xxx_TaskID, SENDPKT_EVT, _30_MSEC_);

       }

    You can set SEND_BUFF_SIZE=64 and fill your own data in pSendBuf every time before you call AF_DataRequest in step 1. In this way, if your receiver can receive all of the packets, the data rate is around 17K bps ( (1000msec/30msec)*64*8=17066). In you experiments, you can change _30_MSEC_ to what you want to experiment.

    Regards!

    YK Chen