diff --git a/CHANGELOG.md b/CHANGELOG.md
index f3f69788..26ca0554 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -3,6 +3,121 @@
The format is based on [Keep a Changelog](http://keepachangelog.com/)
and this project adheres to [Semantic Versioning](http://semver.org/).
+## [1.13.4] 2019-02-21
+### Fixed
+- Travis fixes
+- IR results on raw mode (thanks to @vtochq)
+- Missing configuration in HTTP API (#1288)
+- NTP sync changes (#1342)
+- Proper buffer size to fit two digit rfbOFF key (#1348)
+- Use correct arguments for stat on macOS (#1355, thanks to @jackwilson)
+- Enable `reload` command when no web support (#1383)
+- Wrong GPIO value for dummy relay (#1386)
+- Wait until mqtt client has finished trying to connect
+- Disable EEPROM Rotate before NoFUSS update (#1398, thanks to @arihantdaga)
+- Only check domoticz state in broker callback (#1562)
+- Fix upload_port and upload_args
+- Fix heartbeat dropdown size
+- Setup settings before using them in system module (#1542)
+- Fix HEARTBEAT_REPORT_DESCRIPTION typo (#1539)
+- Fix wsDebugSend prototype
+- Fix pulse for dummy relays (#1496, thanks to @Niek)
+- Fix RFBridge websocket data
+- Only process Domoticz RGB MQTT Messages for the current idx (#1489, thanks to @soif)
+- Fix pulse for dummy relays
+- Fix compile error when both RF_SUPPORT and API_SUPPORT are enabled (#1479, thanks to @Niek)
+- Fix compile error when TERMINAL_SUPPORT is disabled (#1426)
+- Fix compile error when RF_SUPPORT is enabled (#1475)
+- Fix CodingStyle link (#1473)
+- Fix: Add Debug flag for compilation of wifiDebug() function (#1454)
+- Fix bug in RFM69 that counted packets twice
+- Escape hyphens in img.shields.io urls
+- Fix travis builds based on latest core
+- Increase buffer size to fit B0 code (#1423)
+- Fix function call typo in RF code (#1421)
+- Fix RF code conversion to long (#1410)
+
+### Added
+- Support for MAXCIO W-DE003 device (thanks to @kerk1v)
+- Support for Tonbux XS-SSA01 device (thanks to @StevenWolfe)
+- Support for Blitzwolf BW-SHP2 v2.3 (#1351)
+- Support for Tecking SP22 v1.4+
+- Support for Lombez Lux Nova 2 smart bulbs (thanks to @kcghost)
+- Support for Orvibo B25 (#1402, thanks to @plutec)
+- Support for GBLife RGBW Socket (#1305)
+- Support for Generic Relay ESP01 V4.0 in inverse relay version (#1504, #1554)
+- Support for Gosund WS1 aka KS-602S (#1551, thanks to @nsvrana)
+- Support for Oukitel P1 smart switch (#1553, thanks to @quinnsam)
+- Support for Lyasi light bulb (#1533, thanks to Eichhoernchen)
+- Support for RGB(WW) controlled using Domoticz MQTT messages (#1459, thanks to @sq5gvm)
+- Support for newer AL-LC02 boards with different pinout (#1469, thanks to @sq5gvm)
+- Support for SmartLife Mini Smart Socket RGB (thanks to @kuppe234, #1411)
+- Support for Gosund SP1 v2.3 (#1448)
+- Support for OBI Wifi Schuko Plug V2 (#1408, thanks to @arthurf1969)
+- Support for pulse meter power sensor for new-generation smart-meters
+- Support for VL53L1X ToF sensor (thanks to @ruimarinho)
+- Support for VEML6075 UV sensor (thanks to @ruimarinho)
+- Support for EZO pH Circuit sensor (thanks to @ruimarinho)
+- Support for MAX6675 temperature sensor (#1375, thanks to @lucciano)
+- Support for MagicHome ZJ WFMN A/B v1.1 (#1339)
+- Support for multiple PZEM004T sensors (thanks to @0x3333)
+- Support for Support PMS5003S (#1511, thanks to @Yonsm)
+- Support for pulse meter power sensor for new-generation smart-meters (including debouncing and energy ratio support by @jackwilson)
+- Support for BMP085 and BMP180 sensors (#1082)
+- Add dim up and down actions to button handler (#1250)
+- Compact WS data (#1387)
+- Improved analog sensor (#1326, thanks to @cconde)
+- Report SSID in heartbeat messages
+- Option to send full data to thinkgspeak on every message (#1369)
+- Added RSSI to InfluxDB heartbeat (#1400, tahnks to @BuildTheRobots)
+- Option to report time even if no NTP sync (#1310)
+- Support for mixed combination of real and dummy relays (#1305)
+- Report target color values on MQTT and API
+- Note on WiFi tab about hostname (#1555)
+- Allow saving heartbeat settings from web (#1538)
+- Build images for Sonoff Basic R2 with DHT and DALLAS support
+- Add warning about TELNET_PASSWORD
+- Domoticz: track last relay state (#1536)
+- Adding description field to web UI, reporting it via MQTT (#1523)
+- ESP-01 + 2ch 5v relay LC tech Exclusive relay on (#1519, thanks to @clabnet)
+- Add OTA support over MQTT (#1424, thanks to @Niek)
+- Configure Heartbeat from WebUI & option HEARTBEAT_REPEAT_STATUS (#1474, thanks to martiera)
+- Delay light comms (mqtt, ws, broker) to avoid jamming
+- Added message type to broker
+- Yield() after handling OTA request
+- Disconnect websocket when auth fails
+- Manage relay changes in third party modules via broker
+- Added API entry points for RFBridge module (#1407)
+- Domoticz over MQTT to Espurna RGB/RGBW/RGBWW
+- Debug check position to make sure definition is not nullified to avoid putting checks in all places
+- MQTT reconnect delay based on last disconnection
+- Add terminal support for wifiDebug
+- Created contribute.md and support.md files
+- Created issue templates
+- Runtime heartbeat configuration (#1406)
+- APP_VERSION suffix (#1418)
+- Allow {hostname} and {mac} placeholder for mqtt user and client_id fields (#1338)
+- Split ws messages for relays and rf codes (#262)
+- Added learn and forget terminal commands to RFBridge and RF modules (#1253)
+- Change light transition time via MQTT or API (#1412)
+
+### Changed
+- Telnet password requirements (#1382)
+- Separate tab for NoFUSS options (#1404)
+- Updated to use gulp4 (#1403)
+- Updated to EEPROM_Rotate 0.9.2
+- Show proper switches names in web UI
+- Removing loop delay if WIFI is not set to sleep, reducing it to 1ms otherwise (#1541)
+- Change naming for BlitzWolf SHP2 and SHP6 (now SHPX) boards
+- Print each HA config entry separately (#1535)
+- Updated DebounceEvent to 2.0.5 (#1527, #1254)
+- Python cleanup (@1526, thanks to Cabalist)
+- Normalize naming for Arilux AL LC02 v14
+- Increase version field size in OTA manager
+- Merge RF and RFBridge code (#1435, thanks to @Niek)
+- Update to fauxmoESP 3.1.0
+- Move crash code to it's own module
+
## [1.13.3] 2018-10-08
### Fixed
- Honour build time settings for MQTT on fresh install (#719)
diff --git a/README.md b/README.md
index 2ead2bf0..c30534c4 100644
--- a/README.md
+++ b/README.md
@@ -3,10 +3,10 @@
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](https://img.shields.io/badge/version-1.13.4--dev-brightgreen.svg)](CHANGELOG.md)
-[![branch](https://img.shields.io/badge/branch-dev-orange.svg)](https://github.com/xoseperez/espurna/tree/dev/)
+[![version](https://img.shields.io/badge/version-1.13.4-brightgreen.svg)](CHANGELOG.md)
+[![branch](https://img.shields.io/badge/branch-master-orange.svg)](https://github.com/xoseperez/espurna/tree/master/)
[![license](https://img.shields.io/github/license/xoseperez/espurna.svg)](LICENSE)
-[![travis](https://travis-ci.org/xoseperez/espurna.svg?branch=dev)](https://travis-ci.org/xoseperez/espurna)
+[![travis](https://travis-ci.org/xoseperez/espurna.svg?branch=master)](https://travis-ci.org/xoseperez/espurna)
[![codacy](https://api.codacy.com/project/badge/Grade/c9496e25cf07434cba786b462cb15f49)](https://www.codacy.com/app/xoseperez/espurna/dashboard)
[![downloads](https://img.shields.io/github/downloads/xoseperez/espurna/total.svg)](https://github.com/xoseperez/espurna/releases)
diff --git a/code/espurna/config/general.h b/code/espurna/config/general.h
index 9c1ef409..8c74394c 100644
--- a/code/espurna/config/general.h
+++ b/code/espurna/config/general.h
@@ -21,7 +21,7 @@
#endif
#ifndef LOOP_DELAY_TIME
-#define LOOP_DELAY_TIME 10 // Delay for this millis in the main loop [0-250]
+#define LOOP_DELAY_TIME 1 // Delay for this millis in the main loop [0-250] (see https://github.com/xoseperez/espurna/issues/1541)
#endif
//------------------------------------------------------------------------------
diff --git a/code/espurna/config/version.h b/code/espurna/config/version.h
index f9697a4d..7f3c064f 100644
--- a/code/espurna/config/version.h
+++ b/code/espurna/config/version.h
@@ -1,5 +1,5 @@
#define APP_NAME "ESPURNA"
-#define APP_VERSION "1.13.4-dev"
+#define APP_VERSION "1.13.4"
#define APP_AUTHOR "xose.perez@gmail.com"
#define APP_WEBSITE "http://tinkerman.cat"
#define CFG_VERSION 3
diff --git a/code/espurna/migrate.ino b/code/espurna/migrate.ino
index af3804f9..db46fd25 100644
--- a/code/espurna/migrate.ino
+++ b/code/espurna/migrate.ino
@@ -1027,7 +1027,7 @@ void migrate() {
setSetting("relayType", 0, RELAY_TYPE_NORMAL);
setSetting("relayType", 1, RELAY_TYPE_NORMAL);
- #elif defined(BLITZWOLF_BWSHP2)
+ #elif defined(BLITZWOLF_BWSHPX)
setSetting("board", 79);
setSetting("ledGPIO", 0, 2);
diff --git a/code/espurna/system.ino b/code/espurna/system.ino
index c93aa6a1..bb8cc24b 100644
--- a/code/espurna/system.ino
+++ b/code/espurna/system.ino
@@ -10,7 +10,10 @@ Copyright (C) 2018 by Xose PĂ©rez
// -----------------------------------------------------------------------------
+#if WIFI_SLEEP_MODE != WIFI_NONE_SLEEP
unsigned long _loop_delay = 0;
+#endif
+
bool _system_send_heartbeat = false;
unsigned char _heartbeat_mode = HEARTBEAT_MODE;
unsigned long _heartbeat_interval = HEARTBEAT_INTERVAL;
@@ -72,10 +75,11 @@ bool systemGetHeartbeat() {
return _system_send_heartbeat;
}
+#if WIFI_SLEEP_MODE != WIFI_NONE_SLEEP
unsigned long systemLoopDelay() {
return _loop_delay;
}
-
+#endif
unsigned long systemLoadAverage() {
return _load_average;
@@ -157,7 +161,9 @@ void systemLoop() {
// Power saving delay
// -------------------------------------------------------------------------
- delay(_loop_delay);
+ #if WIFI_SLEEP_MODE != WIFI_NONE_SLEEP
+ delay(_loop_delay);
+ #endif
}
@@ -196,8 +202,10 @@ void systemSetup() {
_systemSetupSpecificHardware();
// Cache loop delay value to speed things (recommended max 250ms)
- _loop_delay = atol(getSetting("loopDelay", LOOP_DELAY_TIME).c_str());
- _loop_delay = constrain(_loop_delay, 0, 300);
+ #if WIFI_SLEEP_MODE != WIFI_NONE_SLEEP
+ _loop_delay = atol(getSetting("loopDelay", LOOP_DELAY_TIME).c_str());
+ _loop_delay = constrain(_loop_delay, 0, 300);
+ #endif
// Register Loop
espurnaRegisterLoop(systemLoop);
diff --git a/code/espurna/utils.ino b/code/espurna/utils.ino
index 23c6ea03..888f3963 100644
--- a/code/espurna/utils.ino
+++ b/code/espurna/utils.ino
@@ -469,7 +469,9 @@ void info() {
#if ADC_MODE_VALUE == ADC_VCC
DEBUG_MSG_P(PSTR("[MAIN] Power: %u mV\n"), ESP.getVcc());
#endif
- DEBUG_MSG_P(PSTR("[MAIN] Power saving delay value: %lu ms\n"), systemLoopDelay());
+ #if WIFI_SLEEP_MODE != WIFI_NONE_SLEEP
+ DEBUG_MSG_P(PSTR("[MAIN] Power saving delay value: %lu ms\n"), systemLoopDelay());
+ #endif
// -------------------------------------------------------------------------