The coordinator is connected to a computer, who send the IS command every 0,5 seconds. The first 6 IS commands get a response, after these 6 response the endpoint doesn’t send any IO data. Sometimes it sends 3 IO data response at once.
It seems for me that there is a buffer overflow of some kind.
I want to send the IS command, I don’t want the enddevice or coordinator acting on their own.
So IR seems for me out of the picture.
What are the SH, SL, and MY values of the endpoint (router)? Can you post the API remote command frame you are sending to the coordinator to query the IS value on the endpoint?
The API frame you are issuing is sending a broadcast IS command. In ZigBee, broadcasting should be limited to a maximum of 1 transmission per second, and even at that rate, it is not reliable.
You will see much better results if you change the API frame to send a unicast (directed) transmission to the router. To do this, change the following bytes:
00 00 00 00 00 00 FF FF
to match the 64-bit address of the router (SH and SL values on the router) and update the checksum. You can then send IS at a much faster rate.