Jump to content
Sign in to follow this  
piotrcz

Wrong response from Temperature and Humidity Sensor

Recommended Posts

Hello,

 

My name is Piotr and I've got two modules:

1. Temperature and Humidity Sensor (https://github.com/YaoQ/zigbee/blob/master/zigbee-TempHum.md)

2. Linker Zigbee Gateway Module (http://linksprite.com/wiki/index.php5?title=Linker_Zigbee_Gateway_Module)

 

We've prepared c++ code for Linux to configure and use modules but we are not able to receive correct temperature message.

We've done the following steps:

1. Set Permit Join:

Send: 02 75 1e

Recv: 02 81 00

Recv: 0e fc 02 e1 6e 11 0a 5e 34 53 c9 43 50 00 ff

 

Short address : 6e 11

MAC address : 0a 5e 34 53 c9 43 50 00

 

2. Get the information

Send:  04 c8 6e 11 01
Recv:  19 c9 00 6e 11 14 01 04 01 02 03 00 05 00 00 03 00 02 04 01 00 09 00 01 19 00

 

3. set target

Send: 0c fc 02 01 04 01 01 01 02 6e 11 02 0a
Response: 04 fd 02 01 00

 

4. Get the MAC address of ZiBee gateway

Send: 02 14 6f
Recv: 0c 15 00 6f 08 87 40 21 1f c9 43 50 00

 

GATEWAY_MAC_ADDRESS:  87 40 21 1f c9 43 50 00

 

5. Bind device to communication

Send: 16 d8 87 40 21 1f c9 43 50 00 01 02 04 03 0a 5e 34 53 c9 43 50 00 01
Recv:  02 d9 00

 

6. Configure report

Send: 11 fc 00 02 04 06 01 00 00 00 20 05 00 05 00 01 00 00
Recv:  06 fd 00 02 04 06 00

 

7. Temperature report message

Recv: 09 fe 03 02 04 07 8d 00 00 00

 

We've followed instruction from https://github.com/YaoQ/zigbee/blob/master/zigbee-TempHum.mdpage but temperature report message is different.

I think also that command for "Bind device to communication" described in the file is wrong, because MAC address order is wrong. Am I right?

 

Can anyone help with this issue?

 

Thank you,

Best Regards,

Piotr

Share this post


Link to post
Share on other sites

One more information,

 

We've changed Configure report to:

Send: 11 fc 00 02 04 06 01 00 00 00 29 05 00 05 00 01 00 00
Recv:  06 fd 00 02 04 06 00

 

And got:

7. Temperature report message

Recv: 06 fe 03 02 04 07 00

 

However, I reckon that this response is wrong.

 

Best Regards,

Piotr

Share this post


Link to post
Share on other sites

Hi,

 

Thank you, I've tried python code and it works.

I've compared my c++ code with python and it looks similar, however, I found that device mac address received in c++ application is wrong. It starts with 0a but should with 0d.

I set correct value in code and was able to read temperature.

 

Now I need to figure out why my application receives wrong device address.

 

Thank you,

Best Regards,

Piotr

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×