@@ -143,19 +143,14 @@ async def load_network_info(self, *, load_devices=False):
143
143
channel = nib .nwkLogicalChannel ,
144
144
channel_mask = nib .channelList ,
145
145
security_level = nib .SecurityLevel ,
146
- network_key = zigpy .state .Key (
147
- key = key_desc .Key ,
148
- seq = key_desc .KeySeqNum ,
149
- tx_counter = tc_frame_counter ,
150
- rx_counter = 0 ,
151
- partner_ieee = node_info .ieee ,
152
- ),
153
- tc_link_key = zigpy .state .Key (
154
- key = const .DEFAULT_TC_LINK_KEY ,
155
- seq = 0 ,
156
- tx_counter = 0 ,
157
- rx_counter = 0 ,
158
- partner_ieee = t .EUI64 .convert ("FF:FF:FF:FF:FF:FF:FF:FF" ),
146
+ network_key = key_desc .Key ,
147
+ network_key_seq = key_desc .KeySeqNum ,
148
+ network_key_counter = tc_frame_counter ,
149
+ tc_link_key = const .DEFAULT_TC_LINK_KEY ,
150
+ tc_address = (
151
+ node_info .ieee
152
+ if node_info .logical_type == zdo_t .LogicalType .Coordinator
153
+ else None
159
154
),
160
155
children = [],
161
156
nwk_addresses = {},
@@ -183,8 +178,9 @@ async def load_network_info(self, *, load_devices=False):
183
178
)
184
179
185
180
if dev .is_child :
186
- network_info .children .append (dev .node_info )
187
- elif dev .node_info .nwk is not None :
181
+ network_info .children .append (dev .node_info .ieee )
182
+
183
+ if dev .node_info .nwk is not None :
188
184
network_info .nwk_addresses [dev .node_info .ieee ] = dev .node_info .nwk
189
185
190
186
if dev .key is not None :
@@ -349,10 +345,10 @@ async def write_network_info(
349
345
350
346
key_info = t .NwkActiveKeyItems (
351
347
Active = t .NwkKeyDesc (
352
- KeySeqNum = network_info .network_key . seq ,
353
- Key = network_info .network_key . key ,
348
+ KeySeqNum = network_info .network_key_seq ,
349
+ Key = network_info .network_key ,
354
350
),
355
- FrameCounter = network_info .network_key . tx_counter ,
351
+ FrameCounter = network_info .network_key_counter ,
356
352
)
357
353
358
354
nvram = {
@@ -373,19 +369,19 @@ async def write_network_info(
373
369
# TCLK_SEED is TCLK_TABLE_START in Z-Stack 1
374
370
nvram [OsalNvIds .TCLK_SEED ] = t .TCLinkKey (
375
371
ExtAddr = t .EUI64 .convert ("FF:FF:FF:FF:FF:FF:FF:FF" ), # global
376
- Key = network_info .tc_link_key . key or const .DEFAULT_TC_LINK_KEY ,
372
+ Key = network_info .tc_link_key or const .DEFAULT_TC_LINK_KEY ,
377
373
TxFrameCounter = 0 ,
378
374
RxFrameCounter = 0 ,
379
375
)
380
376
else :
381
377
if (
382
378
network_info .tc_link_key is not None
383
- and network_info .tc_link_key . key != const .DEFAULT_TC_LINK_KEY
379
+ and network_info .tc_link_key != const .DEFAULT_TC_LINK_KEY
384
380
):
385
381
LOGGER .warning (
386
382
"TC link key is configured at build time in Z-Stack 3 and cannot be"
387
383
" changed at runtime: %s" ,
388
- network_info .tc_link_key . key ,
384
+ network_info .tc_link_key ,
389
385
)
390
386
391
387
if (
@@ -405,7 +401,7 @@ async def write_network_info(
405
401
406
402
await security .write_tc_frame_counter (
407
403
self ,
408
- network_info .network_key . tx_counter ,
404
+ network_info .network_key_counter ,
409
405
ext_pan_id = network_info .extended_pan_id ,
410
406
)
411
407
0 commit comments