smar000 / evoGateway

Python script for listening in and responding to evohome heating control radio messages
47 stars 17 forks source link

No option for "non acknoledge" commands. #13

Closed inode- closed 4 years ago

inode- commented 4 years ago

Hello,

I'm using the software to emulate some temperature sensor using low cost xiaomi devices. From my test not all commands sent to the evohome devices need to get an acknoledge. For example this command is received and processed correctly by the evohome controller, but the ACK is never received.

{"command_code": "0x30C9","send_mode": "I","arguments" :{"dev1": "34:236338",
  "dev2":"--:------", "dev3" : "34:236338", "payload":"1234"}}

inode

smar000 commented 4 years ago

Hi

I'm sorry but I don't understand what you mean by emulating a xiaomi device...?

If you mean that you are trying to emulate an HR92 or other similar edge device, then yes those don't send acknowledgements. However, that was not my purpose in putting together this script and is not something that I really have the time to look at at this time.

Please do feel free to make any changes you need - it should be straight forward but will require a bit of thinking through and testing to ensure that the logic for processing subsequent commands does not get broken.

EDIT: Actually I've just realised that you may have meant you are using a Xiaomi device to give you temperature details, which you are then forwarding on to your evohome network, emulating a Honeywell thermostat. If so, good idea!

dhuizinga commented 4 years ago

Let me add to that: Please share your code once you have it set up! I'd be much obliged :)

inode- commented 4 years ago

My explanation wasn't so clear...

It's correct, I'm using some cheap xiaomi device to read the room temperature and send this data to the evohome controller via this python.

From my testing the evohome controller (in my case ATC928G3027) doesn't send any ACK command back when it receive this kind of messages.

In the next weeks I will look deeper modifying the code to support also these messages that doesn't need an ACK.

smar000 commented 4 years ago

Option added in latest build for either overriding acknowledgements for individual commands, or setting as default for all sent commands. Please see README for details.