Skip to content

zyonse/homebridge-dreo

Repository files navigation

Homebridge Dreo Plugin

verified-by-homebridge NPM Version npm

Homebridge plugin for Dreo brand smart devices. Dreo Fans on Amazon (Affiliate link)

Compatability

Confirmed Working

Fans

  • DR-HAF001S
  • DR-HAF003S
  • DR-HAF004S
  • DR-HCF003S
  • DR-HPF001S
  • DR-HPF002S
  • DR-HTF001S
  • DR-HTF002S
  • DR-HTF004S
  • DR-HTF005S
  • DR-HTF007S

Heaters

  • DR-HSH004S
  • DR-HSH006S
  • DR-HSH009S
  • ‎DR-HSH017S

Please open an issue if you have another model that works or doesn't work. If you have another device type and can help me test some code out I would definitely be open to adding support.

Supported Features

Fans

  • Fan Speed: Fan speed is displayed as a percentage value with steps that are equivalent to those of the Dreo app. (for example, a fan with speeds 1-6 will have steps at 17%, 33%, 50% etc)

  • Oscillate: Toggles fan oscillation

  • Temperature Sensor: Displays current temperature sensor reading. (for supported devices, check your devices capabilities) Because the Dreo fan temperature sensors are not entirely accurate, you can also set a specific temperature offset for your devices.

  • Child Lock: Lock physical fan controls

Heaters

Heaters are displayed as a thermostat accessory with the following control mappings

  • Heat Mode: Controls Dreo 'Eco' mode
  • Cool Mode: Controls Dreo 'Fan Only' mode
  • Auto Mode: Controls Dreo 'Heat' speeds, represented as an offset from the minimum temperature (for example, a heater with speeds 1-3 and a minimum temp of 41F can be controlled by setting temperature to 41, 42, 43)
  • Current Temperature: Displays current temperature sensor reading
  • Fan Speed: Controls heater vent angle
  • Oscillate: Toggles heater vent oscillation
  • Child Lock: Lock physical heater controls
  • Hardware Display: Changes temperature unit on physical hardware display

Installation

npm install -g homebridge-dreo

(Or install through the Homebridge UI)

Configuration

Provide your Dreo app login credentials

"platforms": [
  {
    "options": {
      "email": "[email protected]",
      "password": "00000000"
    },
    "hideTemperatureSensor": false,
    "temperatureOffset": 0,
    "name": "Dreo Platform",
    "platform": "DreoPlatform"
  }
]

Contributing

If you'd like to add support for a new device type, you might find this writeup from @JeffSteinbok (HomeAssistant plugin maintainer) useful for tracing the Dreo App:

https://github.com/JeffSteinbok/hass-dreo/blob/main/contributing.md

Special thanks

homebridge-tp-link-tapo: Similar repo that helped me figure out some of the http request functions necessary for this project.