Skip to main content

pyeconet

Python3 interface to the unofficial EcoNet API.

[!NOTE] I no longer have a device connect to the Rheem cloud due to migrating to a fully local control option https://github.com/esphome-econet/esphome-econet If anyone is interested in taking over ownership for this project please open an issue to discuss.

[!NOTE] This isn't using an official EcoNet API therefore this library could stop working at any time, without warning.

import asyncio
import logging
import time
import getpass

from pyeconet import EcoNetApiInterface
from pyeconet.equipment import EquipmentType
from pyeconet.equipment.water_heater import WaterHeaterOperationMode

logging.basicConfig()
logging.getLogger().setLevel(logging.DEBUG)


async def main():
    email = input("Enter your email: ").strip()
    password = "" #getpass.getpass(prompt='Enter your password: ')
    api = await EcoNetApiInterface.login(email, password=password)
    all_equipment = await api.get_equipment_by_type([EquipmentType.WATER_HEATER, EquipmentType.THERMOSTAT])
    #api.subscribe()
    #await asyncio.sleep(5)
    for equip_list in all_equipment.values():
        for equipment in equip_list:
            print(f"Name: {equipment.device_name}")
    #        print(f"Set point: {equipment.set_point}")
    #        print(f"Supports modes: {equipment._supports_modes()}")
    #        print(f"Operation modes: {equipment.modes}")
    #        print(f"Operation mode: {equipment.mode}")
            #await equipment._get_energy_usage()
            #equipment.set_set_point(equipment.set_point + 1)
            #equipment.set_mode(OperationMode.ELECTRIC_MODE)
    #await asyncio.sleep(300000)
    #api.unsubscribe()

if __name__ == "__main__":
    loop = asyncio.get_event_loop()
    loop.run_until_complete(main())

Download files

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

Source Distribution

pyeconet-0.2.5.tar.gz (17.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyeconet-0.2.5-py3-none-any.whl (18.6 kB view details)

Uploaded Python 3

File details

Details for the file pyeconet-0.2.5.tar.gz.

File metadata

  • Download URL: pyeconet-0.2.5.tar.gz
  • Upload date:
  • Size: 17.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for pyeconet-0.2.5.tar.gz
Algorithm Hash digest
SHA256 537ca86c1ba6158121f44e5ac66236c92cb354d20a62bfd2983df3b0d915e963
MD5 6ec75ffcb2660cea1faee95aeb9b16d1
BLAKE2b-256 9b9f4ab847a579bbed34ea41befcc858fcd45db384b77d12d7ad7f5f474174b7

See more details on using hashes here.

File details

Details for the file pyeconet-0.2.5-py3-none-any.whl.

File metadata

  • Download URL: pyeconet-0.2.5-py3-none-any.whl
  • Upload date:
  • Size: 18.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for pyeconet-0.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 a6cc6608ff20486f69ef1a4449e0ca8210d8b30449b4c47dbe9bf6f06ad60d32
MD5 7e829dd2746411d53da5c6f65e9f8ef6
BLAKE2b-256 39872ebb27e5f2b1ca1a86847415d429b5da9e1fe65e12c8adc6cd5baccd1af0

See more details on using hashes here.

Release history Release notifications | RSS feed

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page