Error 0x8B - No Broadcast transaction table entries free (ZPS_XS_E_NO_BTR)

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Error 0x8B - No Broadcast transaction table entries free (ZPS_XS_E_NO_BTR)

1,235 Views
zigbee1
Contributor III

I'm getting an error message (as mentioned in the title) , mainly when doing the pairing of a new device or after a power off/on of some routers

Broadcast transaction table is set to the default value. I'm ready to increase but what would be the right value

The target config is to host 70 nodes with 40 childs

The configuration is set as followed:

MaxNumberNodes="70"

<TrustCenter DeviceTableSize="70"/>

<Coordinator Name="ZigbeeNodeControlBridge"
DiscoveryNeighbourTableSize="8"
ActiveNeighbourTableSize="60"
RouteDiscoveryTableSize="2"
RoutingTableSize="70"
BroadcastTransactionTableSize="9"
RouteRecordTableSize="1"
AddressMapTableSize="70"
SecurityMaterialSets="1"
MaxNumSimultaneousApsdeReq="5"
MaxNumSimultaneousApsdeAckReq="3"
MACMutexName="mutexMAC"
ZPSMutexName="mutexZPS"
FragmentationMaxNumSimulRx="0"
FragmentationMaxNumSimulTx="0"
DefaultEventMessageName="APP_msgZpsEvents"
MACDcfmIndMessage="zps_msgDcfmInd"
MACTimeEventMessage="zps_msgTimeEvents"
apsNonMemberRadius="2"
apsDesignatedCoordinator="true"
apsUseInsecureJoin="true"
apsMaxWindowSize="8"
apsInterframeDelay="10"
APSDuplicateTableSize="4"
apsSecurityTimeoutPeriod="6000"
apsUseExtPANId="0x0000000000000000"
SecurityEnabled="true"
MACMlmeDcfmIndMessage="zps_msgMlmeDcfmInd"
MACMcpsDcfmIndMessage="zps_msgMcpsDcfmInd"
APSPersistenceTime="100"
NumAPSMESimulCommands="4"
StackProfile="2"
InterPAN="false"
GreenPowerSupport="false"
NwkFcSaveCountBitShift="10"
ApsFcSaveCountBitShift="10"
MacTableSize="130"
DefaultCallbackName="APP_vGenCallback"
PermitJoiningTime="0"
ChildTableSize="40">

Labels (1)
0 Kudos
8 Replies

1,169 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi,

The devices won't get all of the broadcast that you are sending, and it could create a lot of traffic in your network. If the devices are from the market, you could play with the size of the table, if you want to capture all of the broadcast that you are sending.

Regards,

Mario

0 Kudos

1,164 Views
zigbee1
Contributor III

Honestly Mario I'm lost too.

The broadcast are definitively not related to the application, but more to the Zigbee Stack provided by NXP and the corresponding SDK for which we have a light documentation.

How can I size a Table on which I have not a single clue which API use it !

 

So I gave up on this issue.

0 Kudos

1,189 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi,

how should I compute the size of the Broadcast table?

It depends on the amount of broadcast that your devices are sending, it is part of your application. You could try to increase the table a little bit, but you have to be sure what your application is doing.

Regards,

Mario

 

0 Kudos

1,188 Views
zigbee1
Contributor III

I have no clue of Device . They are device from the market.

 

Could you clarify what are the impacts of the error message ?

0 Kudos

1,203 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi @zigbee1,

The Broadcast Transaction table is used for the origination, processing, and passive acknowledgment of broadcast transmissions.

In this case, the coordinator and routers will have a table for the processing broadcast that they could transmit, and as you know, if you send a lot of broadcasts you will create a lot of messages in your network, ack packets, etc.

However, an application that produces a large number of broadcasts may need a larger table. 

It depends on the network that you have.

Regards,

Mario

 

0 Kudos

1,199 Views
zigbee1
Contributor III

could you kinldy be more precise . For instance how should I compute the size of the Broadcast table ?
We don't have any source code, so it is hard to understand how to size most of the table.

0 Kudos

1,219 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi,

What is the process that you are doing? How many routers has in your network?

https://www.nxp.com/docs/en/user-guide/JN-UG-3113.pdf Please look at the B.5.5 Broadcast Transaction Table

Regards,

Mario

0 Kudos

1,210 Views
zigbee1
Contributor III

The process I'm following is to build a Zigbee controller for 70 Devices (40 childs).

In the particular tests, I had 7 routers and I'm getting this 0x8B error every time I'm doing a Power Off/On of those routers. This is of course exceptional but this could be happening in a situation where we have a power outage and the Zigbee controler is on a UPS and still running.

 

My main question is , how can I size correctly the Broadcast Transaction Table ? as I don't have any answer to that in the JN-UG-3113 documentation (or at least I didn't find). For instance do I need to have 1 entry per router ? 1 entry per device ? What is the rule ? In the document it states that 9 is usally the good number , what is the rationnal ?

0 Kudos