ESPHome (Compatible with RATGDO)

4 reviews Write a review
MSRP: $30.00
Finite Labs
30 days
Platform:
Version: 20260802
ESPHome
Please sign in to buy

This product cannot be added to the
cart because you are not logged in.

Overview

Integrate ESPHome-based devices into Control4. ESPHome is an open-source system that transforms common microcontrollers, like ESP8266 and ESP32, into smart home devices through simple YAML configuration. ESPHome devices can be set up, monitored, and controlled using a web browser, Home Assistant, or other compatible platforms. This driver enables seamless monitoring and control of ESPHome devices directly from your Control4 system.

Features

  • Local network communication requiring no cloud services
  • Real-time updates from all supported entities exposed by the device
  • Supports encrypted connections using the device encryption key
  • Variable Programming Support

System requirements

  • Control4 OS 3.3+

Compatibility

Verified Devices

This driver will generically work with any ESPHome device, but we have tested extensively with the following devices:

Supported Bluetooth Devices

When used as a Bluetooth proxy, this driver supports the following BLE device types through sub-drivers:

Protocol Sub-Driver Example Devices
SwitchBot ESPHome SwitchBot Bot, Plug Mini, Relay Switch, Meter, Motion, Contact
BTHome ESPHome BTHome Shelly BLU Button/Door/Motion/H&T, DIY sensors
Govee ESPHome Govee Temperature/humidity monitors, meat thermometers
Yale/August ESPHome Yale Yale and August smart locks

See the individual sub-driver documentation for device-specific details.

Supported ESPHome Entities

Entity Type Supported
Alarm Control Panel
API Noise
Binary Sensor
Bluetooth Proxy
Button
Camera
Climate
Cover
Date
Datetime
Event
Fan
Light
Lock
Media Player
Number
Select
Sensor
Siren
Switch
Text
Text Sensor
Time
Update
Valve
Voice Assistant ❌*
Water Heater

 

* Voice Assistant requires a speech-to-text and intent processing pipeline (e.g. Home Assistant Assist). Control4 does not natively provide voice intent handling, so this entity type is not supported.

Driver Documentation (ESPHome_Documentation.pdf, 401 Kb) [Download]

Customer reviews

5 out of 5
4 stars
0
3 stars
0
2 stars
0
1 star
0
Any Experience With This product?
Share it with others to help them make the right choice
Write a review
Sort by:
With photos
Big D
Big D
06/13/2025
RATGDO working perfectly now
Comment
I used this ESPHome driver for RATGDO installation. Easy to setup and configure. Previously, I was having issues ...
Was this review helpful?
0 0
Josh
Josh
06/12/2025
Amazing and flexible driver (that works!)
Comment
I was using *another* RATGDO driver and was constantly having problems that the vendor couldn't resolve. I switched to this ...
Was this review helpful?
0 0
DL
DL
06/12/2025
Finally have my ratgdos working perfectly!
Comment
I have two ratgdos, one dry contact sensor and one Security + 2.0 setup on Control4.

Using another C4 driver, I ...
Was this review helpful?
0 0
McGlothlin Inc
McGlothlin Inc
06/12/2025
Ratgdo Works Again!!
Comment
Using this driver Ratgdo simply works again!

Bring your Ratgdo to life again while using the simplest of driver configurations I ...
Was this review helpful?
0 0
Write a review
Documentation is available in the Downloads section.

v20260802 - 2026-08-02

Added

  • Added a "Connected" (BOOL) variable to the main driver and every sub-driver with a Driver Status so Programming can react to connect/disconnect
  • Added an "Open Latch" action to the ESPHome Lock driver for locks that support the open command (supports_open)

Fixed

  • Fixed a slow TCP connect interfering with the connection attempt that replaced it, which could run the handshake on the wrong socket and tear down a healthy connection when the stale socket closed
  • Fixed the HVAC state freezing on the previous value during a heat pump's defrost cycle; defrosting now reports as Heating, and unmapped climate modes/actions log a warning instead of being silently dropped
  • Fixed latch-style ESPHome locks (supports_open) reading as "unknown" in Control4 while reporting the open or opening state; both now map to unlocked
  • Fixed overlapping status refreshes silently racing each other for the same response callbacks; refreshes are now serialized
  • Fixed cover contacts and Yale DoorSense sending nothing to a newly bound consumer (or after a DoorSense drop and re-detect) until the state changed; consumers are now seeded with the last known state on bind
  • Fixed the Reset Driver action leaving bound consumers stale until the next state change (sensor values, cover contacts, BTHome bindings, Yale DoorSense)
  • Fixed pending requests (refresh, Bluetooth GATT operations) hanging forever when the connection dropped mid-request; they now fail immediately with a "Disconnected" error
  • Fixed SwitchBot channel relays and contact sensors (motion, contact, leak, tamper) leaving bound consumers stale after a driver restart until the next state change
  • Fixed a pending request hanging forever when a second request for the same response type started before it finished; the older request now fails with a "Superseded by a newer request" error instead of stalling, and the newer request is no longer left without its callbacks (which could make entity discovery or Bluetooth GATT service discovery return an empty result)
  • Fixed a superseded status refresh being reported as "Refresh failed" and dropping the device connection out from under the refresh that replaced it

v20260728 - 2026-07-28

Added

  • Added TEMPERATURE_VALUE and HUMIDITY_VALUE connections for sensors with a temperature or humidity device class, so they can be bound to thermostats and other value consumers; the reported scale honors the sensor's declared unit of measurement

