A small package to pull data from Ecowater water softeners
Project description
V2.0.0 BREAKING CHANGES
For version 2.0.0 the library has been rewritten and methods have changed.
Ecowater Softener
ecowater-softener is a Python library for collecting information from Ecowater water softeners.
Installation
Use the package manager pip to install ecowater.
pip install ecowater-softener
Usage
Liquids are measured in US Gallons, liquid speeds are measured in US Gallons per Minute (gpm), and weights are measured in Pounds (lbs)
Importing the library
import ecowater_softener
Account
Initialize Ecowater account using username and password credentials
ecowater_account = ecowater_softener.EcowaterAccount('username', 'password')
Devices
Retrieve a list of all devices associated with the Ecowater account
devices = ecowater_account.get_devices()
Access the first device from the list of devices
device = devices[0]
Get / Update the devices values (Needs to be ran before accessing data or the data will return None)
device.update()
Device Info
Get the device model (string)
model = device.model
Get the device serial number (string)
serial_number = device.serial_number
Get the device software version (string)
software_version = device.software_version
Get the signal strength (rssi) (integer)
rssi = device.rssi
Get the device ip address (string)
ip_address = device.ip_address
Water
Get the average daily water usage (integer)
water_use_avg_daily = device.water_use_avg_daily
Get the amount of water used today (integer)
water_use_today = device.water_use_today
Get the current amount of available water (integer)
water_available = device.water_available
Water Flow
Get the current water flow rate (float)
current_water_flow = device.current_water_flow
Salt
Get the current salt level as a percentage (float)
salt_level_percentage = device.salt_level_percentage
Get the number of days until the device runs out of salt (integer)
out_of_salt_days = device.out_of_salt_days
Get the estimated date when the device will run out of salt (datetime.date)
out_of_salt_date = device.out_of_salt_date
Get the salt type, either "NaCl" or "KCl" (string)
salt_type = device.salt_type
Rock
Get the average amount of rock removed daily (float)
rock_removed_avg_daily = device.rock_removed_avg_daily
Get the total amount of rock removed by the device over its lifetime (float)
rock_removed = device.rock_removed
Recharge
Get the recharge status, either "None", "Scheduled", or "Recharging" (string)
recharge_status = device.recharge_status
Check if recharge is enabled (boolean)
recharge_enabled = device.recharge_enabled
Check if a recharge is scheduled (boolean)
recharge_scheduled = device.recharge_scheduled
Check if recharging currently (boolean)
recharge_recharging = device.recharge_recharging
Get the number of days since the last recharge was performed (integer)
last_recharge_days = device.last_recharge_days
Get the date of the last recharge (datetime.date)
last_recharge_date = device.last_recharge_date
Credits
- Kyle Johnson for his work on using python to interface with Ecowater water softeners. Most of this libraries code was originally built upon code which he wrote. You can read his article regarding scraping data from Ecowater water softeners at https://gnulnx.net/2020/02/18/ecowater-api-scraping/
- @rewardone for creating ayla-iot-unofficial which is used to fetch the data
- Jeff Rescignano for creating sharkiq which ayla-iot-unofficial is based on.
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
License
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
File details
Details for the file ecowater_softener-2.2.1.tar.gz
.
File metadata
- Download URL: ecowater_softener-2.2.1.tar.gz
- Upload date:
- Size: 10.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 837b2246779932b0b34ddb836defb01ade66117307cd165d3912148fa1a859a9 |
|
MD5 | 895f02dc0e4f6d4f671352dd64c8057b |
|
BLAKE2b-256 | 74a7870a50fe2c115a40bba4eca9fe7d089b0388e6423a13bbd4ccae898acbbd |