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.

使用TI例程控制ZLL灯的问题

Other Parts Discussed in Thread: Z-STACK

         各位大神, 我把ti的Z-Stack Lighting 1.0.2 sampleRemote 例程下载进开发板,然后另一个开发板下载sampleLight的例程。使用remote对light发出TouchLink命令时light会闪烁,TouchLink后remote可以控制light的开关,亮度等。但是我使用remote对从合作商那里拿来的zll灯TouchLink没有任何反应,合作商那边的技术人员说ti有公开的Development key, 对于zll我也不是很了解,所以有以下一些问题:

1.是不是我从合作商那里拿来的灯需要恢复出厂设置才能用remote和它TouchLink?

2.在没有过zll认证,没有得到master key的情况下我究竟能不能使用ti的例程Z-Stack Lighting 1.0.2 sampleRemote 来控制别家的zll灯?

3.ti的Development key, Certification key有什么区别和作用?它们有公开吗?

  • 1, 首先你需要确定你拿到合作商的灯,是否已经过了ZigBee认证的,如果是已经过了ZigBee认证的,那么用的Master Key,也就联盟专门发给通过认证的产品的key。

    如果没有通过认证的,那么使用的应该是Certification Key 或者Development Key。需要问清楚

    2,看别家的灯,用的是什么模式。 只要配置一样就可以了

    3,key的构成方式不一样,加密的算法都一样的。

    都公开的。在协议栈zll.h文件里面,

    /** Pre-Installed Keys **/
    
    //#define ZLL_MASTER_KEY                   { 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??,\
                                                 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x?? }
    //#define ZLL_MASTER_LINK_KEY              { 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??,\
                                                 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x??, 0x?? }
    
    #define ZLL_CERTIFICATION_ENC_KEY          { 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,\
                                                 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf }
    #define ZLL_CERTIFICATION_LINK_KEY         { 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,\
                                                 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf }
    
    #define ZLL_DEFAULT_AES_KEY                { 0x50, 0x68, 0x4c, 0x69, 0xea, 0x9c, 0xd1, 0x38,\
                                                 0x43, 0x4c, 0x53, 0x4e, 0x8f, 0x8d, 0xba, 0xb4 }
    //#define ZLL_DEV_FIXED_NWK_KEY            { 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc,\
                                                 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc }
    
    #define ZLL_KEY_INDEX_DEV         0
    #define ZLL_KEY_INDEX_MASTER      4
    #define ZLL_KEY_INDEX_CERT        15
    
    // For production:
    //#define ZLL_ENC_KEY  ZLL_MASTER_KEY
    //#define ZLL_LINK_KEY  ZLL_MASTER_LINK_KEY
    //#define ZLL_KEY_INDEX ZLL_KEY_INDEX_MASTER
    
    // For certification only:
    #define ZLL_ENC_KEY  ZLL_CERTIFICATION_ENC_KEY
    #define ZLL_LINK_KEY  ZLL_CERTIFICATION_LINK_KEY
    #define ZLL_KEY_INDEX ZLL_KEY_INDEX_CERT
    

  • Dear VV:

          这里代码里默认用的是Certification Key, 如果要修改成Development Key,如何修改 ??

  • 在线等 。。。。。

  • #define ZLL_KEY_INDEX ZLL_KEY_INDEX_DEV