I'm porting software which uses a Digi XBee (Series 2 PRO) as a computer to ZigBee network interface to use a TI CC2530 based USB dongle as an alternative network interface device (it's sourced from a 3rd party, so I don't have direct control over the firmware yet, but it talks the TI Monitor and Test API through a FTDI USB/serial chip).
I was using (mostly) just two of the XBee API calls:
0x11 to send a ZigBee packet (takes parameters, destination IEEEAddr, NWKAddr, ClusterID, ProfileID, SrcEP, DstEP, radius, flags, payload)
The XBee (if configured properly) then returns all ZigBee related packets as a type 0x91 API packet which has source IEEEAddr, NWKAddr, ClusterID, ProfileID, SrcEP, DstEP, flags, payload)
From my understanding of the TI protocol, AF_DATA_REQUEST seems to be the closest thing to the XBee send method (it only takes 16bit NWK address, whereas the XBee accepts both NWK and IEEE -- but I can work with that).
My problem is with the receive, especially with responses from ZDP/ZDO. These are returned as separate command codes in the TI protocol. I would much prefer to get the raw packet and do the parsing myself (as I've the software already written for that). Is this possible?