This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

父节点不暂存EndDevice广播数据

Dongle address :0x2ECB

Router : 0xD035

ED: 0xBC74 父节点是 0xD035

当Dongle发送广播给所有节点的时候 ,ED 去dataPoll 0xD035时,回复 Pnd 值是0 ,ED没有收到,详看 broadcast 这文件的 Rx 5,6

当Dongle单播一条数据给ED 时 ,ED 去dataPoll 0xD035时,回复 Pnd 值是1 ,ED可以收到,详看 NO_broadcast这个文件 Rx 1,2,3,4

这是什么原因呢。

2.5.1 版本。

Desktop.rar
  • 广播的目的地址是多少?想endpoint,cluster,这些都对吗

  • 广播的目的地址是0xFFFF

    EndPoint cluser肯定是对的,另外ED去PollRequest时,可以在哪里看到父节点的处理过程。

  • 两个广播的目的地址一个0xFFFD,一个是0xFFFF,

    0xFFFD是不正确的,

    enum bcast_addr_e {
    NWK_BROADCAST_SHORTADDR_RESRVD_F8 = 0xFFF8,
    NWK_BROADCAST_SHORTADDR_RESRVD_F9,
    NWK_BROADCAST_SHORTADDR_RESRVD_FA,
    NWK_BROADCAST_SHORTADDR_RESRVD_FB,
    NWK_BROADCAST_SHORTADDR_DEVZCZR, // 0xFFFC: Routers and Coordinators
    NWK_BROADCAST_SHORTADDR_DEVRXON, // 0xFFFD: Everyone with RxOnWhenIdle == TRUE
    // 0xFFFE: Reserved (legacy: used for 'invalid address')
    NWK_BROADCAST_SHORTADDR_DEVALL = 0xFFFF
    };