# A.O. Smith water heater: local CTA-2045 control and protocol findings

> The A.O. Smith water-heater project implements local monitoring and demand-response control of an HPS10-50H45DV over its CTA-2045 RS-485 port, publishing readings to MQTT. Its documentation records frame structure, checksums, control responses and observed behavior of this specific tank.

- Type: Case study
- Targets: Protocol
- Category: Independent reconstruction cases
- Relationship: Independent reconstruction project
- Sources reviewed: 2026-11-06
- Added to the catalog: 2026-11-06
- Original resource: <https://github.com/ericboehs/aosmith-water-heater>
- Primary source: <https://github.com/ericboehs/aosmith-water-heater/blob/4145daaf0f85bfdc19e96482e2ef4442721fb43a/README.md>
- Catalog page: <https://awesomerea.org/resources/aosmith-water-heater-case/>
- Record JSON: <https://awesomerea.org/resources/aosmith-water-heater-case/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/aosmith-water-heater-case/index.md)

## Requirements & limits

- **Prerequisites:** Requires an A.O. Smith HPS10-50H45DV, a Raspberry Pi Zero 2 W and an isolated RS-485 adapter as documented.
- **Prerequisites:** The documented setup uses Raspberry Pi OS Lite, Python 3.13 and a 19200 8N1 serial port.
- **Limits:** Setpoint writes, water-temperature reads and operating-mode changes are unavailable through this tank's CTA-2045 port.
- **License:** MIT license.

## Primary sources

1. <https://github.com/ericboehs/aosmith-water-heater/blob/4145daaf0f85bfdc19e96482e2ef4442721fb43a/README.md>
2. <https://github.com/ericboehs/aosmith-water-heater/blob/4145daaf0f85bfdc19e96482e2ef4442721fb43a/ARCHITECTURE.md>

## More in Protocols

- [j2208-band-tools: a direct client for the J2208 fitness-band protocol](https://awesomerea.org/resources/j2208-band-tools-case/index.md) · Case study
- [Eufy Local Light: reconstructing BLE control for E10 and E22 lights](https://awesomerea.org/resources/eufy-local-ha-case/index.md) · Case study
- [OpenPeats: reconstructing SoundPEATS earbud controls](https://awesomerea.org/resources/openpeats-case/index.md) · Case study
- [hongtai-panel: reconstructing a cooler LCD's USB serial protocol](https://awesomerea.org/resources/hongtai-panel-case/index.md) · Case study
- [ESPHome ↔ L&S Emotion Control: reconstructing a smart-light radio client](https://awesomerea.org/resources/emotion-control-ha-case/index.md) · Case study
- [akp02: reconstructing the Ajazz AKP02 display protocol](https://awesomerea.org/resources/akp02-display-protocol-case/index.md) · Case study

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
