How to extract data from unknown Cluster

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to extract data from unknown Cluster

1,436 Views
854648943
Contributor III

Hi,

We are docking zigbee devices, their devices are a custom cluster, and then put in the data, to send.

I need to extract the contents of the received frame of data.

But I didn't find out where there was an interface in the SDK-JN-4170 that prompted me to get this message.

I manually created a cluster, like him on the coordinator, and then I found that when I received the message (figure above), I automatically replied to a frame of message (figure below).

But I still don't know how to extract this data, and where to instruct me to receive this frame of data.

But I didn't find out where there was an interface in the SDK-JN-4170 that prompted me to get this message.

pastedImage_1.png

pastedImage_2.png

0 Kudos
14 Replies

1,260 Views
Sebastian_Del_Rio
NXP Employee
NXP Employee

Hi, I hope you’re doing well!

 

To get payload information for a packet, you can use these functions included in the JenOS Protocol Data Unit Manager API:

 

  • PDUM_u16APduInstanceReadNBO: this function will insert data into a C structure from the specified APDU instance.
  • PDUM_pvAPduInstanceGetPayload: Will return a pointer to the payload of the starting address of the received payload.
  • PDUM_u16APduInstanceGetPayloadSize: Will return the size, in bytes, of the payload data of the specified APDU.

 

For more information, could you please take a look at chaper 12 of the JenOS User Guide, here?

 

Please let me know if you need more information.

 

Best regards,

Sebastian

0 Kudos

1,260 Views
854648943
Contributor III

Hi,

Thank you for your reply.

I know how to do the data extraction, but the situation is that when this frame message arrived i did not receive any events 

For example ZPS_EVENT_APS_DATA_INDICATION,

I mean, how can I get instructions that when a UnKnown Cluster event arrives,

I'm using JN-AN-1216 as coordinator.

0 Kudos

1,260 Views
Sebastian_Del_Rio
NXP Employee
NXP Employee

Hi,

 

Could you please provide a sniffer log to see the process of the data request and the message you're getting as a response?

 

Best regards,

Sebastian

0 Kudos

1,260 Views
854648943
Contributor III

Hi,Sebastian Delrio 

Thank you for your reply.

This is the relevant information I got, and when the child device sends a message to the coordinator, the type of message is unknown Cluster, 

I need the data in this frame of message, but when the frame message arrives, I can't get any instructions, such as APS DATA Indication, so I want to know where I can get instructions when the message arrives.

pastedImage_1.png

0 Kudos

1,260 Views
Sebastian_Del_Rio
NXP Employee
NXP Employee

Hi,

 

Is it possible for you to provide your implementation? Which coordinator, router and End Device JN-ANs are you using for your project?

 

Could you please provide a sniffer log file?

 

Best regards,

Sebastian

0 Kudos

1,260 Views
854648943
Contributor III

Hi,Sebastian Delrio

I'm sorry, i don't know how to upload the file in the reply message, i tried some methods but failed, I would like to ask there is no reference document, can tell me how to upload files.

The coordinator is JN-AN-1216,

I am not very clear about the specific End Device of other manufacturers, It belongs to other companies.

we now need to add this End Device to our coordinator. Can control him.

Best regards,

han

0 Kudos

1,260 Views
Sebastian_Del_Rio
NXP Employee
NXP Employee

Hi Tianheng Han,

 

To discover the existing clusters in a determined endpoint with a JN-AN-1216 Coordinator, you can send an Active Endpoint request to your End Device's short address, followed by a Simple Descriptor request of the endpoint containing the cluster you want to know information about.

 

If the custom cluster is discoverable, you will get information about it in the Simple Descriptor response.

 

Please let me know if you need any more information.

 

Best regards,

Sebastian

0 Kudos

1,260 Views
854648943
Contributor III

Hi,

Thank you for your reply.

I found that the End device sends data through custom cluster 0x0fa0 in endpoint -0.

The coordinator receives the message and does not send the events to APP_vGenCallback( ). So when the data for these custom

clusters arrives, there is no event that tells me where to extract the data. 

I don't know how to add a custom cluster of 0x0fa0 under endpoint 0 so that messages sent by the device can be callback into this function APP_vGenCallback

0 Kudos

1,260 Views
Sebastian_Del_Rio
NXP Employee
NXP Employee

Hi Han,

 

Could you please try sending a Read Attributes request to the endpoint and 0x0fa0 cluster and see the raw data information received from your end device?

 

Best regards,

Sebastian

0 Kudos

1,260 Views
854648943
Contributor III

Hi Sebastian Delrio

I'm sorry I just pressed command + s twice, and then the reply was automatically sent and sent two. I'm sorry about that.

Best regards,

Han

0 Kudos

1,260 Views
854648943
Contributor III

Hi,Sebastian Delrio

 

Thank you for your reply.

Now that i've solved the problem,  I added a custom cluster under endpoint 0 in the configuration file.

Use this function ZPS_eAplZdoRegisterZdoFilterCallback to register a callback function to receive, and now the data is available

0 Kudos

1,260 Views
Sebastian_Del_Rio
NXP Employee
NXP Employee

Hi Tianheng,

It's good to know you got it working!

Please let me know if you need help with any other issue.

Best regards,

Sebastian

0 Kudos

1,260 Views
854648943
Contributor III

Hi,Sebastian Delrio

 

Thank you for your reply.

Now that i've solved the problem,  I added a custom cluster under endpoint 0 in the configuration file.

Use this function ZPS_eAplZdoRegisterZdoFilterCallback to register a callback function to receive, and now the data is available

0 Kudos

1,260 Views
854648943
Contributor III

Hi,

Thank you for your reply.

I found that the End device sends data through custom cluster 0x0fa0 in endpoint -0.

The coordinator receives the message and does not send the events to APP_vGenCallback( ). So when the data for these custom

clusters arrives, there is no event that tells me where to extract the data. 

I don't know how to add a custom cluster of 0x0fa0 under endpoint 0 so that messages sent by the device can be callback into this function APP_vGenCallback

0 Kudos