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.

Is this a bug of osal timer in ZStack-CC2530-2.5.0?

Other Parts Discussed in Thread: TIMAC, CC2530

TI experts

I'm using the sample-simpleApp, there is a sensor sending one byte to collector every 30s, and the collector send it to my ztool 2.0 thru uart0.

The ztool can get the data as a ZB_RECEIVE_DATA_INDICATION command, I can see MOST of the msgs are received every 30s accurately, but no all of them.

is there a bug in the osal timer?

here is my code of simpleSensor:

void zb_HandleOsalEvent( uint16 event )
{
……
  if ( event & MY_EVT )
{
static uint8 temp = 0;
temp++;
zb_SendDataRequest( 0x0000, SENSOR_REPORT_CMD_ID, 1, &temp, 0, AF_ACK_REQUEST, 1 );
osal_start_timerEx( sapi_TaskID, MY_EVT, 30000 );
} ……
}

here is the command received in ztool:

<RX>06:56:38.98 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>06:57:08.98 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>06:57:38.98 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>06:58:08.98 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>06:58:38.98 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>06:58:46.69 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>06:59:16.69 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>06:59:46.69 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:00:16.69 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:00:46.68 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:01:16.68 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:01:46.68 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:02:16.68 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:02:46.68 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:02:58.34 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:03:28.33 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:03:58.33 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:04:28.33 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:04:58.33 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:05:28.33 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:05:58.33 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:06:28.32 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:06:58.32 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:07:09.98 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:07:39.98 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:08:09.98 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:08:39.97 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:09:09.97 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:09:39.97 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:10:09.97 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:10:39.97 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:11:09.97 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:11:21.63 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:11:51.62 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:12:21.62 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:12:51.62 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:13:21.62 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)
<RX>07:13:51.62 COM3 ZB_RECEIVE_DATA_INDICATION (0x4687)

Best regards.
  • Hi,

    I'm experiencing the same problem using TIMAC 1.4.0 with CC2530.

    I have an osal timer with a period of 60 seconds using the reload option, and usually it works fine, but sometimes I have the event some seconds late (never sooner). In my case the error is accumulative, and after an hour I could have more than three minutes of delay.

    Best regards.

     

     

  • As you can see, I have most of the events every 30s accurately, the others sooner ,around 10s(nver later) .

    the collector-project have the following compile options:

    ZTOOL_P1
    MT_TASK
    MT_SYS_FUNC
    MT_AF_FUNC
    MT_AF_CB_FUNC
    MT_SAPI_FUNC
    MT_SAPI_CB_FUNC
    MT_APP_FUNC
    MT_DEBUG_FUNC
    MT_NWK_FUNC
    MT_NWK_CB_FUNC
    MT_UTIL_FUNC
    MT_ZDO_FUNC
    MT_ZDO_CB_FUNC

    (By the way, the problem didn't appear in the zstack-2.4.0-cc2530.)