eWeLink

Best Self-hosted Alternatives to eWeLink

A curated collection of the 7 best self hosted alternatives to eWeLink.

Cloud-based smart home IoT platform and mobile/web app for provisioning, controlling and automating compatible devices (e.g., SONOFF). Provides remote control, scenes, schedules, third‑party integrations (Alexa/Google/IFTTT) and optional local gateway.

Alternatives List

#1
Tasmota

Tasmota

Alternative open source firmware for ESP8266/ESP32 IoT devices, providing local control via MQTT/HTTP/Web UI, OTA updates, and built-in automation rules and timers.

Tasmota screenshot

Tasmota is an alternative open source firmware for ESP8266 and ESP32-based IoT devices (such as many Wi‑Fi plugs, relays, lights, and sensors). It focuses on quick setup, local-first control, and broad integration via common home automation protocols.

Key Features

  • Local control via MQTT, HTTP, web UI, and serial interfaces
  • Over-the-air (OTA) firmware updates and web-based configuration
  • Built-in automation using timers, rules, and scripting (Berry)
  • Wide device support via modules and configurable templates for GPIO mapping
  • Optional integration with home automation ecosystems through MQTT-based discovery and compatible integrations
  • Expandable driver ecosystem for sensors, displays, and device-specific features

Use Cases

  • Replacing stock firmware to gain reliable local control and reduce cloud dependency
  • Integrating low-cost ESP-based switches, plugs, and sensors into a unified home automation setup
  • Building custom ESP8266/ESP32 projects with a ready-made UI, telemetry, and automation engine

Limitations and Considerations

  • Hardware compatibility varies by device; some models require templates or custom builds
  • Incorrect flashing or OTA upgrades can require recovery via serial flashing

Tasmota is well-suited for homelabs and smart homes that want flexible, protocol-friendly control of ESP-based devices with strong automation capabilities. Its broad hardware support and multiple control interfaces make it a common foundation for DIY and integrated IoT deployments.

24.2kstars
5.1kforks
#2
Zigbee2MQTT

Zigbee2MQTT

Self-hosted Zigbee-to-MQTT bridge that lets you control Zigbee devices without vendor gateways and integrate them with home automation platforms via MQTT.

Zigbee2MQTT screenshot

Zigbee2MQTT is a bridge that connects Zigbee devices to an MQTT broker, allowing you to use Zigbee devices without the vendor’s proprietary hub. It translates Zigbee events and commands into MQTT topics so they can be integrated with many home automation systems.

Key Features

  • Works with a wide range of Zigbee adapters and an extensive list of supported devices
  • Publishes device events to MQTT and accepts MQTT commands to control devices
  • Maintains a local state database for paired devices and their capabilities
  • Web-based interfaces for monitoring and configuration (via companion frontends)
  • Device model mapping via converters to support diverse vendor implementations

Use Cases

  • Integrate Zigbee lights, sensors, and switches into an MQTT-based smart home setup
  • Replace vendor Zigbee bridges while keeping local control and interoperability
  • Build automations across platforms that can subscribe to and publish MQTT topics

Limitations and Considerations

  • Requires a compatible Zigbee USB adapter/coordinator and an MQTT broker
  • Device compatibility depends on available converters; uncommon devices may need custom support

Zigbee2MQTT provides a practical way to standardize Zigbee device control through MQTT, enabling broad integration options across smart home ecosystems. It is well-suited for users who want flexibility and independence from vendor-specific gateways.

14.8kstars
1.9kforks
#3
ESPHome

ESPHome

ESPHome generates custom firmware for ESP32/ESP8266 and other boards from YAML, enabling local smart home devices with Home Assistant, API, and MQTT integration.

ESPHome screenshot

ESPHome is an open-source firmware framework that turns supported microcontrollers into configurable smart home devices using simple YAML files. It generates and builds device firmware, then lets you control and monitor devices locally via integrations such as Home Assistant, native API, web interfaces, and MQTT.

