Xbee3 Api Mode: Receiving 0x89 Transmit status occasionally when sending 0x10 Transmit requests

I am using xbee3 modules in a network that has one coordinator and 6 end devices. I am running in API mode on all modules and exclusively send unicast transmissions via Transmit Requests with frame type 0x10. I am using an stm32 SoC on a custom PCB to communicate to the xbees. Most of the time, I am seeing the xbee respond with an Extended Transmit Status frame (frame type 0x8B). However, occasionally (~1/1000 transmissions), I am seeing a Transmit Status return with with type of 0x89. The documentation I’ve found here indicates that this type of transmit status is only returned for a transmission request with frame type set to 0x00 or 0x01: https://www.digi.com/resources/documentation/digidocs/PDFs/90002273.pdf

There’s an additional note that this frame type is deprecated. Are these 0x89 transmit statuses to be expected when sending 0x10 Transmit Requests? Right now my firmware doesn’t handle these and throws away the frame.

Here are the Xbee settings settings below in case that has any impact:

Xbee Firmware:
Product Family = XB3-24
Function Set = Digi Xbee3 802.15.4
Firmware Version = 2012 (Newest)

If the setting isn’t listed below it is set to the default value for the Function Set.

Coordinator:
CH = 1A
ID = 1111
CE = Coordinator [1]
MY = FFFF
PL = Lowest [0]
AP = API mode Without Escapes [1]
AO = API Rx Indicator - 0x90 [0]
BD = 23040 [8]
DIO6/RTS Configuration = RTS flow control [1]
DIO7/CTS Configuration = CTS flow control [1]

End Device (same for all 6):
CH = 1A
ID = 1111
CE = End Device [0]
MY = FFFF
PL = Lowest [0]
AP = API mode Without Escapes [1]
AO = API Rx Indicator - 0x90 [0]
BD = 115200 [7]
DIO6/RTS Configuration = Disable [0]
DIO7/CTS Configuration = CTS flow control [1]
DIO8/DTR/Sleep_Rq Configuration = Disabled [0]

Sounds like you are getting a response from a module that is an older module or a module that is running on a older version of the firmware.

https://www.digi.com/resources/documentation/digidocs/90002273/Default.htm#reference/r_frame_0x89.htm?Highlight=0x89

Thanks for the response! The module part number is XB3-24Z8UM-J running firmware Digi Xbee3 802.15.4 version 2012 which is the newest 802.15.4 firmware. Are you saying it is expected that either a 0x89 transmit status OR a 0x8B transmit status could be emitted after a sending a 0x10 transmit request with this firmware/module?

As far as I am aware, either frame could be supported. But I would suggest looking at the release notes for the version to see if one has been removed or not.

This is somewhat confusing in the documentation, as the page for the 0x8B extended transmit status indicates it is in response to a 0x10 transmit request: Digi XBee® 3 802.15.4 RF Module

There is also no indication on this page that 0x89 transmit status to be emitted for a 0x10 transmit request on this page that you linked earlier: Digi XBee® 3 802.15.4 RF Module

It is easy enough to support both types of possible responses however.