05-3474-23 #3.6.3.3 (Source routing tables)
Create a new source route table entry
SPEC COMPLIANCE NOTES:
Finds the best source route to the destination. Implements route aging, failure tracking, and intelligent route selection. Entries with expired routes or too many failures will be purged. Bails early if destination16 is broadcast. Throws if both 16/64 are undefined or if destination is unknown (not in device table). Throws if no route and device is not neighbor.
SPEC COMPLIANCE NOTES (05-3474-23 #3.6.3):
IMPORTANT: This is a critical performance path - called for every outgoing frame DEVICE SCOPE: Coordinator, routers (N/A)
05-3474-23 #3.6.3.3
Check if a source route already exists in the table
SPEC COMPLIANCE NOTES:
OptionalexistingEntries: SourceRouteTableEntry[]05-3474-23 #3.6.3.3
Mark a route as failed and handle route repair if needed. Consolidates failure tracking and MTORR triggering per Zigbee spec.
SPEC COMPLIANCE NOTES:
Network address of the destination
If true, will purge routes using this destination as relay and trigger MTORR
05-3474-23 #3.6.3.3
Mark a route as successfully used
SPEC COMPLIANCE NOTES:
Network address of the destination
Get next route request ID. HOT PATH: Optimized counter increment
Incremented route request ID (wraps at 255)
Get next NWK sequence number. HOT PATH: Optimized counter increment
Incremented NWK sequence number (wraps at 255)
05-3474-23 #3.4 (NWK command processing)
SPEC COMPLIANCE NOTES:
05-3474-23 #3.4.14 Optional
SPEC COMPLIANCE NOTES:
COMMISSIONING vs NORMAL JOIN:
Command data
Current offset in data
MAC header
NWK header
New offset after processing
05-3474-23 #3.4.15 (Commissioning Response) — Optional in R23
SPEC COMPLIANCE NOTES:
05-3474-23 #3.4.11
SPEC COMPLIANCE:
05-3474-23 #3.4.12
SPEC COMPLIANCE:
NOTE: Coordinator typically doesn't receive this (sent to end devices)
05-3474-23 #3.4.4 (Leave command)
SPEC COMPLIANCE NOTES:
05-3474-23 #3.4.13
SPEC COMPLIANCE:
IMPACT: Receives command but doesn't adjust transmit power
05-3474-23 #3.4.8
SPEC COMPLIANCE NOTES:
Command data
Current offset in data
MAC header
NWK header
New offset after processing
05-3474-23 #3.4.6 Optional
SPEC COMPLIANCE NOTES:
SECURITY CONCERNS:
Command data
Current offset in data
MAC header
NWK header
New offset after processing
05-3474-23 #3.4.7
Optional
SPEC COMPLIANCE NOTES:
05-3474-23 #3.4.9 (deprecated in R23)
SPEC COMPLIANCE:
NOTE: Deprecated in R23, should no longer be sent by R23 devices IMPACT: Coordinator doesn't act on network reports
05-3474-23 #3.4.5
SPEC COMPLIANCE NOTES:
IMPORTANT: Route records are sent by devices to establish reverse path to concentrator This is correct for coordinator acting as concentrator. DEVICE SCOPE: Coordinator, routers (N/A)
Command data
Current offset in data
MAC header
NWK header
New offset after processing
05-3474-23 #3.4.2 (Route Reply)
SPEC COMPLIANCE NOTES:
05-3474-23 #3.4.1 (Route Request)
SPEC COMPLIANCE NOTES:
Command data
Current offset in data
MAC header
NWK header
New offset after processing
05-3474-23 #3.4.3
SPEC COMPLIANCE:
IMPACT: Receives status but minimal action beyond route marking
05-3474-23 #3.4.10
SPEC COMPLIANCE:
05-3474-23 #3.4 (NWK command frames)
SPEC COMPLIANCE NOTES:
Command identifier (first byte of payload)
Fully encoded NWK command payload (including cmdId)
Whether to enable NWK security header
Source network address for header
Destination network address
Optional destination IEEE address (for concentrator routing)
Initial radius/TTL
True if success sending (or indirect transmission)
05-3474-23 #3.4.15 (Commissioning Response) — Optional in R23
SPEC COMPLIANCE NOTES:
Destination device
Assigned address echoed back
Commissioning status
True if success sending (or indirect transmission)
05-3474-23 #3.4.12
SPEC COMPLIANCE:
OptionalstatusOverride: numberOptionalparentInfoOverride: number05-3474-23 #3.4.4 (Leave command)
SPEC COMPLIANCE NOTES:
Target network address
Whether device should rejoin after leave
True if success sending (or indirect transmission)
05-3474-23 #3.4.8 (Link Status command)
SPEC COMPLIANCE NOTES:
Link status entries sorted ascending by address
05-3474-23 #3.6.3.5.2 (Many-to-One Route Discovery)
SPEC COMPLIANCE NOTES:
05-3474-23 #3.4.8 (Link Status command)
SPEC COMPLIANCE NOTES:
05-3474-23 #3.4.7 (Rejoin Response)
SPEC COMPLIANCE NOTES:
Requestor network address
Assigned network address
Rejoin status (MACAssociationStatus or NWK status)
True if success sending (or indirect transmission)
05-3474-23 #3.4.2 / #3.6.4.5.2 (Route Reply)
SPEC COMPLIANCE NOTES:
SHALL be set to the network address of the first hop in the path back to the originator of the corresponding route request command frame
8-bit sequence number of the route request to which this frame is a reply
SHALL contain the 16-bit network address of the originator of the route request command frame to which this frame is a reply
SHALL always be the same as the value in the destination address field of the corresponding route request command frame
Optionaloriginator64: bigintSHALL be 8 octets in length and SHALL contain the 64-bit address of the originator of the route request command frame to which this frame is a reply. This field SHALL only be present if the originator IEEE address sub-field of the command options field has a value of 1.
Optionalresponder64: bigintSHALL be 8 octets in length and SHALL contain the 64-bit address of the destination of the route request command frame to which this frame is a reply. This field SHALL only be present if the responder IEEE address sub-field of the command options field has a value of 1.
05-3474-23 #3.4.1 (Route Request)
SPEC COMPLIANCE NOTES:
intended destination of the route request command frame
Optionaldestination64: bigintSHOULD always be added if it is known
05-3474-23 #3.4.3
SPEC COMPLIANCE:
Optionaldestination: numberDestination address (only if status is LINK_FAILURE or ADDRESS_CONFLICT)
NWK Handler - Zigbee Network Layer Operations
Handles all Zigbee NWK (Network) layer operations including: