Home

Awesome

ESPurna Firmware

ESPurna ("spark" in Catalan) is a custom firmware for ESP8285/ESP8266 based smart switches, lights and sensors. It uses the Arduino Core for ESP8266 framework and a number of 3rd party libraries.

version branch license travis codacy <br /> latest master build latest dev build downloads <br /> donate gitter twitter


Collaborators

Since November 2018, Max Prokhorov (@mcspr) is also actively working as a collaborator of the project.

Contributors

Without your help this project would not be possible. I (@xoseperez) simply can't spend all the time I wish on ESPurna but luckly I recieve a lot of contributions, bug fixes, enhancement suggestions,... from people all around the world. I would like to thank each and every one of you. The contributors page shows the ones that have done a PR in the past, but I also get contributions in the issues, by email or via the gitter ESPurna channel, those I also want to thank.

Thank you all very much.

Notice

Ladies and gentlemen in the embedded world, use PlatformIO. If I could offer you only one tip for the future, PlatformIO would be it.

Please use the gitter ESPurna channel for support and questions, you have better chances to get fast answers from me or other ESPurna users. Open an issue here only if you feel there is a bug or you want to request an enhancement. Thank you.

Process of building ESPurna from source is documented in the Wiki:
Using PlatformIO IDE for VSCode
Using PlatformIO CLI
Using Arduino IDE

If you want to try out latest changes from dev branch without building the firmware yourself or if you are having problems with the stable release, please visit espurna-nightly-builder releases page.

Features

Notices


2018-04-08<br /> Please use gitter for support and questions, you have better chances to get fast answers by me or other ESPurna users. Open an issue here only if you feel there is a bug or you want to request an enhancement. Thank you.


2018-03-09<br /> Default branch in GitHub is now the development branch "dev".<br> The stable branch (the one used to create the binary releases) is "master".


2018-01-24<br /> This repository has been migrated from Bitbucket to GitHub. There were a number of reason to migrate the repository to GitHub. I like Bitbucket and I'm still using it for a lot of projects, but ESPurna has grown and its community as well. Some users have complain about Bitbucket not being enough community-focused. This change is mainly aimed to use a platform with greater acceptance on the open-source community and tools better suited to them (to you), like the possibility to contribute to the documentation in an easy way.

What happened with all the info in Bitbucket? Well, most of it has been ported to GitHub, albeit with some quirks:

I apologize for any inconvenience this migration may have caused. I have decided to do it the hard way.


2018-01-11<br /> As of current version (1.12.0) ESPurna is tested using Arduino Core 2.3.0 and it's meant to be built against that version.


2017-08-26<br /> Since version 1.9.0 the default MQTT topics for commands have changed. They all now end with "/set". This means you will have to change your controller software (Node-RED or alike) to send messages to -for instance- "/home/living/light/relay/0/set". The device will publish its state in "/home/living/light/relay/0" like before.


2017-07-24<br /> Default flash layout changed in 1.8.3, as an unpredicted consequence devices will not be able to persist/retrieve configuration if flashed with 1.8.3 via OTA from PlatformIO. Please check issue #187.


Contribute

There are several ways to contribute to ESPurna development. You can contribute to the repository by doing:

And of course you can always buy me a beer, coffee, tea,... via the donation button below.

Donate

Documentation

For more information please refer to the ESPurna Wiki.

Supported hardware

Here is the list of supported hardware. For more information please refer to the ESPurna Wiki Hardware page.

Power monitoring devices

BlitzWolf BW-SHP6BlitzWolf BW-SHP2BlitzWolf BW-SHP5
Blitzwolf BW-SHP6Blitzwolf BW-SHP2<br />(also by Coosa, Gosund, HomeCube, Teckin)Blitzwolf BW-SHP5
Power meters based on V9261FItead Sonoff POWItead Sonoff POW
Power meters based on V9261FItead Sonoff POWItead Sonoff POW R2
Itead Sonoff S31Smartlife Mini Smart SocketTeckin SP20
Itead Sonoff S31Smartlife (NETVIP) Mini Smart SocketTeckin SP20
Digoo NX SP202Vanzavanzu Smart WiFi Plug MiniHykker Smart Home Power Plug
Digoo NX SP202Vanzavanzu Smart WiFi Plug MiniHykker Smart Home Power Plug

Embedded switches

Itead Sonoff BasicItead Sonoff Dual/Dual R2Itead Sonoff TH10/TH16
Itead Sonoff BasicItead Sonoff Dual/Dual R2Itead Sonoff TH10/TH16
Electrodragon WiFi IOTOpenEnergyMonitor WiFi MQTT Relay / Thermostat
Electrodragon WiFi IOTOpenEnergyMonitor WiFi MQTT Relay / Thermostat
Itead Sonoff 4CHItead Sonoff 4CH Pro
Itead Sonoff 4CHItead Sonoff 4CH Pro
Allterco Shelly 1 / 1PMAllterco Shelly 2 / 2.5Jan Goedeke Wifi Relay (NO/NC)
Alterco Shelly 1 / 1PMAlterco Shelly 2 / 2.5Jan Goedeke Wifi Relay (NO/NC)
EXS Wifi Relay v3.1EXS Wifi Relay v5.0Jorge García Wifi + Relays Board Kit
EXS Wifi Relay v3.1EXS Wifi Relay v5.0Jorge García Wifi + Relays Board Kit
Allnet ESP8266-UP-RelayBruno Horta's OnOfreLuani HVIO
Allnet ESP8266-UP-RelayBruno Horta's OnOfreLuani HVIO

