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.

[参考译文] CC2530:将Zigbee设备列入黑名单

Guru**** 2540720 points
Other Parts Discussed in Thread: Z-STACK

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/574961/cc2530-blacklisting-zigbee-devices

部件号:CC2530
主题中讨论的其他部件:Z-stack

    我正在尝试在ZigBee上实施黑名单。 我刚刚按照 http://wiki.tiprocessors.com/index.php/Black_list_implementation中提供的步骤操作 。 但我想做一些不同的事情。

我的计划如下:

1.从ZC发送休假申请
2.在ZR中,在过程离开ZC请求时获取PAN,并写入NV RAM
3.然后离开网络并重新启动
4.重新启动并尝试连接到网络时(在搜索新ZC的过程中),请检查NV RAM中的PAN ID
5.如果不相同,则加入新的ZC或搜索新的ZC

为此,我希望关注以下内容,

1.获取PAN ID并写入NV RAM
2.连接前读取NV RAM并进行比较

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我认为Wiki链接已经向您展示了如何根据需要执行此操作。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    据wiki说,我不能存储将休假请求发送到ZR的网络的PAN ID。 在发送休假请求后,我需要将网络的PAN ID存储到ZR中,然后需要重新启动ZR,然后检查是否存在其他网络,如果NV RAM中的PAN ID与该网络不匹配,则只有它应该加入。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我看不出有什么理由不能在ZR上执行此操作。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我已经按照Wiki链接中的说明执行了相同的操作。 我已在ZR代码中添加了代码。 在发送休假申请后,它也加入到了同一网络中。 那么问题是什么呢? 或者我也必须在ZC代码上添加相同的代码?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您不必向ZC添加代码。 我建议您在ZDApp_NwkDescListProcessing中设置断点,并调试为什么它仍尝试加入黑名单PAN ID网络。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我没有在黑名单中添加任何PAN ID。
    如果PAN ID在黑名单中可用,则只有ZR不会加入该网络。 由于我没有添加任何网络PAN ID,它肯定会尝试连接到网络。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    因此,您应将PAN ID添加到黑名单中,以使其正常工作。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我不想在编码时添加PAN ID。 如果请求ZR离开网络意味着,则只有它应该将特定的PAN ID写入NV RAM。 这有可能吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您是否打算在程序中将PAN ID硬编码为黑名单?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    否,我不想对其进行硬编码。

    清除我的疑虑... 如何将PAN ID添加到黑名单中?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    当devState为dev_end_device_unauth时,它使用API zgBlackListAdd将PAN ID添加到黑名单中。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    问题是。 设备将始终进行身份验证。 那么,还有什么其他方法可以根据我的要求执行黑名单呢?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我对你的描述感到困惑。 您能否再次详细说明您的要求?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我的要求是在ZigBee网络上制作黑名单。
    我已经完成了Wiki链接中提供的所有附加内容。 如果使用该代码,则PAN ID应在zgBlackListInit()中定义。 或者,如果设备未经网络验证,PAN ID将被添加到黑名单中。

    我的问题是,ZigBee设备一直都经过验证,我不是在NV RAM中定义PAN ID。 以便我发送休假申请以离开申请。 如果休假请求得到处理,则应将该时间PAN ID写入NV-RAM黑名单,然后下次不应尝试连接同一网络。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    然后,您可以尝试在ZDApp_LeaveReset()中调用zgBlackListAdd()。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    当我试图调用ZApp_LeaveReset()中的"zgBlackListAdd"时,我收到一个错误“Error[Pe223]:Function "zgBlackListAdd" iminefined D:\ZR\Z-Stack Home 1.2 .2a.4.4539万\Components\stack\zDo\ZApp.c 2089”。

    Wiki链接中的代码是否足以实施黑名单或需要进行其他更改? 我对此不确定。。。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果zGlobals.c中实现了zgBlackListAdd,并在zGlobals.h中声明,那么您是否在ZApp.c中包含zGlobals.h?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的。 我已包括...
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在哪里实现zgBlackListAdd()?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我在zGlobals.c ...中实现了zgBlackListAdd()
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您是否在zGlobals.h中添加了"extern uint8 zgBlackListAdd( uint16 panid );"并在您的ZDEP.c中包含zGlobals.h?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的。 我补充了这两个。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尝试将"extern uint8 zgBlackListAdd( uint16 panid );"添加到ZApp.C.中
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    陈宜凯:
    请检查以下链接。
    e2e.ti.com/.../119.3112万
    在这里,他们提到了添加zdo库文件而不是现有库文件。 他们还在项目中添加了xxx.Lib文件。 怎么做? 另请告诉我要做的白名单步骤。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这是一个旧的讨论,它基于Z-Stack 2.6 .................................................................1,该产品随Z-Stack Home 1.2 .0一起发布。 是否使用Z-Stack Home 1.2 .0? 为什么需要合并该代码?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我需要制作白名单
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    wiki已经告诉您如何操作,不是吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在我的情况下,它不起作用。 这就是为什么我要重复相同的查询。

    如果您有任何使用白名单的有效解决方案,请发送给我。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您是否意味着您按照 wiki.tiprocessors.com/.../Black_list_implementation中的步骤操作 ,但不起作用?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的,这对我来说不起作用。
    ZR一次又一次地连接到同一网络。
    我没有在NV RAM中添加任何PAN ID,我只是向路由器发送离开请求。 退出后,继续连接同一网络。

    我在以前的答复中也发表过这一意见。 请您检查一下吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果您尚未将任何PANID添加到NV RAM中,您希望黑名单如何工作?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我不想手动将PAN ID添加到NV RAM中。 在网络收到离开请求后,应将其写入NV RAM。

    这就是为什么我这么说,Wiki链接对我的情况没有帮助。

    您对此有什么解决方案吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    当设备收到休假请求时,您可以调用zgBlackListAdd。