Configure Reporting

I am trying to configure my Xbee sensor to send report at fixed interval time.
The method that I got from my sensor manufacturer:

Configure reporting (request)
Device battery report(configure reporting request)
Head: FA
Length: 10
Basic Command:3D
Target device short address: 9A A0
Target device ep:01
Cluster:01 00(Power Cluster)
Cmmand ID:06
Direction: 00
Attribute ID:21 00(power) Attr Data Type:20
Mini report time(s):05 00 (5s)
Max report time(s):3C 00 (60s)
Change record:00
Test Command: FA 10 3D 9A A0 01 01 00 06 00 21 00 20 05 00 3C 00 00 04 F5

Bind (request)
bind Basic Command:45
Target device short address:9A A0(This item is missing from the protocol document)
Original device MAC address:C1 C8 E7 0B 00 6F 0D 00
Original device ep:01
Cluster of Bind device:01 00(power)
Target device address type:03
Target device MAC address:2C B3 E7 0B 00 6F 0D 00
Target device ep:01
End code:F5
Test Command:FA 18 45 9A A0 C1 C8 E7 0B 00 6F 0D 00 01 01 00 03 2C B3 E7 0B 00 6F 0D 00 01 AE F5

I can understand that the first one mean to send [command ID 0x06 - configure reporting] with the attribute packet [Direction,AttributeID,DataType,MinReportingInterval,MaxReportingInterval].
So I sent [0x10, 0x00, 0x06, 0x00, 0x21, 0x00, 0x20, 0x05, 0x00, 0x3C, 0x00, 0x00]
which means [frameControl,sequenceNumber,cmdID,(followed by the above attribute packet)]

then I would receive [0x18, 0x00, 0x07, 0x00] from the sensor which is the configure reporting response with a success status. But I don’t know how to bind the sensor to the MAC address after that. Any help on this please?

Take a read of

I have read the documentation, it doesn’t seem to be related. The payload format given are different.

On that particular XBee, that is how you do a binding request. Keep in mind that a binding request may include software level items that the product manual is not going to cover.

Can you advice me on how to send a binding request of the given format please? I am using an api library that sends in a fixed format which is [frameControl,sequenceNumber,cmdID,(followed by the above attribute packet)].
As I am not given with a command ID, I do not know how to proceed with the binding request.

You need to use API mode with Explicit frames. You also need to read over the next section of the manual that covers Group tables as that is part of binding.

I have tested with the following, what I have sent to the sensor:
64-bit destination address 0013a2004105dc3f
16-bit destination address 0000
64-bit destination address 005043c9a3362145
16-bit destination address 8d35
[Data sent to sensor]
7E002C1101005043c9a33621458d350000002000000000[ZDO Payload]76
Start Delimiter 7E
Length 002C
Frame Type 11
Frame ID 01
64-bit destination address 005043c9a3362145
16-bit destination address 8d35
Source end point 00
Destination end point 00
Cluster ID 0020 (End Device Bind Req)
Profile ID 0000
Broadcast radius 00
Options 00
ZDO Payload 00358d452136a3c9435000010100033fdc054100a2130001
Checksum 76
[ZDO Payload]
Transaction sequence 00
Target device short address 358d
Original device MAC address 452136a3c9435000
Original device ep 01
Cluster of Bind device 0100 (Power)
Target device address type 03
Target device MAC address 3fdc054100a21300
Target device ep 01

I have also tested with the standard format from cluster 0020 (End Device Bind) and 0021 (Bind req), it does not seem to work. Able to tell me if I made an error please?

ZDO commands are generally done in Little Indian Format.