Key Features

  • YAML-based configuration for creating custom sensors, switches, displays, and more
  • Broad hardware support via modular components (many sensors, buses, and peripherals)
  • Seamless Home Assistant integration (commonly used via the Home Assistant add-on)
  • Multiple control interfaces including native API, web UI, and MQTT
  • On-device automations for local logic and reduced dependency on a central controller
  • Over-the-air (OTA) firmware updates for remote maintenance
  • Local-first operation designed to work without cloud dependencies

Use Cases

  • Build DIY smart home sensors (temperature, air quality, presence) and actuators (relays, lights)
  • Deploy locally controlled smart devices for homes and small commercial installations
  • Prototype and standardize firmware for hardware products targeting ESPHome ecosystems

Limitations and Considerations

  • Requires flashing compatible hardware and ongoing firmware management practices
  • Hardware feature support varies by chip family and component; some advanced use cases may require custom components

ESPHome is a strong fit for anyone who wants reliable, locally controlled smart home devices without writing embedded C++ from scratch. Its YAML workflow, broad component ecosystem, and OTA updates make it practical for both hobbyist and professional deployments.

10.6kstars
5.1kforks
#4
evcc

evcc

Open-source EV charge controller that optimizes vehicle charging with PV, batteries and dynamic tariffs; supports many chargers, vehicles and smart-home integrations.

evcc screenshot

evcc is an open-source energy management system focused on electric vehicle charging. It controls chargers and smart sockets to maximize PV surplus, use favorable tariffs, and coordinate with home batteries and vehicles.

Key Features

  • Local-first EV charge control that adjusts charging power to PV surplus and dynamic electricity prices.
  • Broad hardware support: many EV chargers, vehicle APIs, inverters, home batteries, smart plugs and energy meters are supported and tested.
  • Protocol and plugin support including OCPP, EEBus, Modbus, SunSpec, MQTT, HTTP/JSON and scriptable extensions for custom devices.
  • Dynamic tariff and price-based scheduling, PV-surplus charging, load management for multi-vehicle and multi-system setups.
  • Responsive web UI with light/dark modes and a public demo instance for exploration.
  • Lightweight Go backend with a TypeScript/Node-based frontend toolchain; designed to run on low-resource devices (Raspberry Pi) or in Docker.
  • Integrations with common smart-home platforms (Home Assistant, openHAB, ioBroker) and vehicle services for SOC, remote charge and preconditioning.

Use Cases

  • Homeowners with PV systems who want to prioritize solar surplus for EV charging and lower grid consumption.
  • Multi-vehicle homes or small installations needing coordinated load management to avoid overloading the connection.
  • Installers, power users and developers evaluating integrations or testing via the public demo and extensive device plugin support.

Limitations and Considerations

  • Initial setup requires intermediate technical knowledge (editing YAML, CLI familiarity) and can be time consuming for complex integrations.
  • The project relies primarily on community channels for support; individual paid support is not directly offered by the core team.
  • Feature availability depends on device APIs and vendor interfaces; some integrations may be partially limited by manufacturer capabilities.

In summary, evcc is a flexible, community-driven EV charge controller and home energy manager designed for local operation and broad device compatibility. It is optimized for PV-first charging scenarios and offers extensible plugins for custom hardware and smart-home integrations.

6.2kstars
1.2kforks
#5
openHAB

openHAB

openHAB is a Java-based, modular open-source smart home platform providing a rules engine, extensible add-ons, multi-protocol device integration and mobile/web UIs.

openHAB is a Java-based, vendor- and technology-agnostic open-source platform for home automation. It provides a modular runtime, a rules-driven automation engine and an ecosystem of add-ons to connect a wide range of devices and services.

Key Features

  • Modular OSGi-based runtime built on Apache Karaf that supports dynamic add-on installation and lifecycle management
  • Large add-on ecosystem (bindings, UIs, persistence, actions) enabling integration with hundreds of device protocols and cloud services
  • Flexible rules engine with time/event triggers, scripts and actions for complex automations
  • Multiple user interfaces and clients, including web UI and native mobile apps for Android and iOS, plus textual sitemap and dashboard options
  • Native protocol support and integrations such as MQTT and REST APIs for device and service connectivity
  • Platform portability: runs on Linux, macOS, Windows, Raspberry Pi and container environments (Docker)
  • Remote access and cloud connector service for optional remote control and notifications

