Fork of the espurna firmware for `mhsw` switches
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Toni Arte 2f12e66b79 Add a separate incremental energy counter into the Domoticz MQTT interface 7 years ago
code Add a separate incremental energy counter into the Domoticz MQTT interface 7 years ago
images/devices Fix mqtt relay image 8 years ago
.gitignore Bump fs version 8 years ago
.gitmodules Declared all libraries as PlatformIO dependencies, updated documentation 8 years ago
CHANGELOG.md Update README 8 years ago
LICENSE Initial commit 8 years ago
README.md Update README 8 years ago

README.md

ESPurna Firmware

ESPurna ("spark" in Catalan) is a custom firmware for ESP8266 based smart switches. It was originally developed with the IteadStudio Sonoff in mind but now it supports a growing number of ESP8266-based boards. It uses the Arduino Core for ESP8266 framework and a number of 3rd party libraries.

Current Release Version is 1.6.0, read the changelog.

Features

  • Support for multiple ESP8266-based boards (check list)
  • Wifi AP Mode or STA mode with multiple network definitions with support for static IP
  • Switch management
    • Support for push buttons and toggle switches
    • Configurable status on boot (always ON, always OFF, same as before or toggle)
    • Support for pulse mode (normally ON or normally OFF) with configurable time
    • Support for relay synchronization (all equal, only one ON, one and only on ON)
  • MQTT enabled
    • Switch on/off and toggle relays
    • Report button event notifications
    • Enable/disable pulse mode
    • Change LED notification mode
    • Remote reset the board
  • Alexa integration using the FauxmoESP Library
  • Domoticz integration via MQTT
  • Home Assistant integration via MQTT
  • Support for different sensors
  • Fast asynchronous HTTP Server
    • Basic authentication
    • Web-based configuration
    • Relay switching and sensor data from the web interface
    • Websockets-based communication between the device and the browser
  • REST API (enable/disable from web interface)
    • GET and PUT relay status
    • GET sensor data (power, current, voltage, temperature and humidity) depending on the available hardware
  • RPC API (enable/disable from web interface)
    • Remote reset the board
  • Over-The-Air (OTA) updates even for 1Mb boards
    • Manually from PlatformIO or Arduino IDE
    • Automatic updates through the NoFUSS Library
  • Command line configuration

Documentation

For more information please refer to the ESPurna Wiki.

Supported hardware

IteadStudio S20 IteadStudio Slampher IteadStudio Sonoff 4CH
IteadStudio S20 IteadStudio Slampher IteadStudio Sonoff 4CH
IteadStudio Sonoff Basic IteadStudio Motor Switch IteadStudio 1CH Inching
IteadStudio Sonoff Basic IteadStudio Motor Switch IteadStudio 1CH Inching
IteadStudio Sonoff Dual IteadStudio Sonoff POW IteadStudio Sonoff TH10/TH16
IteadStudio Sonoff Dual IteadStudio Sonoff POW IteadStudio Sonoff TH10/TH16
IteadStudio Sonoff RF IteadStudio Sonoff SV IteadStudio Sonoff Touch
IteadStudio Sonoff RF IteadStudio Sonoff SV IteadStudio Sonoff Touch
Wemos D1 Mini Relay Shield Electrodragon Relay Board WorkChoice EcoPlug
Wemos D1 Mini Relay Shield Electrodragon Relay Board WorkChoice EcoPlug
JanGoe Wifi Relay (NO/NC) OpenEnergyMonitor WiFi MQTT Relay / Thermostat
JanGoe Wifi Relay (NO/NC) OpenEnergyMonitor WiFi MQTT Relay / Thermostat

License

Copyright (C) 2016-2017 by Xose Pérez (@xoseperez)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.