Because of the holidays, TI E2E™ design support forum responses will be delayed from Dec. 25 through Jan. 2. Thank you for your patience.

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.

Zlight2 is not detected by Philips Hue Hub

Other Parts Discussed in Thread: Z-STACK

Hi all,

I'm currently testing and evaluting the Z-Stack with the Zlight2 development and I tried to operate the device with my philips hue hub. As the Hue bridge and Z-Stack are ZLL cerified, I thought that everything will work together. But after I have joined the device to an existing ZLL network via Touchlink (original ZLL Master Key was used), the device is detected by an Zigbee-Analyzer in the same network and the Philips Hue bridge does not find an valid lamp.


I took a look at the SimpleDescriptor of all devices in the network and saw that the ZLight uses HomeAutomation profile and all other devices (Philips Livining Color, Hue White) uses ZLL Profile. Maybe this is the difference?


So, my question is : Should the ZLight device (and the Z-Stack Lighting 1.0.2 with ZLL_1_0_HUB_COMPATIBILITY enable) be compatible with the Hue Hub?

Thanks in advance.

Best Regards,

Stefan

  • Hi,
    Thank's for your answer. So, it should be possible to control the Zlight via Hue Bridge?

    I already knew this page and tried to modify the Z-Stack 1.0.2 the same way, but without any success. Also the following sentence is really interesting "Changing the Profile ID for the Application end point to be the ZLL Profile ID is not trivial and should not be attempted. " I always thought factory new ZLL devices should try to join an HA network, otherwise they should stay in the ZLL profile. Looks like the Zlight2 uses only the HA profile, is this correct?

    Is there any possibility to get the older Z-Stack 1.0.1 version to verify the changes mentioned on the F.A.Q. page?

    Regards,
    Stefan
  • 1. I think it is possible to control the Zlight via Hue Bridge but you have to change master code.
    2. A ZLL device would start with HA profile first and will turn to ZLL profile if it cannot join a HA network.
    3. Z-Stack 1.0.1 is obsolete and TI doesn't provide it for public download. If you need it, I suggest you trying to contact TI representative.
  • 1. What do you mean with "changing master code". Do you mean the ZLL master key? -> I already use the correct key and the Zlight2 can join the Hue network via Touchlink, but is not detected as controlable device
    2. That's correct. But my Zigbee network analyzer shows that the Zlight is still in HA profile after is has joined the network via ZLL Touchlink.
    3. I will try to get the older Stack version, because this should be compatible with hue hub.

    So, has anybody successfully used the Zlight2 in an ZLL network?

    Regards,
    Stefan
  • Hi,

    i have the same problem. A small CC2530-Board with Z-Stack-Lighning 1.0.2 doesnt connect to the bridge. Here is the communication in the bridge when i do a touchlink with my board and a original Philips-lamp:

    CC2530-Board:
    [Log,Info,A_Bridge_Link,Found device 0: L=00:12:4B:00:06:37:A0:9F, rssi=-27]
    [Zdp,ReceivedDeviceAnnounce,S=0x0829.0,L=00:12:4B:00:06:37:A0:9F,142][Zdp,ReceivedIeeeAddrRsp,3,S=0x0829.0,0,L=00:12:4B:00:06:37:A0:9F,S=0x0829.0]
    [Link,Touchlink,success,S=0x0829,0xDFB2]

    Philipslamp:
    [Log,Info,A_Bridge_Link,Found device 0: L=00:17:88:01:01:22:89:8E, rssi=-48]
    [Zdp,ReceivedDeviceAnnounce,S=0x0009.0,L=00:17:88:01:01:22:89:8E,14]
    [Zdp,ReceivedIeeeAddrRsp,22,S=0x0009.0,0,L=00:17:88:01:01:22:89:8E,S=0x0009.0]
    [Link,Touchlink,success,S=0x0009,0xDFB2]
    [Zdp,IeeeAddrReq,0,23]
    [Zdp,ReceivedIeeeAddrRsp,23,S=0x0009.0,0,L=00:17:88:01:01:22:89:8E,S=0x0009.0]

    You see: the IeeeAddrReq is missing.

    A regular seaching ends with this:
    [Zdp,ReceivedMgmtLqiRsp,17,L=00:17:88:FF:F1:DD:19:8A.0,0,2,0,2,A5:12:43:
    51:8C:22:92:FE,L=00:17:88:01:00:22:13:6E,S=0x0001.0,2,0,1,0,2,0,2,1,A5:1
    2:43:51:8C:22:92:FE,L=00:12:4B:00:06:37:A0:9F,S=0x0829.0,1,2,3,0,2,0,255 ,152]
    [Zdp,JoinPermitted,False]

    Im also very interested in Z-Stack-Lightning 1.0.1. But i cant find this version in the internet.
  • I had tried to joins Philips Hue to my Zigbee HA gateway. However, I don't have Philips Hue Hub so I don't have experiences on joining a ZLight2 to it. Where do you get these logs? Do you try to use Ubiqua Packet Analyzer to check this issue?
  • I measured testpoint 9 (TP9) on PCB of the hue Bridge.
  • I suggest you to use Ubiqua Packet Analyzer to check this issue
  • I analyzed this problem; first, it's not a key problem. Let's assume we got the ZLight to join the network.

    The issue is that, since a while, the Hue Hub (tested on a v2 here) only accepts ZLL lights anymore, no HA lights.

    That is, the SimpleDescriptor must contain an Application Profile ID of 0xC05E, and the Application Device ID must be one of 0x000C, 0x0010, 0x0100, 0x0107, 0x0110, 0x0200, 0x0210, 0x0220, 0x0301. 

    In Z-Stack Lighting 1.0.2, this is not true for either the zllSampleLight_SimpleDesc nor for the (ZLL_1_0_HUB_COMPATIBILITY's) zllSampleLightSimpleDesc - both of them are using the ZLL_HA_PROFILE_ID (0x0104) instead of ZLL_PROFILE_ID (0xC05E); on top, the zllSampleLightSimpleDesc specifies a HA_DEVICEID, 0x02, which is not allowed either.

    Just changing the descriptor (to App Profile ID 0xC05E, Device ID 0x0200) however exposes a different problem, which is that the ZCL "Basic: Read Attributes" request is sent to ClusterId 0x0000, Profile ID 0x0104. Since this doesn't match the simple descriptor, the packet is thrown out in afIncomingData (Components/stack/af/AF.c), because it checks that "the local Endpoint ProfileID matches the received ProfileID".

    I don't know if AF.c is wrong here, or if there's something else I'm missing, but another commercial ZLL light (GE Link) works the same way: 0xC05E in the simple descriptor (they only have a single endpoint), and then answering to ZCL queries on another profileID.

    To summarize, I made a HueV2-Compatible Zlight by doing:

    1. Disable ZLL_1_0_HUB_COMPATIBILITY, we don't need it.

    2. Change zllSampleLight_SimpleDesc  (within zll_samplelight_data.c) to:

    SimpleDescriptionFormat_t zllSampleLight_SimpleDesc =
    {
    SAMPLELIGHT_ENDPOINT, // int Endpoint;
    ZLL_PROFILE_ID, // uint16 AppProfId[2];
    ZLL_DEVICEID, // uint16 AppDeviceId[2];
    ZLL_DEVICE_VERSION, // int AppDevVer:4;
    SAMPLELIGHT_FLAGS, // int AppFlags:4;
    ( sizeof(zllSampleLight_InClusterList) / sizeof(cId_t) ), // byte AppNumInClusters;
    (cId_t *)zllSampleLight_InClusterList, // byte *pAppInClusterList;
    0, // byte AppNumOutClusters;
    NULL // byte *pAppOutClusterList;
    };

    3. As a rather hacky workaround, insert the following line into af.c, line 410:

    if (epProfileID == 0xC05E && aff->ProfileID == 0x0104) { epProfileID = aff->ProfileID; }

    // First part of verification is to make sure that:
    // the local Endpoint ProfileID matches the received ProfileID OR

    (Aside from that, you have to make sure the device can join the network.)

    Doing this makes the Hue Hub find my ZLight, and I can control it, similar to how it worked with the old Hue V1 hub (until they did a similar change there). I don't have a Hue V1 hub to test right now.

    Maybe someone can comment on whether this is a correct fix.

  • Since Philips Hue hub uses ZLL profile, it's weird why you have to add "if (epProfileID == 0xC05E && aff->ProfileID == 0x0104) { epProfileID = aff->ProfileID; }". Anyway, if that works for you, I don't see any problem.
  • Hi Felix,

    how can I ?: 1. Disable ZLL_1_0_HUB_COMPATIBILITY, we don't need it.

    I did all the change 2.) and 3.) from Felix Domke but the Zlight2 will not be recognized by Hue-bridge.

    Br Roland
  • Is this resolved? I also encountered the same problem
  • ... no, unfortunately not !!

    Br