Use Cases

  • Centralize control and automation across heterogeneous smart-home devices (lights, sensors, thermostats, media, etc.)
  • Build scheduled and event-driven automations (energy management, presence-based actions, safety alerts)
  • Expose and integrate local devices with voice assistants or third-party services via bindings and REST endpoints

Limitations and Considerations

  • The underlying OSGi/Karaf architecture and Java-based modular system has a steeper learning curve for users unfamiliar with JVM/OSGi concepts
  • Many integrations are community-maintained; availability, quality and update cadence of individual bindings can vary and may require manual troubleshooting
  • Advanced configurations often involve both UI and text-based files (sitemaps, item configs, scripts), which can be complex for beginners

openHAB is suited for users who need a highly extensible, protocol-agnostic automation platform and are willing to invest time learning its modular runtime and configuration model. It emphasizes flexibility, privacy and long-term community-driven development.

1.1kstars
461forks
#6
TasmoAdmin

TasmoAdmin

Administrative web interface for managing, monitoring, and updating Tasmota-flashed IoT devices, including device discovery, bulk actions, and OTA firmware updates.

TasmoAdmin is a web-based administrative platform for managing devices flashed with Tasmota (commonly ESP8266/ESP32-based smart plugs and sensors). It provides a centralized dashboard to discover devices on your network, view status and sensor data, and perform maintenance tasks like configuration and firmware updates.

Key Features

  • Login-protected web interface
  • AutoScan device discovery for Tasmota devices on the network
  • Bulk operations across multiple devices, including sending commands
  • Multi-device firmware update workflow with selectable targets
  • Automatic firmware download mode for updating to the latest Tasmota builds
  • Device information and sensor/status visibility (including multiple sensors)
  • Mobile-responsive UI with theme options (including night mode)
  • Multiple deployment options (standalone on a PHP web server or via container)

Use Cases

  • Centralized management of multiple Tasmota-based smart plugs, switches, and sensors
  • Bulk OTA firmware updates and routine maintenance for a fleet of devices
  • Quick diagnostics by viewing device details and sending commands from one UI

Limitations and Considerations

  • Designed specifically for Tasmota devices; functionality depends on Tasmota’s exposed endpoints and features
  • The built-in self-update for TasmoAdmin may be disabled in some deployment modes (for example, container installs)

TasmoAdmin is a practical choice for homelabs and smart-home setups that rely on Tasmota, offering a lightweight web UI for discovery, monitoring, and bulk device administration.

959stars
147forks
#7
FHEM

FHEM

FHEM is a Perl-based open-source home automation server with a modular architecture, web frontends, and broad device protocol support.

FHEM screenshot

FHEM is an open-source Perl-based server for home automation. It runs as a background service and provides device control and monitoring via built-in web frontends, smartphone apps, telnet, or TCP/IP. It supports a wide range of hardware protocols through a modular collection of modules.

Key Features

  • Modular architecture with hundreds of modules to support a wide range of devices and services.
  • Multiple frontends and interfaces, including web, mobile frontends, telnet, and TCP/IP, with JSON/XML support.
  • Autocreating devices and logs as new data arrives, reducing manual setup.
  • Flexible logging options (files or databases) with optional filters.
  • Event-driven automation: trigger external programs or scripts on device events.
  • Timed and scheduled commands and time-based actions (e.g., lights based on sunset).
  • Active community, comprehensive documentation, and a development repository.

Use Cases

  • Automate household tasks such as lighting, blinds, heating, and sensor monitoring.
  • Integrate with a broad set of protocols and devices (HomeMatic, KNX, Z-Wave, EnOcean, etc).
  • Run on a self-hosted server (e.g., NAS, Raspberry Pi) with local data storage for privacy.

FHEM is a long-running, Perl-based home automation server with broad device support and a modular, pluggable architecture.

Why choose an open source alternative?

  • Data ownership: Keep your data on your own servers
  • No vendor lock-in: Freedom to switch or modify at any time
  • Cost savings: Reduce or eliminate subscription fees
  • Transparency: Audit the code and know exactly what's running