Fixed

  • Fixed cover contacts, Yale DoorSense, BTHome bindings, and the SwitchBot Bot relay leaving bound consumers stale after a driver restart or update until the next state change
  • Fixed all entity states appearing frozen in Control4 (covers stuck on "Unknown", sensor variables never updating) on ESPHome 2026.7+ firmware, which no longer sends the deprecated object_id field. The driver no longer reads object_id, and log messages now identify entities as type 'Name' (key=N).
  • Bumped the ESPHome native API version advertised in HelloRequest from 1.0 to 1.14 so devices no longer log "using outdated API 1.0, update to 1.14+" on every connection

v20260711 - 2026-07-11

Fixed

  • Fixed Bluetooth Coordinator connections to ESPHome proxies (and other dynamically created connections) disappearing after a controller reboot or Director restart. Dynamic bindings are now restored early enough in driver startup for Director to reconnect them.
  • Declare ESPHome light hardware capabilities (dimming, color, color temperature) conservatively in the static baseline and enable them at runtime from the entity's discovered color modes. A full static baseline advertised brightness and color for an on/off-only ESPHome light to capability consumers that read the static declaration instead of the runtime-narrowed set.
  • Fixed BOOL variables (<Entity> State for binary_sensor and switch, plus all BTHome boolean sensors) staying as "False" in the Variables Agent even when the underlying state was changing. Variables now serialize as "0"/"1" matching what Control4 expects.
  • Fixed ESPHome fan Designate Preset command: the handler now reads the correct PRESET param (was SPEED), clamps to the driver's speed count, persists the value across driver restarts, notifies the proxy so Composer and Navigator reflect the designated preset, and applies the preset when the fan is turned on so Turn On Fan runs at the designated speed.

v20260512 - 2026-05-12

Added

  • Added brightness and dimming support to ESPHome lights with smooth ramping, preset management, and hold-to-dim button control
  • Added color and color-temperature support to ESPHome lights for every ESPHome color mode (white, color-temperature, cold/warm white, RGB, RGBW, and combined RGB + white modes)
  • Added Advanced Lighting Scenes support to ESPHome lights so they can participate in lighting scenes alongside other Control4 dimmers

v20260418 - 2026-04-18

Added

  • Added Event entity support: stateless triggers (button presses, gestures, doorbell rings) now create Control4 events for programming and track the last event type in a variable
  • Added Date, Time, and Datetime entity support: configurable date/time values on the device are exposed as writable string variables (YYYY-MM-DD, HH:MM:SS, YYYY-MM-DD HH:MM:SS)
  • Added Climate entity support: ESPHome climate devices are exposed as thermostatV2 sub-drivers with HVAC mode, setpoints, fan mode, presets, and humidity control
  • Added Select entity support: STRING variable with the current option, writable via programming or variable writes
  • Added "Set Select" programming command with dynamic Select and Option dropdowns

v20260325 - 2026-03-25

Fixed

  • Fixed cover contact sensors sending duplicate notifications during open/close operations
  • Fixed Yale DoorSense contact sensor sending duplicate "Closed" notifications on every poll cycle by tracking the last known door status and only reporting on actual state changes

v20260319 - 2026-03-19

Fixed

  • Fixed an issue where entities were no longer being detected reliably on connection

v20260318 - 2026-03-18

Fixed

  • Fixed Bluetooth Coordinator failing to connect to active BLE devices (SwitchBot, Yale locks) through proxies

v20260314 - 2026-03-14

Added

  • Added fan support with on/off, speed control (1-6 speed variants), direction, and oscillation
  • Added ESPHome Yale sub-driver for Yale/August BLE smart locks with lock/unlock control, door sense, and battery monitoring

v20260217 - 2026-02-17

Added

  • Added Bluetooth proxy support with scanner infrastructure, advertisement parsing, and GATT connection management
  • Added ESPHome Bluetooth Coordinator driver for multi-proxy aggregation with RSSI-based routing and connection failover
  • Added room presence tracking with RSSI-based detection, anti-flapping, and contact sensor bindings
  • Added ESPHome BTHome sub-driver for Shelly BLU and BTHome v1/v2 sensors
  • Added ESPHome Govee sub-driver for temperature, humidity, and meat thermometer sensors
  • Added ESPHome SwitchBot sub-driver for Bot, Plug Mini, Meter, Motion, and Contact devices
  • Added device log forwarding to the ESPHome driver

v20251031 - 2025-10-31

Fixed

  • Fixed compatibility with ESPHome 2025.10.0 for devices configured without passwords
  • Improved password authentication failure detection and error reporting

v20251022 - 2025-10-22

Fixed

  • Fixed an issue with parsing unknown fields in protobuf messages

v20251019 - 2025-10-19

Added

  • Added support for OpenSSL with "Encryption Key" authentication mode across all applicable algorithms

Fixed

  • Fixed a bug with the authentication flow in the latest 2025.10.0 firmware

v20250811 - 2025-08-11

Fixed

  • Fixed switch entities not responding to bound relay proxies

v20250715 - 2025-07-14

Fixed

  • Fixed bug causing entities to not be discovered on connect

v20250714 - 2025-07-14

Added

  • Added support for encrypted connections using the device encryption key

v20250619 - 2025-06-19

Added

  • Added ratgdo specific documentation

v20250606 - 2025-06-06

Added

  • Initial Release