Trying to set up attribute reporting I thought I had found a solution but was apparently wrong. My coordinator is sending an attribute reporting request with a minumum reporting interval of 0 seconds, which is working just fine with all the other devices I have available. The nRF52840 is rejecting this as an invalid value. If I force the coordinator to request a reporting interval minimum of 1 second it is accepted and reporting takes place.
There is a macro definition ZB_ZCL_MIN_REPORTING_INTERVAL defined in zb_zcl_reporting.h. I thought that changing it would allow the stack to accept a reporting interval of 0 seconds from the coordinator but it appears that is not the case. I tried to search for uses of this macro and failed to find any so I don't know what it is really for. There is no explanation of how or why it should be used, which seems to be a common theme in the 'documentation' for the Zigbee API making it extraordinarily difficult to use.
Can you explain how the reporting interval is defined? What are acceptable values when attempting to configure reporting and, if possible, how can these be controlled so that devices are compatible with commercial hubs and coordinators available on the open market?