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.

AF_ACK_REQUEST issue

Other Parts Discussed in Thread: CC2530

How to use AF_ACK_REQUEST  option in AF_DataRequest?

  • where is zcl_registerClusterOptionLis?
  • 1. You can use AF_ACK_REQUEST in option parameter of AF_DataRequest to ask APS ack from destination.
    2. You can find zcl_registerClusterOptionList is implemented in zcl.c.
  • I have two questions:

    I use cc2530 and Z-stac mesh

    1) what is zcl.c's file name ? I can't find it...

    2)can I access to TX power register in generic application?

    what is the default value of TX power in genericapp?

  • If you use GenericApp, I think you don't have to use zcl_registerClusterOptionList for APS ack. You only have to use AF_ACK_REQUEST in option parameter of AF_DataRequest to ask APS ack from destination.

  • You are welcome.
  • In order to Set Tx Poer you can do this:

    // Use Maximum tx power...
    TXPOWER = 0xF5;

    The default value is 0xD5

    these are the value that can be used:
    /* 22 dBm */ 0xF5, /* characterized as 21.5 dBm */
    /* 21 dBm */ 0xE5, /* characterized as 21.1 dBm */
    /* 20 dBm */ 0xD5, /* characterized as 20.5 dBm */
    /* 19 dBm */ 0xC5, /* characterized as 19.7 dBm */
    /* 18 dBm */ 0xB5, /* characterized as 18.8 dBm */
    /* 17 dBm */ 0xA5, /* characterized as 17.4 dBm */
    /* 16 dBm */ 0x95, /* characterized as 15.5 dBm */
    /* 15 dBm */ 0x95, /* characterized as 15.5 dBm */
    /* 14 dBm */ 0x85, /* characterized as 14.2 dBm */
    /* 13 dBm */ 0x85, /* characterized as 14.2 dBm */
    /* 12 dBm */ 0x75, /* characterized as 12.3 dBm */
    /* 11 dBm */ 0x75, /* characterized as 12.3 dBm */
    /* 10 dBm */ 0x65, /* characterized as 10.6 dBm */

    Ti Specifies that using other value might cause unwanted side effects...
  • In my application, I've enabled APS_ACK for all transmission except group addressing and broadcast whithin  AF_DataRequest function

     req.txOptions = 0;

     if ( //( options & AF_ACK_REQUEST              ) &&  // Always use APS_ACK when in unicast...

          ( req.dstAddr.addrMode != AddrBroadcast ) &&

          ( req.dstAddr.addrMode != AddrGroup     )    )

     {

       req.txOptions |=  APS_TX_OPTIONS_ACK;

     }

    But I'm a little bit surprise about the results...  APS_ACK are requested but it seems that I don't get many AF_DATA_CONFIRM_CMD msg back...


    In ubica, I do see the incomming APS_ACK but, somehow, the ZDApp_ProcessOSALMsg does not receive the message often...


    In order to receive those confirm events, do I need to set the TxOtion in the cluster list or the simple fact of setting the TxOption when the message is sent is enough?

    Thanks,