Skip to main content

API Wrapper for myicomfort.com

Project description

PyPI - myicomfort

API Wrapper for www.myicomfort.com

By Jacob Southard (https://github.com/thevoltagesource)
Based on the work of Jerome Avondo (https://github.com/ut666)

Read and adjust your Lennox iComfort WiFi thermostat thru the Lennox cloud API at www.myicomfort.com. You must have an existing myicomfort account and have your iComfort WiFi thermostat configured to work with the cloud service. If you can control your thermostat from your iPhone or Android you are ready to use this wrapper.

Support has been added for AirEase thermostats. AirEase is in the Lennox family and the interaction is the same, just with a different URL (www.mycomfortsync.com). A parameter has been added to the class to select the AirEase Cloud API instead of the Lennox Cloud API.

This was created primarly to provide an API for use with https://www.home-assistant.io/ but should work on any project you have in mind. For those using this in your own project, there is a get_json() method which returns the current status of the thermostat in JSON format.

Class:

myicomfort.api.Tstat (username, password, system, zone, svc, units)

  • username: your myicomfort account username
  • password: your myicomfort account password
  • system: Zero-based index of systems in your myicomfort account (default = 0)
  • zone: Zero-based index of zones for selected system (default = 0)
  • svc: String value to select 'lennox' or 'airease' API (default = 'lennox')
  • units: F = 0, C = 1, Use thermostat setting = 9 (default = 9)
Example:
from myicomfort.api import Tstat

t = Tstat('username', 'password', 0, 0, 'lennox', 0)
t.current_temperature
t.set_points((68, 75))
t.pull_status()
t.get_json()
Notes:
  • This API currently only supports manual mode (no programs) on the thermostat.
Cloud API Response Notes:
  • Pref_Temp_Units: [0='F', 1='C']
  • Operation_Mode: [0='Off', 1='Heat only', 2='Cool only', 3='Heat & Cool', 4='Emergency Heat']
  • Fan_Mode: [0='Auto', 1='On', 2='Circulate']
  • System_Status: [0='Idle', 1='Heating', 2='Cooling', 3='System Waiting']
Ideas/Future:
  • Support thermostat programs
  • Set Away temps - Research if possible through cloud API
  • Support other states - dehumidify

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

myicomfort-0.7.0.tar.gz (6.0 kB view hashes)

Uploaded Source

Built Distribution

myicomfort-0.7.0-py3-none-any.whl (6.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page