Home/Support/Support Forum/tx_status 0x72

tx_status 0x72

0 votes
We are using XBEE-PRO ZB RF Module in our application that consists of a single coordinators and 20 nodes in router modes.

I on tx_status API packets, I often see the delivery status as hex 0x72, which is not a documented delivery status.

Any idea what this is?

We are using the python-xbee module to capture traffic, and this is what it would look like

1519854042 process_zb_pkts: [ {'retries': b'\x04', 'discover_status': b'\x00', 'frame_id': b'\x01', 'dest_addr': b'\x1a\xff', 'id': 'tx_status', 'deliver_status': b'r'} ]
1519854048 process_zb_pkts: [ {'retries': b'\x00', 'discover_status': b'\x00', 'frame_id': b'\x01', 'dest_addr': b'\x1a\xff', 'id': 'tx_status', 'deliver_status': b'r'} ]
1519854054 process_zb_pkts: [ {'retries': b'\x00', 'discover_status': b'\x00', 'frame_id': b'\x01', 'dest_addr': b'\x1a\xff', 'id': 'tx_status', 'deliver_status': b'r'} ]
asked Mar 1, 2018 in ZigBee PRO Featureset (and legacy ZNet 2.5) by mechazine New to the Community (1 point)

Please log in or register to answer this question.

1 Answer

0 votes
Best answer
Many of those status codes come from the underlying ZigBee stack which I presume the XBee is simply passing through. In this case 0x72 corresponds to EMBER_MAX_MESSAGE_LIMIT_REACHED which determines when it has reached the maxmimum number of simultaneous unicast transmissions. This isn't a fatal error and should quickly clear as outstanding TX requests are completed. Should be safe to retry any TX that receive this error or otherwise space out your TX to minimze chance of encountering.
answered Mar 4, 2018 by jlovinger Veteran of the Digi Community (421 points)
selected Mar 7, 2018 by mechazine
thanks for the response.  Are the zigbee tx status codes listed anywhere? I did a search online and couldn't find anything.
I'm not 100% positive that this is the behavior of the XBee. Some of the status codes documented for the TX Status frame do NOT correpsond to status codes from the underlying stack. However, one of the newer status codes corresponds to a stack code for example 0x74 = XBee: Data Payload Too Large = EMBER_MESSAGE_TOO_LONG.

My guess is they do some translation on some of the status codes and pass through other status codes directly.

There's some documentation for status codes on an older version of the underlying stack at http://www.multisilicon.com/_a/blog/a23315662~/group__status__codes.htm. Probably not the same version the XBee is built on but error codes shouldn't change that much.

Not sure how much it will help, documentation on what each status codes means is sparse and like I said, not sure entirely how they translate through the XBee API.