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.

Two Profiles in the same device

Other Parts Discussed in Thread: CC2538, Z-STACK, CC2530

I'm developing a SE device. However,  My client wants to add some extra features (ZCL) to this device, such as On/Off Cluster or Level Control Cluster (as server).  

-My issue is how can I add these clusters.  Should I implement HA profile in the same device in order to listen to this clusters?

My idea is that the device can get a SE certified by the ZigBee Alliance. 

  • It is my understanding that an SE network is not compatible with an HA/ZLL network and that an automated home would have the SE network on a different PanId and channel than the HA/ZLL network.

    But not to worry - TI will soon be releasing the CC2538 SOC which is capable of running a dual-stack (i.e. two separate and independent stacks, one servicing the SE network and the other servicing the HA/ZLL network) and will thusly solve the problem that you describe with one device/antenna.

     

  • Thank for your prompt answer Dirty Harry, It was so useful for me. However, I was looking for topics in the forum and I found this:

    http://e2e.ti.com/support/low_power_rf/f/158/t/103858.aspx

    In this topic, "Double 0"  suggested that  it is possible to implement a device with both HA and SE clusters, in different endpoints (something logical). Personally, I think that one device/antenna is the best solution for this kind of problem, but if It's possible to implement both profiles in the same device, I'll have to try it .


  • Hi Manuel Menchaca ,

    Have you tried the "double 0" suggestion?

    @dirty harry : what is your opinion on this; implementing HA and SE on different endpoints. What will be the advantages of of having CC2538.

    Thanks,

  • Hi Rakesh Jaiswal,

    I applied partially the "double 0" suggestion in order to develop my custom  ZigBee device. In my case, I needed to implement a SE device with additional features, HA features such as On/Off or Alarms. Therefore I used two different endpoints with different profiles (isolated) and It runs perfectly. However, you have to be aware of  tasking architecture (Z-Stack) because it could give you problems.

  • Hi Manuel,

    I'm new in TI E2E community and i dont know how to create a new post.

    I need to develop something like what you did. I want to add features of SE profile (single measure ) to a device  that is working with Home Automation profile . 

    i.e:   dimmable light with energy consumption measurement 

    I found this on zigbee alliance: http://docs.zigbee.org/zigbee-docs/dcn/09-5129.pdf 

    In the pdf archive mentions that there are 3 methods to use multiple application profiles on zigbee network:

    1) Bridge device.

    2) Combine networks

    3) Multi-Network Radios.

    For the three methods have to coexist two different networks, one for SE and another for HA.

    I think that I have to use one of these methods in order to get a HA certified by zigbee alliance for the device.

    Do you know any other method? I don't like the idea of the 2 different networks. I want to do something like this:   http://www.youtube.com/watch?v=Hb1kjRsqn6I look at the functionality of the smart plug.

    Any Ideas to do that and maintain compatibility with HA profile?

    Thanks, 

  • Hi Guillermo,

    In my opinion, if you want to coexist these two profiles (SE and HA), the best solution is to employ multi-network radios. Basically, this is two different radios ( for example with the CC2538 SOC).

    However, in my case I wanted to certify my device as SE profile but with some extra features (On/Off cluster) so the solution was to add a Manufacturer Profile, in other endpoint (different that the SE endpoint), with this cluster (ZigBee Cluster Library).

    You can certify your device in the HA profile but you should add in another endpoint your extra features, maintaining the compatibility with HA network.

    Regards

  • Manuel,

    Thanks for your answer. 

    I'll consider your opinion but since this is my first project with zigbee, iI will keep studying a little bit more in the ZCL and ZHA profile.

    Perhaps I should do the same as you:  add a Manufacturer Profile in other endpoint. 

    Regards,

  • Hi, 

          I found this in "Zigbee Home Automation public profile"  that solves my issue:

    "7.1.7 Cluster Usage Restrictions

    It is allowed to add any cluster defined in the ZigBee Cluster Specification as an
    optional cluster for any device in this profile and the Smart Energy Application
    Profile specification Annex D.
    Any additional cluster added shall be declared on the device PICS and shall be
    tested in accordance with the based network and security configurations in this
    document and the messaging and behavior from that specific cluster test plan."

       Here is the link of the ZHA public profile:      https://docs.zigbee.org/zigbee-docs/dcn/07/docs-07-5367-02-0afg-home-automation-profile-for-public-download.pdf

  • hello ,

    presently I am working on cc2530 and want to use the two endpoints simultaneously i have searched alot but did'nt found any thing related to steps that are to be followed to implement the two endpoints on same device as we all know Zstack has 0 to 240 endpoints, is it possible to use two endpoints simultaneously if yes could any body suggest me what references to read?

  • hi Suman ,

    thanks for your response I have always tried it with Serialapp and Transmitapp but after doing the system (cc 2530 boots) up nicely but it is not generating key_event as i have programmed key_3 for sending Match_desc_req() it is not making link so not sending or receiving the data , I have made the same changes but as it is not showing any errors seems to be fine but problem is until or unless link will not get establish i am reluctant to send the data please help. 

  • Hi Manish,

    I would suggest you to use packet sniffer to see if Match_desc_req is really sent out by your ZED. 

  • Hello Sir,

    As previously I was using single application on single endpoint,in that case Match_desc_req() was sent by pressing key_3

    which suggest device got discovered  but after doing all the steps as mentioned by the forum for making two endpoints on same device i have not got any response msg on my cc2530 +smartrf05eb's LCD that shows device are not bind as there has to be a continuous led glow(green)  on rf board that is not happening that's why I am asking for steps or good references, 

    i have  used sniffer also but did not got any Match_Des_Req() or response msg  I am working on it for past 2 weeks due to lack of references its become difficult for me to make endpoints on same device kindly help.

  • If you can't see Match_Des_Req in packet sniffer, do you try to set breakpoint at Match_Des_Req and debug if it goes to this line after pressing key_3?

  • Hello Sir,

    thanks for your concern,I am attaching here with the source c file and key_4 is now I m using for Match_Des_Req() it is going but I dont think that Two Endpoints are working I thought only  SerialApp is working But I followed all the Steps regarding Implementation of Two Endpoints 

    http://processors.wiki.ti.com/index.php/Multi-endpoint_device_implementation  as per this Link 1185.Source.zip 

    Please do at Osal_SerailApp.c And Rest of the file I just want to make these Two application to work Simultaneously and Please Let me Know Where I am doing the Mistakes and if so What References to take. kindly help.Sir.

  • Hello sir,

    here I am attaching my source code please look into it , and suggest me the way to 

    these two application simultaneously on different endpoints,

    8345.1185.Source.zip

  • Hello Sir,

    Thanks For all your replies, I have tried that and was working Now I am moving on Home Automation ,I am trying to control multiple light on single device that is CC 2530.what i tried is , I have used two Sample light application and follow the steps that were mentioned in the link you have provided to me.I have used Two endpoints for  samplelight applications endpoint 20 and endpoint 23 ,i have used the same sample light application with renaming it to samplelight1.c,samplelight1.h and samplelight1_data.c and add all these three files in OSAL_Samplelight.c have added the 

    " zcl_samplelight1.h"

    zclsamplelght1_event_loop

    zclsamplelight1_Init();

    but after compiling I am getting these two errors

    zclsamplelght1_event_loop  is "undefined"

    zclsamplelight1_Init(); is declared "implicitely"

    here I am sending my source code to you please find the attachment and one more important thing is  I have tried the same procedure of using two endpoints on single device with switch and Light application on same device but on different endpoint  I have used  endpoint num 20 and 23 respectively on one device CC 2530 and same switch and light application on another cc 2530 device on interchanged endpoint 23 and 20 and this application is working fine i can control the light of one device with switch on another device and vice-versa,

    So please help why I am getting this error in case of sampleLight application in which I am trying two light on single device but on different endpoints.8524.Code.zip

    please find the attachment for the same .

  • I didn't look at the source code, but my hunch is you are not properly using the "Extern" in the .h file.

    You do not necessarily have to have the HA/ACL clusters and SE clusters on two separate endpoints.  I have developed several SE products that do so and are fully certified (some are even test lab golden units).  There is nothing wrong with the two endpoint approach, but you run the risk that all devices that intend to talk to your device do a proper discovery and are capable of utilizing the two endpoints properly depending on what message needs to be sent.   Most ESI's do so today, but that was not always the case as I recall a few implementations in the past years that assumed all your clusters were on the first endpoint that was found (and would send messages to the wrong endpoint).

    One important thing to remember, is all clusters must have the APS security turned on unless specifically excluded in the SE specification (CKBE).   So all of your HA/ACL clusters must have this additional security.  So any HA device that is not part of the SE network will not be able to talk directly to your device, but the SE devices in the network can talk HA to one another (if the ESI allows it).