Wall Sockets

Itead S20Itead S26Neo Coolcam NAS WR01W
Itead S20Itead S26Neo Coolcam NAS WR01W
Maxcio W-US002SHEYGO HY02YiDian XS-SSA05
Maxcio W-US002SHEYGO HY02YiDian XS-SSA05
WiOn 50055LINGAN SWA1HomeCube 16A
WiOn 50055LINGAN SWA1HomeCube 16A
WorkChoice EcoPlugBestek MRJ1011Tonbux XS-SSA01
WorkChoice EcoPlugBestek MRJ1011Tonbux XS-SSA01
Schuko Wifi PlugSchuko Wifi Plug V2KMC 70011
Schuko Wifi PlugSchuko Wifi Plug V2KMC 70011
Xenon SM-PW702UOrvibo B25Oukitel P1
Xenon SM-PW702UOrvibo B25Oukitel P1
Tonbux XS-SSA06Litesun LA-WF3Maxcio W DE-004
Tonbux XS-SSA06Litesun LA-WF3Maxcio W DE-004
Hama WiFi SteckdoseGBLife RGBW Socket
Hama WiFi SteckdoseGBLife RGBW Socket

Wall switches

Itead Sonoff TouchItead Sonoff T1YJZK switch
Itead Sonoff TouchItead Sonoff T1YJZK 1/2/3-gangs switch
Gosund WS1 / KS-602S
Gosund WS1 / KS-602S

Power strips

Tonbux PowerStrip02ForNorm ZLD-34EUZhilde ZLD-EU55-W
Tonbux PowerStrip02Fornorm Power StripZhilde ZLD-EU55-W

Smart lights

Itead SlampherArilux E27Itead Sonoff B1
Itead SlampherArilux E27Itead Sonoff B1
AI-Thinker Wifi Light / Noduino OpenLightAuthometion LYT8266AG-L4
AI-Thinker Wifi Light / Noduino OpenLightAuthometion LYT8266AG-L4
Lohas 9WXiaomi Smart Desk LampiWoole LED Table Lamp
Lohas 9WXiaomi Smart Desk LampiWoole LED Table Lamp
Itead Sonoff LEDItead BN-SZ01Lombox LUX Nova 2
Itead Sonoff LEDItead BN-SZ01Lombex LUX Nova 2 (white and color)
Arilux AL-LC01 (RGB)Arilux AL-LC02 (RGBW)Arilux AL-LC06 (RGBWWCW)
Arilux AL-LC01 (RGB)Arilux AL-LC02 (RGBW)Arilux AL-LC06 (RGBWWCW)
Arilux AL-LC11 (RGBWWW) & RFMagicHome LED Controller (1.0 and 2.x)Huacanxing H801/802
Arilux AL-LC11 (RGBWWW) & RFMagicHome LED Controller (1.0/2.x, also ZJ WFMN A/B11)Huacanxing H801/802
Muvit I/O MIOBULB001
Muvit I/O MIOBULB001

Radio links / gateways

Tinkerman RFM69GWItead Sonoff RF BridgeItead Sonoff RF
Tinkerman RFM69GWItead Sonoff RF BridgeItead Sonoff RF

Other devices

Tonbux Mosquito KillerItead Sonoff IFAN02
Tonbux Mosquito KillerItead Sonoff IFAN02

Custom & Development boards

Tinkerman Espurna HNodeMCU
Tinkerman ESPurna HNodeMCU Lolin V3
Itead Sonoff SVItead 1CH InchingItead Motor Clockwise/Anticlockwise
Itead Sonoff SVItead 1CH InchingItead Motor Clockwise/Anticlockwise
ManCaveMade ESP-LiveWemos D1 Mini Relay ShieldGizwits Witty Cloud
ManCaveMade ESP-LiveWemos D1 Mini Relay ShieldGizwits Witty Cloud
IKE ESPikePilotak ESP DINArniex Swifitch
IKE ESPikePilotak ESP DINArniex Swifitch
Heltec Touch RelayGeneric Relay v4.0Generic RGBLed v1.0
Heltec Touch RelayGeneric Relay v4.0Generic RGBLed v1.0
Generic DHT11 v1.0Generic DS18B20 v1.0InterMitTech QuinLED 2.6
Generic DHT11 v1.0Generic DS18B20 v1.0InterMitTech QuinLED 2.6
Phyx ESP12 RGBWRH Electronics Geiger CounterGreen ESP Relay
Phyx ESP12 RGBWRH Electronics Geiger CounterGreen ESP Relay
Foxel Lightfox Dual
Foxel Lightfox Dual

Other supported boards (beta): KMC 4 Outlet, Gosund WS1, MakerFocus Intelligent Module LM33 for Lamps

License

Copyright (C) 2016-2019 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/.