Library for communication with Heatmiser Wifi thermostats
Project description
Heatmiser WiFi - python library and tool
Overview
A Heatmiser WiFi Thermostat communication tool and library for python.
Supported Heatmiser Thermostats are DT, DT-E, PRT and PRT-E.
This release (v1.3.0) adds support for the PRT-HW WiFi thermostat, and adds the following functionality (for PRT-HW, maybe others):
- Setting timers for heating (should work for all models)
- Setting timers for hot water (for PRT-HW)
- Setting clock on thermostat with option offset (should work for all models)
The main class of the library is Heatmiser. It supports retrieval of all Thermostat parameters as a dictionary. It also supports setting of most (but not all) of the Thermostat parameters.
Supported platforms
The application is written in Python and has been successfully tested with Python version 2.7 and 3.4.
For versions prior to v1.3.0 both Windows and Linux had been tested successfully. Mac OS X has not been tested, but should work as well. For this release v.1.3.0, only Linux has been tested, though I see no reason why it wouldn't work on the other platforms.
Installation
Run
python -m pip install heatmiser_wifi
This will install both the library and the command line tool.
Alternatively, since this is just one python file, you can download heatmiser_wifi.py and include it in your project.
Using libary
See how the library/class is used in the main() function of heatmiser_wifi.py.
Using command line tool
To list all parameters write:
heatmiser_wifi -c <pincode> <themostat_ip_address> -l
It is also possible to read and write specific parameters. For instructions, write:
heatmiser_wifi -h
When setting triggers for heating / hot water use comma separated values for the trigger parameters
For heating triggers: Time1Hour,Time1Minute,Time1Temp,Time2Hour,Time2Minute,Time2Temp,Time3Hour,Time3Minute,Time3Temp,Time4Hour,Time4Minute,Time4Temp
For hot water triggers: Time1OnHour,Time1OnMinute,Time1OffHour,Time1OffMinute,Time2OnHour,Time2OnMinute,Time2OffHour,Time2OffMinute,Time3OnHour,Time3OnMinute,Time3OffHour,Time3OffMinute,Time4OnHour,Time4OnMinute,Time4OffHour,Time4OffMinute
Note the thermostat only allows minutes to be either 0 or 30
For example:
heatmiser_wifi -c <pincode> <themostat_ip_address> -w mon_triggers 7,30,20,9,0,5,16,0,22,22,0,5
heatmiser_wifi -c <pincode> <themostat_ip_address> -w tue_hw_triggers 7,30,8,0,9,0,9,30,13,30,14,30,22,0,23,0
When setting date / time, the parameter is an offset which added to the system date before sending to the thermostat. I use this to partially get round the limitation on the trigger minute only being 0 or 30
For example, this will set the thermostat clock to be 15 mins behind the system time:
heatmiser_wifi -c <pincode> <themostat_ip_address> -w date_time -15
Author and license
This application is written by Joel Midstjärna and is licensed under the MIT License. Additional functionality and support for PRT-HW written by Iain Bullock
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file heatmiser_wifi-1.3.0.tar.gz
.
File metadata
- Download URL: heatmiser_wifi-1.3.0.tar.gz
- Upload date:
- Size: 10.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f8f4fdc7c940b840cfe5a594a8f86a5d178710084371f875f2fddfa01a285d4e |
|
MD5 | 2cadb55d55939f85ded486d3a80ca229 |
|
BLAKE2b-256 | ef3fabd26b1ebf61c77311566d9b4f03f9f0ca35a1957f77330ef76a9d258ef6 |
File details
Details for the file heatmiser_wifi-1.3.0-py3-none-any.whl
.
File metadata
- Download URL: heatmiser_wifi-1.3.0-py3-none-any.whl
- Upload date:
- Size: 9.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2dd231be3741038f1a1db31446dc004e50329b9da22b48e812f88a15fe436482 |
|
MD5 | 441a8c9a3d429538180cef98ea3ff7dc |
|
BLAKE2b-256 | 49014e5901ab5e172e32bbabe3fafb4ac5373a4fb0e19ab92d1131f8ce06f536 |