Skip to main content

Asynchronous Python client for Salus IT600 devices

Project description

Python: Asynchronous client for Salus iT600 devices

About

This package allows you to control and monitor your Salus iT600 smart home devices locally through Salus UG600 universal gateway. Currently only heating thermostats and some sensors are supported. You have any other devices and would like to contribute - you are welcome to create an issue or submit a pull request.

Installation

pip install pyit600

Usage

  • Instantiate the IT600Gateway device with local ip address and EUID of your gateway. You can find EUID written down on the bottom of your gateway (eg. 001E5E0D32906128).
  • Status can be polled using the poll_status() command.
  • Callbacks to be notified of state updates can be added with the add_climate_update_callback(method) or add_sensor_update_callback(method) method.

Basic example

async with IT600Gateway(host=args.host, euid=args.euid) as gateway:
	await gateway.connect()
	await gateway.poll_status()

	climate_devices = gateway.get_climate_devices()

	print("All climate devices:")
	print(repr(climate_devices))

	for climate_device_id in climate_devices:
		print(f"Climate device {climate_device_id} status:")
		print(repr(climate_devices.get(climate_device_id)))

		print(f"Setting heating device {climate_device_id} temperature to 21 degrees celsius")
		await gateway.set_climate_device_temperature(climate_device_id, 21)

Useful gateway methods

  • poll_status()
  • get_climate_devices()
  • get_climate_device(device_id)
  • set_climate_device_preset(device_id, preset)
  • set_climate_device_mode(device_id, mode)
  • set_climate_device_temperature(device_id, setpoint_celsius)
  • get_sensor_devices()
  • get_sensor_device(device_id)

Supported devices

These thermostats have been tested:

  • HTRP-RF(50)
  • TS600
  • VS10WRF/VS10BRF
  • VS20WRF/VS20BRF
  • SQ610RF

These sensors have been tested:

  • SW600

These sensors have not been tested, but may work:

  • WLS600
  • OS600

Contributing

If you want to help to get your device supported, open GitHub issue and add your device model number and output of main.py program. Be sure to run this program with --debug option.

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

pyit600-0.1.0.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

pyit600-0.1.0-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

File details

Details for the file pyit600-0.1.0.tar.gz.

File metadata

  • Download URL: pyit600-0.1.0.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.5

File hashes

Hashes for pyit600-0.1.0.tar.gz
Algorithm Hash digest
SHA256 aead5658c3386582dd516d746b27b7d6d0ab3304113cb081d5c5a2deef3afda2
MD5 b1b23a25cdf06764311480469a7041c5
BLAKE2b-256 ee503ec4bd6fb493d462e1e5ec0dff54b59a8a641c92cf607db0656551681f27

See more details on using hashes here.

File details

Details for the file pyit600-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pyit600-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.5

File hashes

Hashes for pyit600-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 149ee84c7405e741d568d8533361a8ccc3cdc440122190a476616315aecc3b50
MD5 906dbdf3897c24696062c5472b3dba17
BLAKE2b-256 d3e7ecff64f615c88c4baef451b1b98b6b9565b8b2905c2c9d516afd82d3ba36

See more details on using hashes here.

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