@ -6,56 +6,56 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
## [1.12.1] 2018-01-14
## [1.12.1] 2018-01-14
### Added
### Added
- Option to perform a WiFi network scan from web UI
- Option to perform a WiFi network scan from web UI
- Added hostname to web UI side menu (#404)
- Added hostname to web UI side menu ([#404](https://github.com/xoseperez/espurna/issues/404))
- Option to flash multiple devices with ESPurna OTA Manager
- Option to flash multiple devices with ESPurna OTA Manager
### Fixed
### Fixed
- Fix web UI layout so signature does not overlay buttons (#396)
- Option to disable network scan and allow connecting to hidden SSID (#392, #399)
- Fix crash caused by a delay in UDP debugging code (#397)
- Fix memory leak in influxDB module (#410)
- Fix typos in web UI (#394, #421)
- Fix web UI layout so signature does not overlay buttons ([#396](https://github.com/xoseperez/espurna/issues/396))
- Option to disable network scan and allow connecting to hidden SSID ([#392](https://github.com/xoseperez/espurna/issues/392), [#399](https://github.com/xoseperez/espurna/issues/399))
- Fix crash caused by a delay in UDP debugging code ([#397](https://github.com/xoseperez/espurna/issues/397))
- Fix memory leak in influxDB module ([#410](https://github.com/xoseperez/espurna/issues/410))
- Fix typos in web UI ([#394](https://github.com/xoseperez/espurna/issues/394), [#421](https://github.com/xoseperez/espurna/issues/421))
### Changed
### Changed
- Updated to fauxmoESP 2.4.2
- Updated to fauxmoESP 2.4.2
- Changed default I2C GPIO for Wemos D1 (#420)
- Changed default I2C GPIO for Wemos D1 ([#420](https://github.com/xoseperez/espurna/issues/420))
- Some terminal commands have changed. See docs or type "help".
- Some terminal commands have changed. See docs or type "help".
## [1.12.0] 2018-01-11
## [1.12.0] 2018-01-11
### Added
### Added
- Scheduler (contributed by Stefano Cotterli, thank you!, #131)
- Scheduler (contributed by Stefano Cotterli, thank you!, [#131](https://github.com/xoseperez/espurna/issues/131))
- Added "wifi.scan" command to terminal
- Added "wifi.scan" command to terminal
- Added ESPurna Switch board support
- Added ESPurna Switch board support
- Added support for python3 in memanalyzer and ota scripts (thanks to Ryan Jarvis)
- Added support for python3 in memanalyzer and ota scripts (thanks to Ryan Jarvis)
- Added BSSID, RSSI, channels and distance to web UI status tab
- Added BSSID, RSSI, channels and distance to web UI status tab
- Added mDNS name resolving to MQTT, InfluxDB and NoFUSS modules (#129, disabled by default)
- Added mDNS name resolving to MQTT, InfluxDB and NoFUSS modules ([#129](https://github.com/xoseperez/espurna/issues/129), disabled by default)
### Fixed
### Fixed
- Update FauxmoESP library to 2.4.1, solves dependency issue (#388)
- Fixed hardware definition in Sonoff Basic and Dual R2 causing wrong relay state on boot (#365)
- Update FauxmoESP library to 2.4.1, solves dependency issue ([#388](https://github.com/xoseperez/espurna/issues/388))
- Fixed hardware definition in Sonoff Basic and Dual R2 causing wrong relay state on boot ([#365](https://github.com/xoseperez/espurna/issues/365))
### Changed
### Changed
- Removed auto-recursion check in Domoticz module (#379)
- Removed auto-recursion check in Domoticz module ([#379](https://github.com/xoseperez/espurna/issues/379))
- Rename terminal commands: reset.wifi to wifi.reset, reset.mqtt to mqtt.reset.
- Rename terminal commands: reset.wifi to wifi.reset, reset.mqtt to mqtt.reset.
- Update JustWifi library to 1.1.6 (support for multiple SSIDs with the same name)
- Update JustWifi library to 1.1.6 (support for multiple SSIDs with the same name)
- Changed the way Home Assistant module handles disabling auto-discovery (#383)
- Changed the way Home Assistant module handles disabling auto-discovery ([#383](https://github.com/xoseperez/espurna/issues/383))
## [1.11.4] 2018-01-09
## [1.11.4] 2018-01-09
### Fixed
### Fixed
- Fix bug in RF Bridge when RF code contains the stop byte. Check overflow (#357)
- Fix bug in RF Bridge when RF code contains the stop byte. Check overflow ([#357](https://github.com/xoseperez/espurna/issues/357))
- Fixed typos in code and wiki (Thanks to Ryan Jarvis)
- Fixed typos in code and wiki (Thanks to Ryan Jarvis)
- Fix bug in magnitude topic and units (#355)
- Fix bug in magnitude topic and units ([#355](https://github.com/xoseperez/espurna/issues/355))
### Added
### Added
- Small core build to allow two-step flashing method for big binaries
- Small core build to allow two-step flashing method for big binaries
- Thingspeak support (#371, disabled by default)
- Color synchronization between lights using MQTT (#362)
- Support for Arilux AL-LC02 (#347)
- Thingspeak support ([#371](https://github.com/xoseperez/espurna/issues/371), disabled by default)
- Color synchronization between lights using MQTT ([#362](https://github.com/xoseperez/espurna/issues/362))
- Support for Arilux AL-LC02 ([#347](https://github.com/xoseperez/espurna/issues/347))
- Support for Tarpuna Shield for Wemos D1
- Support for Tarpuna Shield for Wemos D1
- Build option to disable password checking (#373)
- Option to report sensor address via MQTT (#377, I2C address, GPIO, Dallas address,...)
- Build option to disable password checking ([#373](https://github.com/xoseperez/espurna/issues/373))
- Option to report sensor address via MQTT ([#377](https://github.com/xoseperez/espurna/issues/377), I2C address, GPIO, Dallas address,...)
- Added binary size to memanalyzer script
- Added binary size to memanalyzer script
- Option to specify custom client ID for MQTT connection (#368)
- Option to specify custom client ID for MQTT connection ([#368](https://github.com/xoseperez/espurna/issues/368))
- Cross-platform ESPurna OTA Manager implemented in python (untested)
- Cross-platform ESPurna OTA Manager implemented in python (untested)
- Terminal command to get or set digital GPIO
- Terminal command to get or set digital GPIO
@ -63,27 +63,27 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Using 2.3.0 for prebuilt binaries
- Using 2.3.0 for prebuilt binaries
- Fix delay in DHT sensor
- Fix delay in DHT sensor
- Allow MQTT keep alive value of up to 3600s
- Allow MQTT keep alive value of up to 3600s
- Changed Sonoff 4CH Pro definitions to support built-in interlock mode (#333)
- Changed Sonoff 4CH Pro definitions to support built-in interlock mode ([#333](https://github.com/xoseperez/espurna/issues/333))
- Issues with Sonoff B1 due to bad driver management (using my92xx library now)
- Issues with Sonoff B1 due to bad driver management (using my92xx library now)
- Avoid recursive messages on Domoticz (#272)
- Avoid recursive messages on Domoticz ([#272](https://github.com/xoseperez/espurna/issues/272))
- Fixed Sonoff T1 configuration
- Fixed Sonoff T1 configuration
- Simplify and fix web auth (#284)
- Simplify and fix web auth ([#284](https://github.com/xoseperez/espurna/issues/284))
- Fix Embedis custom parser
- Fix Embedis custom parser
### Added
### Added
@ -171,16 +171,16 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Option to disable system check on build time
- Option to disable system check on build time
- Power saving features (loopDelay and wifi sleep)
- Power saving features (loopDelay and wifi sleep)
- Added Sonoff TH build environment
- Added Sonoff TH build environment
- Send Home Assistant auto discover messages on connect (#279)
- Implemented Home Assistant availability topic (#280)
- Send Home Assistant auto discover messages on connect ([#279](https://github.com/xoseperez/espurna/issues/279))
- Implemented Home Assistant availability topic ([#280](https://github.com/xoseperez/espurna/issues/280))
- Update time, uptime and heap on webUI every heartbeat
- Update time, uptime and heap on webUI every heartbeat
- Support for LLMNR and NetBIOS (#282)
- Support for LLMNR and NetBIOS ([#282](https://github.com/xoseperez/espurna/issues/282))
- Added I2C clean bus code
- Added I2C clean bus code
- Added realm to auth challenge
- Added realm to auth challenge
### Changed
### Changed
- Changed default hostname to "ESPURNA_XXXXXX"
- Changed default hostname to "ESPURNA_XXXXXX"
- Binaries built against stable core (~40Kb less, #274)
- Binaries built against stable core (~40Kb less, [#274](https://github.com/xoseperez/espurna/issues/274))
- Enabled TERMINAL_SUPPORT for Sonoff Dual (only available via TELNET)
- Enabled TERMINAL_SUPPORT for Sonoff Dual (only available via TELNET)
- Dinamically resize debug strings (now messages are not cropped)
- Dinamically resize debug strings (now messages are not cropped)
- MQTT: unsubscribe to '#' before subscribing
- MQTT: unsubscribe to '#' before subscribing
@ -194,7 +194,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Fixed bug in MY9291-based light bulbs at full brightness
- Fixed bug in MY9291-based light bulbs at full brightness
### Added
### Added
- RFBridge: toggle when RF codes for ON and OFF are the same (#270)
- RFBridge: toggle when RF codes for ON and OFF are the same ([#270](https://github.com/xoseperez/espurna/issues/270))
- Support for HSV color schema (MQTT, API and webUI via a selector)
- Support for HSV color schema (MQTT, API and webUI via a selector)
### Changed
### Changed
@ -202,9 +202,9 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
## [1.9.8] 2017-11-08
## [1.9.8] 2017-11-08
### Fixed
### Fixed
- Removed dimmer lights flicker when saving to EEPROM (#191)
- Fixed low brightness in dimmer lights (#157)
- Fixed blank fields in energy (#258, #259)
- Removed dimmer lights flicker when saving to EEPROM ([#191](https://github.com/xoseperez/espurna/issues/191))
- Fixed low brightness in dimmer lights ([#157](https://github.com/xoseperez/espurna/issues/157))
- Fixed blank fields in energy ([#258](https://github.com/xoseperez/espurna/issues/258), [#259](https://github.com/xoseperez/espurna/issues/259))
- Fixed support for Arilux AL-LC06
- Fixed support for Arilux AL-LC06
- Updated fauxmoESP library with support for GetBinaryState actions
- Updated fauxmoESP library with support for GetBinaryState actions
@ -223,42 +223,42 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
## [1.9.7] 2017-10-25
## [1.9.7] 2017-10-25
### Fixed
### Fixed
- Fix Alexa interface switching on all lights (#256)
- Fix Alexa interface switching on all lights ([#256](https://github.com/xoseperez/espurna/issues/256))
## [1.9.6] 2017-10-23
## [1.9.6] 2017-10-23
### Fixed
### Fixed
- Fix power report in Domoticz (#236)
- Fix Sonoff POW in AP mode (#241)
- Fix Home Automation auto-discovery (support for single relay switches and RGB lights, #235)
- Fix power report in Domoticz ([#236](https://github.com/xoseperez/espurna/issues/236))
- Fix Sonoff POW in AP mode ([#241](https://github.com/xoseperez/espurna/issues/241))
- Fix Home Automation auto-discovery (support for single relay switches and RGB lights, [#235](https://github.com/xoseperez/espurna/issues/235))
- Check WS authentication only on start event
- Check WS authentication only on start event
### Added
### Added
- Support for 2.4.0 RC2 Arduino Core that fixes KRACK vulnerablity (pre-built images are compiled against this, #242)
- Support for 2.4.0 RC2 Arduino Core that fixes KRACK vulnerablity (pre-built images are compiled against this, [#242](https://github.com/xoseperez/espurna/issues/242))
- Support for ManCaveMade ESPLive board (thanks to Michael A. Cox)
- Support for ManCaveMade ESPLive board (thanks to Michael A. Cox)
- Support for InterMIT Tech QuinLED 2.6 (thanks to Colin Shorts)
- Support for InterMIT Tech QuinLED 2.6 (thanks to Colin Shorts)
- Support for Magic Home LED Controller 2.0 (thanks to users @gimi87 and @soif, #231)
- Support for Magic Home LED Controller 2.0 (thanks to users @gimi87 and @soif, [#231](https://github.com/xoseperez/espurna/issues/231))
- Support for Arilux AL-LC06 (thanks to Martijn Kruissen)
- Support for Arilux AL-LC06 (thanks to Martijn Kruissen)
- Support for Xenon SM-PW702U Wifi boards (thanks to Joshua Harden, #212)
- Support for Authometion LYT8266 (testing, thanks to Joe Blellik, #213)
- Support for an external button for D1 Mini boards (thanks to user @PieBru, #239)
- Support for Xenon SM-PW702U Wifi boards (thanks to Joshua Harden, [#212](https://github.com/xoseperez/espurna/issues/212))
- Support for Authometion LYT8266 (testing, thanks to Joe Blellik, [#213](https://github.com/xoseperez/espurna/issues/213))
- Support for an external button for D1 Mini boards (thanks to user @PieBru, [#239](https://github.com/xoseperez/espurna/issues/239))
- Option to query relay status via MQTT or WS (thanks to Wesley Tuzza)
- Option to query relay status via MQTT or WS (thanks to Wesley Tuzza)
- Automatically install dependencies for web interface builder (thanks to Hermann Kraus)
- Automatically install dependencies for web interface builder (thanks to Hermann Kraus)
- Support for HSV and IR for Magic Home LED Controller (optional, disabled by default, thanks to Wesley Tuzza)
- Support for HSV and IR for Magic Home LED Controller (optional, disabled by default, thanks to Wesley Tuzza)
- Added option to report DS18B20 temperatures based on changes (thanks to Michael A. Cox)
- Added option to report DS18B20 temperatures based on changes (thanks to Michael A. Cox)
- Safer buffer handling for websocket data (thanks to Hermann Kraus & Björn Bergman)
- Safer buffer handling for websocket data (thanks to Hermann Kraus & Björn Bergman)
- Updates HL8012 library with energy counting support (thanks to Hermann Kraus)
- Updates HL8012 library with energy counting support (thanks to Hermann Kraus)
- Added option to disable light color persistence to avoid flickering (#191)
- Option to enable TELNET in STA mode from web UI (#203)
- Added option to disable light color persistence to avoid flickering ([#191](https://github.com/xoseperez/espurna/issues/191))
- Option to enable TELNET in STA mode from web UI ([#203](https://github.com/xoseperez/espurna/issues/203))
### Changed
### Changed
- Changed default MQTT base topic to "{identifier}" (no leading slashes, #208)
- Prevent reconnecting when in AP mode if a web session or a telnet session is active (#244)
- Web UI checks for pending changes before reset/reconnect options (#226)
- Changed default MQTT base topic to "{identifier}" (no leading slashes, [#208](https://github.com/xoseperez/espurna/issues/208))
- Prevent reconnecting when in AP mode if a web session or a telnet session is active ([#244](https://github.com/xoseperez/espurna/issues/244))
- Web UI checks for pending changes before reset/reconnect options ([#226](https://github.com/xoseperez/espurna/issues/226))
- Increase WIFI connect timeout and reconnect interval
- Increase WIFI connect timeout and reconnect interval
## [1.9.5] 2017-09-28
## [1.9.5] 2017-09-28
### Fixed
### Fixed
- Revert to JustWifi 1.1.4 (#228)
- Revert to JustWifi 1.1.4 ([#228](https://github.com/xoseperez/espurna/issues/228))
## [1.9.4] 2017-09-22
## [1.9.4] 2017-09-22
### Added
### Added
@ -269,14 +269,14 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Support for powermeters based on ECH1560 IC (beta, untested)
- Support for powermeters based on ECH1560 IC (beta, untested)
### Changed
### Changed
- Changed behaviour on MQTT connection failure (#215)
- Changed behaviour on MQTT connection failure ([#215](https://github.com/xoseperez/espurna/issues/215))
- Removed boot delay
- Removed boot delay
- Refactor power modules
- Refactor power modules
- Updated JustWifi library
- Updated JustWifi library
### Fixed
### Fixed
- Set all esp8285 devices to use esp01_1m (#210, #225)
- Removed wifi gain option since it prevents some devices to connect (#204)
- Set all esp8285 devices to use esp01_1m ([#210](https://github.com/xoseperez/espurna/issues/210), [#225](https://github.com/xoseperez/espurna/issues/225))
- Removed wifi gain option since it prevents some devices to connect ([#204](https://github.com/xoseperez/espurna/issues/204))
## [1.9.3] 2017-09-04
## [1.9.3] 2017-09-04
### Added
### Added
@ -289,13 +289,13 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Fix WiFiSecureClient connection with PubSubClient (#64)
- Fix WiFiSecureClient connection with PubSubClient ([#64](https://github.com/xoseperez/espurna/issues/64))
## [1.9.2] 2017-08-31
## [1.9.2] 2017-08-31
### Added
### Added
- System stability check (turns off everything except WIFI AP, OTA and telnet if there is a boot crash loop) (#196)
- System stability check (turns off everything except WIFI AP, OTA and telnet if there is a boot crash loop) ([#196](https://github.com/xoseperez/espurna/issues/196))
- Telnet support (enabled by default only on AP interface)
- Telnet support (enabled by default only on AP interface)
- Option to set WiFi gain from web UI
- Option to set WiFi gain from web UI
- Option to disable MQTT from web UI
- Option to disable MQTT from web UI
@ -310,7 +310,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Changes in terminal commands ("reconnect" is now "reset.wifi", also new commands added)
- Changes in terminal commands ("reconnect" is now "reset.wifi", also new commands added)
### Fixed
### Fixed
- Crash in settings saving (#190) and fixed UDP debug conditional build clauses
- Crash in settings saving ([#190](https://github.com/xoseperez/espurna/issues/190)) and fixed UDP debug conditional build clauses
## [1.9.1] 2017-08-27
## [1.9.1] 2017-08-27
### Added
### Added
@ -324,44 +324,44 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
### Fixed
### Fixed
- Fixed build flags for DHT and DS18B20 in platformio.ini file
- Fixed build flags for DHT and DS18B20 in platformio.ini file
- Fixed Itead Sonoff B1 by updating the my9291 library
- Fixed Itead Sonoff B1 by updating the my9291 library
- Fixed light status on boot (#157)
- Fixed light status on boot ([#157](https://github.com/xoseperez/espurna/issues/157))
- Fixed CSS bug cause by a bad merge
- Fixed CSS bug cause by a bad merge
## [1.9.0] 2017-08-25
## [1.9.0] 2017-08-25
### Added
### Added
- Support for IteadStudio BN-SZ01 Ceiling Light (#132)
- Support for IteadStudio Sonoff RF Bridge (#173)
- Support for IteadStudio Sonoff 4CH Pro (#174)
- Support for IteadStudio BN-SZ01 Ceiling Light ([#132](https://github.com/xoseperez/espurna/issues/132))
- Support for IteadStudio Sonoff RF Bridge ([#173](https://github.com/xoseperez/espurna/issues/173))
- Support for IteadStudio Sonoff 4CH Pro ([#174](https://github.com/xoseperez/espurna/issues/174))
- Support for IteadStudio Sonoff B1
- Support for IteadStudio Sonoff B1
- Support for IteadStudio Sonoff LED
- Support for IteadStudio Sonoff LED
- Support for IteadStudio Sonoff T1 wall switches (1, 2 and 4 channels)
- Support for IteadStudio Sonoff T1 wall switches (1, 2 and 4 channels)
- Support for WiOn 50055 WiFi Wall Outlet & Tap
- Support for WiOn 50055 WiFi Wall Outlet & Tap
- Support for EXS WiFi Relay v3.1 (and other future latching relay boards) (#152)
- TLS/SSL support for MQTT (caution: eats a lot of memory, do not use with web interface) (#64)
- Add support for delayed ON/OFF switches (#123, #161, #188)
- Added ON and OFF actions for button events (previously only TOGGLE available) (#182)
- Support for EXS WiFi Relay v3.1 (and other future latching relay boards) ([#152](https://github.com/xoseperez/espurna/issues/152))
- TLS/SSL support for MQTT (caution: eats a lot of memory, do not use with web interface) ([#64](https://github.com/xoseperez/espurna/issues/64))
- Add support for delayed ON/OFF switches ([#123](https://github.com/xoseperez/espurna/issues/123), [#161](https://github.com/xoseperez/espurna/issues/161), [#188](https://github.com/xoseperez/espurna/issues/188))
- Added ON and OFF actions for button events (previously only TOGGLE available) ([#182](https://github.com/xoseperez/espurna/issues/182))
- Sliders in web interface to control dimmer channels independently (also for brightness)
- Sliders in web interface to control dimmer channels independently (also for brightness)
- Debug info about MQTT disconnect reason
- Debug info about MQTT disconnect reason
### Changed
### Changed
- MQTT setters ending with "/set" by default
- MQTT setters ending with "/set" by default
- Using DOUT flash mode on all devices (#167)
- Using DOUT flash mode on all devices ([#167](https://github.com/xoseperez/espurna/issues/167))
- Longer timeout for WiFi connection (better chances for Sonoff Basic to connect)
- Longer timeout for WiFi connection (better chances for Sonoff Basic to connect)
- Issue #85 and #90. Option to report MQTT messages with JSON payloads
- Issue #170. Updated DebouceEvent library to allow disabling double click and get faster click responses
- Issue [#85](https://github.com/xoseperez/espurna/issues/85) and [#90](https://github.com/xoseperez/espurna/issues/90). Option to report MQTT messages with JSON payloads
- Issue [#170](https://github.com/xoseperez/espurna/issues/170). Updated DebouceEvent library to allow disabling double click and get faster click responses
- Using memory layout with no SPIFFS for 1Mb devices
- Using memory layout with no SPIFFS for 1Mb devices
### Changed
### Changed
@ -369,8 +369,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Return times in ISO8601 format
- Return times in ISO8601 format
### Fixed
### Fixed
- Issue #168. Added H801 to arduino.h file
- Issue #171. Fix corrupted will message
- Issue [#168](https://github.com/xoseperez/espurna/issues/168). Added H801 to arduino.h file
- Issue [#171](https://github.com/xoseperez/espurna/issues/171). Fix corrupted will message
## [1.8.2] 2017-07-16
## [1.8.2] 2017-07-16
### Added
### Added
@ -379,45 +379,45 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Enable WIFI debug on hardware reset (button long click)
- Enable WIFI debug on hardware reset (button long click)
### Changed
### Changed
- Issue #159. Allow decimals in relay pulse interval
- Issue [#159](https://github.com/xoseperez/espurna/issues/159). Allow decimals in relay pulse interval
- Updated HLW8012 library
- Updated HLW8012 library
### Fixed
### Fixed
- Issue #148. Fix bug in conditional compilation check
- Issue #149. Using different pulse counters for each relay (thanks to Lauris Ieviņš)
- Issue #141. Limit relay pulse interval to 60s
- Issue [#148](https://github.com/xoseperez/espurna/issues/148). Fix bug in conditional compilation check
- Issue [#149](https://github.com/xoseperez/espurna/issues/149). Using different pulse counters for each relay (thanks to Lauris Ieviņš)
- Issue [#141](https://github.com/xoseperez/espurna/issues/141). Limit relay pulse interval to 60s
- Fixed units for apparent & reactive power (thanks to Lauris Ieviņš)
- Fixed units for apparent & reactive power (thanks to Lauris Ieviņš)
- Fixed mDNS setup when using custom HTTP port for web interface
- Fixed mDNS setup when using custom HTTP port for web interface
## [1.8.1] 2017-05-22
## [1.8.1] 2017-05-22
### Fixed
### Fixed
- Issue #140. Fix no relay control bug in Sonoff Dual
- Issue [#140](https://github.com/xoseperez/espurna/issues/140). Fix no relay control bug in Sonoff Dual
## [1.8.0] 2017-05-21
## [1.8.0] 2017-05-21
### Added
### Added
- Added gamma correction to RGB strips. Thanks to Chris Ward.
- Added gamma correction to RGB strips. Thanks to Chris Ward.
- Added support for Huacanxing H801 WiFi LED Controller. Thanks to Minh Phuong Ly.
- Added support for Huacanxing H801 WiFi LED Controller. Thanks to Minh Phuong Ly.
- Issue #138. Added NTP configuration from web interface
- Issue #128. Report color when booting and in heartbeat stream.
- Issue #126. Show NTP status in web interface.
- Issue [#138](https://github.com/xoseperez/espurna/issues/138). Added NTP configuration from web interface
- Issue [#128](https://github.com/xoseperez/espurna/issues/128). Report color when booting and in heartbeat stream.
- Issue [#126](https://github.com/xoseperez/espurna/issues/126). Show NTP status in web interface.
- Added filter limits on POW readings.
- Added filter limits on POW readings.
- Added color temperature to RGB calculation. Thanks to Sacha Telgenhof.
- Added color temperature to RGB calculation. Thanks to Sacha Telgenhof.
- Support for "#RRGGBB", "RRR,GGG,BBB" and "WWW" color formats.
- Support for "#RRGGBB", "RRR,GGG,BBB" and "WWW" color formats.
- Issue #117. Added build date & time to web interface.
- Issue [#117](https://github.com/xoseperez/espurna/issues/117). Added build date & time to web interface.
### Fixed
### Fixed
- Fix MQTT_RELAY board conifugration. Thanks to Denis French.
- Fix MQTT_RELAY board conifugration. Thanks to Denis French.
- Issue #125. Fix bug in relay status reading from EEPROM
- Issue #127. Fix button action in DUAL.
- Issue [#125](https://github.com/xoseperez/espurna/issues/125). Fix bug in relay status reading from EEPROM
- Issue [#127](https://github.com/xoseperez/espurna/issues/127). Fix button action in DUAL.
- Fix bug in Sonoff POW current reading. Thanks to Emmanuel Tatto.
- Fix bug in Sonoff POW current reading. Thanks to Emmanuel Tatto.
- Minimizing my9291 flickering when booting.
- Minimizing my9291 flickering when booting.
- Fix conditional flags in hardware.ino to support Arduino IDE.
- Fix conditional flags in hardware.ino to support Arduino IDE.
## [1.7.1] 2017-03-28
## [1.7.1] 2017-03-28
### Fixed
### Fixed
- Issue #113. Fix restoring color from EEPROM upon reboot
- Issue #113. Fix bug in API handlers
- Issue [#113](https://github.com/xoseperez/espurna/issues/113). Fix restoring color from EEPROM upon reboot
- Issue [#113](https://github.com/xoseperez/espurna/issues/113). Fix bug in API handlers
## [1.7.0] 2017-03-27
## [1.7.0] 2017-03-27
### Added
### Added
@ -436,10 +436,10 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Prevent the SDK from saving WiFi configuration to flash
- Prevent the SDK from saving WiFi configuration to flash
### Fixed
### Fixed
- Issue #113. Fix light bulb state to OFF in library prevented the bulb from turning on
- Issue #58. Added code to handle spurious readings
- Issue [#113](https://github.com/xoseperez/espurna/issues/113). Fix light bulb state to OFF in library prevented the bulb from turning on
- Issue [#58](https://github.com/xoseperez/espurna/issues/58). Added code to handle spurious readings
- Fix bug in HLW8012 calibration current parameter casting to int instead of float
- Fix bug in HLW8012 calibration current parameter casting to int instead of float
- Issue #115. Removed local declaration of _mqttForward variable. Thanks to Paweł Fiedor
- Issue [#115](https://github.com/xoseperez/espurna/issues/115). Removed local declaration of _mqttForward variable. Thanks to Paweł Fiedor
- Fix MQTT will topic. Thanks to Asbjorn Tronhus
- Fix MQTT will topic. Thanks to Asbjorn Tronhus
## [1.6.9] 2017-03-12
## [1.6.9] 2017-03-12
@ -456,27 +456,27 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
## [1.6.8] 2017-03-01
## [1.6.8] 2017-03-01
### Added
### Added
- Issue #85. Heartbeat reports now free heap, uptime and VCC every 5 minutes
- Issue [#85](https://github.com/xoseperez/espurna/issues/85). Heartbeat reports now free heap, uptime and VCC every 5 minutes
### Changed
### Changed
- Wait two minutes instead of one in AP mode before trying to reconnect to the router
- Wait two minutes instead of one in AP mode before trying to reconnect to the router
- Issue #92. Debug log enabled by default in Arduino IDE
- Issue #91. Using AsyncMqttClient as default MQTT client again
- Issue [#92](https://github.com/xoseperez/espurna/issues/92). Debug log enabled by default in Arduino IDE
- Issue [#91](https://github.com/xoseperez/espurna/issues/91). Using AsyncMqttClient as default MQTT client again
### Fixed
### Fixed
- Report data from all sensors via websocket even if no MQTT connection
- Report data from all sensors via websocket even if no MQTT connection
- Issue #92. Fix unknown reference in Arduino IDE
- Issue [#92](https://github.com/xoseperez/espurna/issues/92). Fix unknown reference in Arduino IDE
- Split data.h contents into 1k lines, otherwise Arduino IDE chokes on them
- Split data.h contents into 1k lines, otherwise Arduino IDE chokes on them
- Discard empty MQTT topic while subscribing
- Discard empty MQTT topic while subscribing
## [1.6.7] 2017-02-25
## [1.6.7] 2017-02-25
### Added
### Added
- Support for OpenLight / AI-Light by AI-Thinker based on MY9291 LED driver
- Support for OpenLight / AI-Light by AI-Thinker based on MY9291 LED driver
- Issue #87. Factory reset when physical button pressed for >10 seconds
- Issue [#87](https://github.com/xoseperez/espurna/issues/87). Factory reset when physical button pressed for >10 seconds
## [1.6.6] 2017-02-23
## [1.6.6] 2017-02-23
### Fixed
### Fixed
- Issue #82. Fix critical bug on Sonoff Dual
- Issue [#82](https://github.com/xoseperez/espurna/issues/82). Fix critical bug on Sonoff Dual
## [1.6.5] 2017-02-22
## [1.6.5] 2017-02-22
### Added
### Added
@ -488,8 +488,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Double & long clicks do nothing except for the first defined button
- Double & long clicks do nothing except for the first defined button
### Fixed
### Fixed
- Issue #79. Fix bug in WiFi led notification & MQTT connectivity (using PubSubClient)
- Issue #73. Fix bug when building without Domoticz support
- Issue [#79](https://github.com/xoseperez/espurna/issues/79). Fix bug in WiFi led notification & MQTT connectivity (using PubSubClient)
- Issue [#73](https://github.com/xoseperez/espurna/issues/73). Fix bug when building without Domoticz support
- Fix Gulp tasks dependencies
- Fix Gulp tasks dependencies
## [1.6.4] 2017-02-20
## [1.6.4] 2017-02-20
@ -499,8 +499,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Support for PROGMEM debug messages (only wifi module has been changed)
- Support for PROGMEM debug messages (only wifi module has been changed)
- Option to disable mDNS, enabled by default
- Option to disable mDNS, enabled by default
- Show current web server port in debug log
- Show current web server port in debug log
- Issue #75. Link relays to LEDs
- Issue #76. Using http://espurna.local when in AP mode
- Issue [#75](https://github.com/xoseperez/espurna/issues/75). Link relays to LEDs
- Issue [#76](https://github.com/xoseperez/espurna/issues/76). Using http://espurna.local when in AP mode
### Changed
### Changed
- Images and favicon is now embedded in the HTML
- Images and favicon is now embedded in the HTML
@ -510,16 +510,16 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
### Fixed
### Fixed
- Memory leak in MQTT connection method
- Memory leak in MQTT connection method
- Wait 60 seconds before retrying to connect when in AP mode
- Wait 60 seconds before retrying to connect when in AP mode
- Issue #24J. Update ESPAsyncTCP and ESPAsyncWebServer to latest GIT version that supports MSS defragmenting
- Issue #73. Fixes for windows machines
- Issue [#24](https://github.com/xoseperez/espurna/issues/24) & [#74](https://github.com/xoseperez/espurna/issues/74). Update ESPAsyncTCP and ESPAsyncWebServer to latest GIT version that supports MSS defragmenting
- Issue [#73](https://github.com/xoseperez/espurna/issues/73). Fixes for windows machines
### Removed
### Removed
- Captive portal removed, mDNS resolution for AP mode too
- Captive portal removed, mDNS resolution for AP mode too
## [1.6.3] 2017-02-15
## [1.6.3] 2017-02-15
### Added
### Added
- Issue #69. Temperature unit configuration from the web interface
- Issue #55. WebServer port configurable from the web interface, defaults to 80
- Issue [#69](https://github.com/xoseperez/espurna/issues/69). Temperature unit configuration from the web interface
- Issue [#55](https://github.com/xoseperez/espurna/issues/55). WebServer port configurable from the web interface, defaults to 80
- Expand network configuration when adding a new network
- Expand network configuration when adding a new network
### Changed
### Changed
@ -528,7 +528,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Scan for strongest network only if more than 1 network configured
- Scan for strongest network only if more than 1 network configured
### Fixed
### Fixed
- Issue #71. Added default values for netmask and DNS in web configuration
- Issue [#71](https://github.com/xoseperez/espurna/issues/71). Added default values for netmask and DNS in web configuration
- Fixed PlatformIO environments for ESP8285 boards (4CH and Touch)
- Fixed PlatformIO environments for ESP8285 boards (4CH and Touch)
@ -560,11 +560,11 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
## [1.5.4] 2017-02-03
## [1.5.4] 2017-02-03
### Fixed
### Fixed
- Issue #50. Fix type bug in window variable when calculating energy for HLW8012 devices (Sonoff POW)
- Issue [#50](https://github.com/xoseperez/espurna/issues/50). Fix type bug in window variable when calculating energy for HLW8012 devices (Sonoff POW)
## [1.5.3] 2017-02-02
## [1.5.3] 2017-02-02
### Fixed
### Fixed
- Issue #50 and #54. Fixed domoticz MQTT message format
- Issue [#50](https://github.com/xoseperez/espurna/issues/50) and [#54](https://github.com/xoseperez/espurna/issues/54). Fixed domoticz MQTT message format
### Added
### Added
- Energy calculation and aggregation. API entry points and MQTT messages.
- Energy calculation and aggregation. API entry points and MQTT messages.
@ -597,9 +597,9 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
### Fixed
### Fixed
- MQTT will topic
- MQTT will topic
- Crash with HLW812 interrupts while trying to create a WIFI connection
- Crash with HLW812 interrupts while trying to create a WIFI connection
- Issue #20 Better inline documentation for Alexa and Domoticz default settings
- Issue #39 Fixed autoconnect issue with static IP (fixed in JustWifi library)
- Defer wifi disconnection from web interface to allow request to return
- Defer wifi disconnection from web interface to allow request to return
### Changed
### Changed
@ -618,14 +618,14 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
## [1.4.3] 2017-01-11
## [1.4.3] 2017-01-11
### Fixed
### Fixed
- Issue #6 Using forked Time library to prevent conflict with Arduino Core for ESP8266 time.h file in windows machines
- Issue [#6](https://github.com/xoseperez/espurna/issues/6) Using forked Time library to prevent conflict with Arduino Core for ESP8266 time.h file in windows machines
## [1.4.2] 2017-01-09
## [1.4.2] 2017-01-09
### Added
### Added
- Support for inverse logic relays
- Support for inverse logic relays
### Fixed
### Fixed
- Issue #31. Fixed error in relay identification from MQTT messages
- Issue [#31](https://github.com/xoseperez/espurna/issues/31). Fixed error in relay identification from MQTT messages
## [1.4.1] 2017-01-05
## [1.4.1] 2017-01-05
### Added
### Added
@ -641,7 +641,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Support for static IP connections
- Support for static IP connections
### Fixed
### Fixed
- Issue #16. Enforce minimum password strength in web interface
- Issue [#16](https://github.com/xoseperez/espurna/issues/16). Enforce minimum password strength in web interface
### Changed
### Changed
- Using default client_id provided by AsyncMqttClient
- Using default client_id provided by AsyncMqttClient
@ -678,9 +678,9 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Skipping retained MQTT messages (configurable)
- Skipping retained MQTT messages (configurable)
### Fixed
### Fixed
- Issue #11 Compile error when building sonoff-dual-debug
- Issue #14 MQTT Connection with Username an Password not working
- Issue #17 Moved static variable 'pending' to class variable
- Issue [#11](https://github.com/xoseperez/espurna/issues/11) Compile error when building sonoff-dual-debug
- Issue [#14](https://github.com/xoseperez/espurna/issues/14) MQTT Connection with Username an Password not working
- Issue [#17](https://github.com/xoseperez/espurna/issues/17) Moved static variable 'pending' to class variable
ESPurna ("spark" in Catalan) is a custom firmware for ESP8266 based smart switches.
It was originally developed with the **[IteadStudio Sonoff](https://www.itead.cc/sonoff-wifi-wireless-switch.html)** in mind but now it supports a growing number of ESP8266-based boards.
ESPurna ("spark" in Catalan) is a custom firmware for ESP8266 based smart switches and sensors.
It uses the Arduino Core for ESP8266 framework and a number of 3rd party libraries.
It uses the Arduino Core for ESP8266 framework and a number of 3rd party libraries.
**Current Release Version is 1.12.1**
Read the [changes log](https://bitbucket.org/xoseperez/espurna/src/master/CHANGELOG.md).
* *KRACK* vulnerability free (when built against Arduino Core 2.4.0)
* *KRACK* vulnerability free (when built against Arduino Core 2.4.0)
* Support for **multiple ESP8266-based boards** ([check list](https://bitbucket.org/xoseperez/espurna/wiki/Hardware))
* Support for **multiple ESP8266-based boards** ([check list](https://github.com/xoseperez/espurna/wiki/Hardware))
* Power saving options
* Power saving options
* Wifi **AP Mode** or **STA mode**
* Wifi **AP Mode** or **STA mode**
* Up to 5 different networks can be defined
* Up to 5 different networks can be defined
@ -32,7 +33,7 @@ Read the [changes log](https://bitbucket.org/xoseperez/espurna/src/master/CHANGE
* Support for **MQTT groups** to sync switches between devices
* Support for **MQTT groups** to sync switches between devices
* Support for **delayed ON/OFF**
* Support for **delayed ON/OFF**
* **MQTT** enabled
* **MQTT** enabled
* **SSL/TLS support** (not on regular builds, see #64)
* **SSL/TLS support** (not on regular builds, see [#64](https://github.com/xoseperez/espurna/issues/64))
* Switch on/off and toggle relays, group topics (sync relays between different devices)
* Switch on/off and toggle relays, group topics (sync relays between different devices)
* Report button event notifications
* Report button event notifications
* Enable/disable pulse mode
* Enable/disable pulse mode
@ -114,6 +115,19 @@ Read the [changes log](https://bitbucket.org/xoseperez/espurna/src/master/CHANGE
## Notices
## Notices
---
> **2018-01-24**: 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:
>
>* **Code** has, of course been migrated completely
>* **Issues** are all on GitHub already **but** all issues and comments show up as reported by me. The original reporter is referenced inside the body of the issue (or comment) with a link to his/her profile at Bitbucket and a link to his/her profile at GitHub if it happens to be the same username. I **suggest all reporters to subscribe to the issues they originally filed** (search for your BitBucket username to list them).
>* **Pull requests** historic has not been migrated. At the moment of the migration all pull-requests have been either merged or declined. Of course, those PR merged are in the code base, but the historic and comments in the PR pages will be lost.
>* **Documentation** it's on it way, first step will be to migrate existing wiki, maybe with a new TOC structure
>* **Watchers**, **Forks**, I'm afraid they are all gone. Visit the new repop home and click on the "Watch" button on the top right. And as you do it click also on the "Star" button too :)
>
>I apologize for any inconvenience this migration may have caused. I have decided to do it the hard way.
---
---
> **2018-01-11**: 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.
> **2018-01-11**: 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.
@ -121,7 +135,7 @@ Read the [changes log](https://bitbucket.org/xoseperez/espurna/src/master/CHANGE
> **2017-08-26**: 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-08-26**: 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**: 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.
> **2017-07-24**: 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](https://github.com/xoseperez/espurna/issues/187).
---
---
@ -135,15 +149,15 @@ There are several ways to contribute to ESpurna development. You can contribute
And of course you can always buy me a beer, coffee, tea,... via the donation button below.
And of course you can always buy me a beer, coffee, tea,... via the donation button below.
[![Donate to ESPurna Project](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=xose%2eperez%40gmail%2ecom&lc=US&no_note=0¤cy_code=EUR&bn=PP%2dDonationsBF%3abtn_donate_LG%2egif%3aNonHostedGuest)
For more information please refer to the [ESPurna Wiki](https://bitbucket.org/xoseperez/espurna/wiki/Home).
For more information please refer to the [ESPurna Wiki](https://github.com/xoseperez/espurna/wiki).
## Supported hardware
## Supported hardware
Here is the list of supported hardware. For more information please refer to the [ESPurna Wiki Hardware page](https://bitbucket.org/xoseperez/espurna/wiki/Hardware).
Here is the list of supported hardware. For more information please refer to the [ESPurna Wiki Hardware page](https://github.com/xoseperez/espurna/wiki/Hardware).