Skip to content

homeassistant-projects/pyhoneywell_whc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Python interface for Honeywell (Resideo) water heater controllers

PyPi License Donate

NOT YET IMPLEMENTED

Python library for communicating over RS485 Modbus with Honeywell (Resideo) residential water heater control units and accessories for Bradford White, A.O. Smith, Rheem and other hot water tanks. This enables integrations to be built for smart home automation systems for water heaters with existing digital controls by Honeywell, including water heater status, temperatures, and adjusting temperature settings (for example, on a set back schedule, occupancy sensors, or away/vacation mode). NOTE: This controls your hot water heater settings, USE AT YOUR OWN RISK!

Special thanks to Gene Hayes (waterheatertimer.org) whose wealth of knowledge on water heater control systems, including the Honeywell, was an incredible help on understanding this system and making this integration possible.

Supported Features

  • water temperature (upper and lower tank)
  • thermostat (current setting + changing the target temperature)
  • heater status (heating or off)
  • diagnostic status codes

Example Home Automation Use Cases

  • display current water temperature
  • alarms before hot water runs out
  • automatically schedule temperature set backs
  • temporary water heater holds
  • provide a vacation mode setting to turn back heat pump
  • track heater cycles
  • incoming water valve shutoff (if automatied valve installed)
  • hot water capacity indicator (estimate available hot water)

Required Hardware

  • Atmospheric Honeywell controller (WV/WT series): The WV and WT series gas control systems are atmospheric vented water heaters and are powered by a small amount of current produced by a thermopile heated by the pilot flame. Bradley White offered a now discontinued setback controller that plugged into the COM port of the Honeywell controls, white was sperately powered by a 24 volt AC transformer.

*** RS485 adapter** to connect host running this client directly to the Honeywell controller (such as the JBtek USB to RS485 adapter)

It may be possibly to use RS485-over-IP devices to create a local socat mountpoint and communicate with the remote RS485 device, buy this has not been tested.

Supported Models

  • Bradford White ICON itelligent diagnostic and control systems
  • WV8840A / WV8860A
  • WC4460A / WV4460E
  • Honeywell WT88 series
Brand SKU Brand Part Number Resideo Part Number Alternative Part Numbers
Bradford White WT8840A1000 222-47463-01A / 222-47463-01E WV8840A1000 / WV8840A1001 415-52907-01
Bradford White WT8840A1500 222-47463-02A / 222-47463-02E WV8840A1050 / WV8840A1051 415-52907-02
Bradford White WT8860A1000 222-48863-01 WV8860A1009 / WV8860A1010 415-52915-01 / 100112336 / 9007884005
A.O. Smith * WT8840B1000 316910-000 / 316910-000 / 321166-000 WV8860B1309 / WV8860B1310 100112336/ 9007884005
A.O. Smith * WT8840B1500 316910-001 / 316910-001 / 321166-001 WV8840B1059 / WV8840B1117 / WV8840B1118 100112337 / 9007885005
A.O. Smith * WT8860B1000 100073010 / 318618-000 WV8860B1309 / WV8860B1310 100093970/ 9007631005
Rheem WT8840C1000 AP16910E WV8840C1406 SP20832E
Rheem WT8840C1500 AP16910B WV8840C1605 SP20832B
Reliance 9007890
Reliance 9007884005
American GIDDS-110577 6911128
  • These Honeywell controls may appear on other water heaters as well since AO Smith also includes the brands State, American, Reliance, Kenmore, Craftmaster, Lochinvar, Kenmore, and others.

  • This MAY also work with WV4262.

  • This MAY work with the commercial Atmospheric ICON Gas Control

  • The Bradley White Setback Control manual mentions that the S9360B, S9380B may use similar controls.

Installation

pip3 install pyhoneywell_whc

Example Code

See example-client.py for a working example.

hot_water = PyHoneywellWaterHeaterController()

# attributes
hot_water.upper_temp
hot_water.lower_temp
hot_water.target_temp
hot_water.diagnostic_code
hot_water.is_heating

# control methods
hot_water.set_target_temp(130)

Support

  • This controls the hot water tank settings, USE AT YOUR OWN RISK!
  • This library is community supported, please submit changes and improvements.

Known Issues

  • NOT YET IMPLEMENTED
  • EWA500C-RS485 Modbus communication module

See Also

BOILER EXAMPLES:

Example modbus clients:

Example thermostat clients:

About

Python interface for Honeywell (Resideo) water heater controllers

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages