This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Zigbee IAS Zone example

Hi,

I need help to clarify the API for IAS zone server.  If I can get example implementation,  it would be great.   

I have hard time understanding how zb_ias_zone_app_callback_t work.  There is no documentation on it.  Yes,  I found a link to it that just says.

typedef zb_ret_t(* 

zb_ias_zone_app_callback_t )(zb_uint8_t param, zb_uint16_t general_val)

and

zb_void_t zb_zcl_ias_zone_register_cb ( zb_uint8_t  endpoint,
zb_callback_t  process_result_cb,
zb_ias_zone_app_callback_t  general_cb 
)

Registry callbacks to get status of Zone Status Change Notification command.

Parameters
endpoint - local endpoint number
process_result_cb - notification sent callback function
general_cb

- general callback function

So,  Is the call back is called on Zone Status Change?   If it is only for Zone Status Change Notification,  Can you help to clarify the parameter ZB_ZCL_VALID_CIE_ADDR_SET that may be set on the call back?

Please let me know how I can get a good documentation on how the callbacks (the general_cb and process_result_cb in respect to IAS Zone Server.   

Thanks

Iman

Parents
  • Hi Marjeris,

    Thanks for the help.  Please confirm that the callback is only used when you write ias zone client.  Is this correct?  If you write ias zone server, you are the one that change the status.   If this correct, so why a client need notification of ieee address change?

    Please clarify a scenario where you want to get notification for ZB_ZCL_VALID_CIE_ADDR_SET.  

    In my guess due to the lack of documentation, this notification is use full for ias zone server during pairing when ias cie set its own address to an ias server.  

    Please help with a specific example on the above example when you use it as ias server.

    Thanks

Reply
  • Hi Marjeris,

    Thanks for the help.  Please confirm that the callback is only used when you write ias zone client.  Is this correct?  If you write ias zone server, you are the one that change the status.   If this correct, so why a client need notification of ieee address change?

    Please clarify a scenario where you want to get notification for ZB_ZCL_VALID_CIE_ADDR_SET.  

    In my guess due to the lack of documentation, this notification is use full for ias zone server during pairing when ias cie set its own address to an ias server.  

    Please help with a specific example on the above example when you use it as ias server.

    Thanks

Children
  • Hi,

    Sorry for the late reply. This function can be called by the IAS zone server in order to register internal application callbacks. You can register a callback for the Zone Status Change notification or register a general function callback with params zb_zcl_general_zb_params_e

    enum zb_zcl_general_cb_params_e
    {
     ZB_ZCL_VALID_CIE_ADDR_SET = 1,
     ZB_ZCL_CURR_ZONE_SENSITIVITY_LEVEL_SET = 2,
     ZB_ZCL_INIT_TEST_MODE = 3,
     ZB_ZCL_INIT_NORMAL_MODE = 4,
    };

    The Zone Status Change notification is generated spontaneously by the server once the Zone Status attribute changes, the documentation in ZCL spec mentions: "The Zone Status Change Notification command is generated when a change takes place in one or more bits of the ZoneStatus attribute" and is under 'Commands generated' by the IAS zone server.

Related