Appliances & Kitchen (Devices, IoT & Hardware): open-source projects that exist because someone reverse engineered a closed product, sorted by GitHub stars.
Node.js control of Mi Home devices over the miIO protocol
Home Assistant integration for Haier hOn appliances (Haier, Candy, Hoover)
Home Assistant integration for Haier smart home appliances via the Haier cloud API
Open hardware and software for Miele appliances' optical diagnostic interface
Unofficial firmware for Dyson V6/V7 vacuum battery management systems
Roborock integration for Home Assistant using the Roborock app's API
Reverse engineering Bosch/Siemens (BSH) home appliances: D-Bus protocol, washer and dryer electronics
RoboRock Control Center desktop client
Controls Samsung appliances from Home Assistant over the local network
Python tool to talk to Home Connect appliances over the local network
Home Connect integration for Home Assistant over the local network
Python library to control Haier hOn appliances
Self-hosted reimplementation of the central server used by Ecovacs robots
Maintained successor of hcpy for local Home Connect appliance control
Documentation of the Xiaomi robot vacuum miIO protocol and commands
REST interface to control iRobot Roomba vacuums on the LAN
Homebridge plugin for Dyson Pure Cool fans
Hisense/Gorenje ConnectLife appliances via the unofficial ConnectLife app API
Midea appliances via the MSmartHome/Meiju cloud API used by the vendor apps
Haier, Candy and Hoover appliances via the private API of the hOn mobile app
Command-line tool for Ecovacs robot vacuums
CLI for controlling Philips air purifiers over their local protocol
ESP32 BLE gateway for Redmond Ready4Sky kettles and appliances
Reverse engineered BLE protocol of the Xiaomi smart kettle
Python library for Etekcity and Levoit VeSync smart devices
Home Assistant integration for Eufy RoboVac vacuums
Python library for Dyson Pure Cool Link fans
Home Assistant component for Winix air purifiers
Home Assistant integration for Ecovacs Deebot vacuums using the reverse-engineered protocol
ESPHome component that replaces the Levoit air purifier Wi-Fi module and speaks its MCU protocol
Reverse-engineered Bluetooth protocol for Ember mugs
Unofficial Python package to access Thermomix Cookidoo
Local control of Candy/Haier Wi-Fi appliances through their undocumented local HTTP API
Beko, Grundig and Arçelik HomeWhiz appliances over a reverse-engineered BLE and cloud protocol
Ember mug integration for Home Assistant
Xiaomi Mi electric rice cooker controlled locally over the miIO protocol
Node.js library for Ecovacs Deebot and yeedi vacuums
Panasonic Smart App appliances (ACs, dehumidifiers) via the app's private API
Redmond SkyKettle kettles controlled over their reverse-engineered BLE protocol
Home Assistant LAN integration for Midea ACs, hoods, water heaters, fridges and washers
Home Assistant integration for Blueair purifiers
Unofficial Home Assistant integration for Dyson fans, vacuums and lights
Home Assistant integration for the Xiaomi Smart Air Fryer over miIO
Homebridge plugins for Xiaomi air purifiers over miIO
Midea/Inventor EVA II PRO dehumidifiers over the reverse-engineered Midea protocol
Reads Electrolux appliances via the Wellbeing cloud
Homebridge plugin for Xiaomi Smartmi and Mijia fans
ioBroker adapter controlling Xiaomi vacuum cleaners over miIO
Home Assistant component that helps reverse engineer Xiaomi miIO devices
Unofficial implementation of the Miele@Home protocol for local control
Custom VeSync component for Home Assistant
Controls Midea M-Smart appliances over the local network
Home Assistant plugin for Traeger grills
Jura coffee machines controlled over their reverse-engineered Bluetooth protocol
Homebridge plugin for the Xiaomi Mi Air Purifier
Reverse engineering of the MEATER thermometer BLE protocol
Homebridge plugin for Levoit humidifiers via the VeSync API
Library to interface with La Marzocco espresso machines via cloud and local API
Homebridge plugin for Dreo fans and heaters via the Dreo cloud API
Homebridge plugin for Levoit air purifiers
Deye dehumidifiers via the reverse-engineered Deye cloud and MQTT protocol
ESPHome component for Midea, Inventor and Comfee dehumidifiers over the Midea UART protocol
ioBroker adapter controlling Ecovacs Deebot and yeedi vacuums
Node.js API to control Anova sous-vide circulators over BLE
ESPHome component for Weber iGrill Bluetooth thermometers
Philips air purifier integration for Home Assistant
ESP8266 gateway and reverse engineered service port data for Jura coffee machines
ESPHome external component for GE Appliances using the proprietary GEA serial bus
ESP8266 web remote for Eufy RoboVac 11 vacuums using their IR protocol
Python library for Dyson fans and purifiers over their local MQTT protocol
Home Assistant integration for Dreame lawn mowers via the Dreame cloud protocol
PitBoss smokers and grills over BLE, the vendor relay or the grills' local protocol
Home Assistant integration for Xiaomi Viomi vacuums over miIO
Python module for Acaia scales via Bluetooth LE
Node.js library to control Eufy RoboVac
Notes on reverse engineering the Lelit Bianca espresso machine LCC protocol
ESPHome external component for the Winix C545 air purifier
Fellow Aiden coffee brewers via the Fellow app's cloud API and push channel
Python module to interface with the Anova sous-vide cooker
Python wrapper for the Anova 2 over Bluetooth LE on Linux
Board that interfaces the D-Bus of Bosch/Siemens (BSH) home appliances and exposes them via ESPHome
Home Assistant integration for Electrolux appliances
Homebridge plugin for Xiaomi Mi humidifiers
Reverse engineering project that decouples newer Roombas from the iRobot cloud
ESP controller for the Philips 5400 coffee machine over its display bus
Homebridge plugins for Xiaomi fans
Home Assistant custom component for the Wyze robot vacuum
Reverse-engineered iOS library for the Anova 2 via Bluetooth
ESP32 BLE client for Weber iGrill thermometers
ESPHome interface to GE washers and dryers over the GEA UART bus
Frigidaire appliances via the unofficial Frigidaire 2.0/Electrolux app API
JavaScript library to talk to Bluetooth scales like Acaia
Python library to interact with Ember mugs
MCP server for the Thermomix Cookidoo platform
Self-hosted backend and frontend to manage a Deebot T9 without the Ecovacs cloud
EcoWater water softeners via the unofficial EcoWater cloud API
Bluetooth-to-MQTT bridge for Tenergy Solis and similar BBQ thermometers
Wi-Fi and Google Assistant bridge for the Fellow Stagg EKG+ kettle
Python client for the Midea/Inventor EVA II PRO Wi-Fi dehumidifier
Controls Electrolux/Ballu/Zanussi water heaters and humidifiers via UART
Bridge for Geberit AquaClean toilets over their BLE protocol with MQTT, REST and web UI
Haier, Candy and Hoover appliances via the private hOn mobile app API
Homebridge plugin for Ecovacs Deebot vacuums
Python library for Anova Wi-Fi sous-vide cookers via the cloud
JavaScript control of Dyson PureLink fans and purifiers
Controls Bosch, Siemens and Neff Home Connect appliances from Home Assistant over the local network
Python library to command Ecovacs Deebot 960/950/920 vacuums
Hacking the Breville Barista Touch espresso machine
Homebridge plugin for the Coway Airmega air purifier
Unofficial Windows UWP app for the ChefSteps Joule sous-vide via its private API
Home Assistant integration for the Eufy RoboVac S1 Pro
Home Assistant integration for Dreame and MOVA robotic lawn mowers
Home Assistant integration for devices in the Panasonic Smart App
Home Assistant integration for aroma diffusers (Aroma-Link and others) via Bluetooth or Wi-Fi
De-clouding a Tuya WBR3 pet feeder for local Home Assistant control
Hacking the Weber iGrill mini
Web app for monitoring and controlling Ember Bluetooth mugs
ESPHome component for Dražice OKHE smart water heaters over BLE
Python driver and CLI for the Winix C545 air purifier
BLE-to-HTTP bridge to control De'Longhi ECAM coffee machines
Local Node.js and MQTT server for controlling Blueair purifiers
Reads, merges and writes programs for the Breville Control Freak
ESPHome firmware adding Wi-Fi state reporting to old Miele Novotronic washing machines
Local API access to network-connected La Marzocco espresso machines
Homebridge plugin for BlueAir air purifiers
Homebridge plugin for Winix air purifiers
Domoticz plugin for LG ThinQ appliances
ESPHome component for Levoit Vital 200S and 100S purifiers replacing the Wi-Fi module
Unofficial API for Whirlpool 6th Sense appliances
Fully local Home Assistant control for Haier Haismart (U+/uHome) appliances
Homebridge plugin for GE SmartHQ appliances
Unofficial Tesy water heater integration via cloud and local APIs
Unofficial Evonic electric fire integration over the fires' local interface
ESPHome firmware for the Xiaomi Smart Pet Fountain replacing the stock module
Home Assistant integration controlling Miele appliances via their local LAN API
Monitor and control Ecovacs Deebot robots from openHAB
Home Assistant integration for Panasonic TaiSEIA CZ-T006 local LAN control
Unofficial Aquanta water heater controller integration using its undocumented API
Homebridge plugin for controlling Dyson fans locally
Node.js port of wideq, a reverse-engineered client for the LG SmartThinQ API
Blanco Unit water systems controlled over Bluetooth
ESPHome integration for the Bluetooth Cosori kettle
Home Assistant integration for ECOVACS GOAT G1 lawn mowers
ESPHome component to monitor and control Dometic CFX fridges over BLE
Connects Sub-Zero Group kitchen appliances to Home Assistant over BLE using ESPHome
ioBroker adapter for LG ThinQ appliances via the unofficial ThinQ API
Automates Jura Impressa F coffee machines over their service port with ESPHome
Matterbridge plugin connecting Dyson robot vacuums and air treatment devices to Matter
Controls Midea M-Smart appliances over LAN
Privacy-preserving local API control for Ecovacs MQTT-based vacuums
Go library for communicating with Ecovacs Deebot robot vacuums
Home Assistant integration for the Hydrao smart shower head over BLE
Home Assistant integration for Melitta Barista and Nivona coffee machines over BLE
Home Assistant integration for Segway Navimow robotic mowers with live mapping and zones
Replacement smart Wi-Fi module for Waterdrop RO systems
Reads an Alen (Tuya) air purifier locally and publishes values over MQTT
Unofficial Python API for V-ZUG home appliances
Replaces the wired panel of Lifegear bathroom heaters with an ESP32 speaking their protocol
ioBroker adapter controlling Dyson fans and air purifiers over local MQTT
Gateway-free ESPHome integration for the Thermoworks Smoke BBQ thermometer radio link
Local Home Assistant integration for the Chef iQ CQ60 wireless meat thermometer
ESPHome package for the Xiaomi Smart Air Purifier 4 Compact
Haier Home integration for Home Assistant
Homebridge plugin for Dyson Link fans and purifiers
ESP32 ESPHome project for Pureline Pro cooker hoods over BLE
Bridge between a local MQTT broker and Roborock vacuums through the vendor's private APIs
Unofficial Home Assistant integration for Segway Navimow robotic mowers
Scripts used to reverse-engineer the Eufy RoboVac 11c protocol
Reverse-engineered communication between Dometic CFX fridges and the CFX Mobile app