Commit Graph

488 Commits

Author SHA1 Message Date
Theo Arends 77db7ba0ff 6.4.1.17 Change template stability
6.4.1.17 20190214
 * Change template update by removing possibility to add user module config keeping template as defined (#5222)
2019-02-14 16:48:28 +01:00
Theo Arends b9f6bf402a Add CFG_HOLDER to status 1
Add parameter CFG_HOLDER to status 1 message (#5206)
2019-02-13 10:50:02 +01:00
Laurent 4b4b3709ad Introduce Expression in Rules
Support use an expression as paramter in some rule commands, include Var<x>, Mem<x> and Ruletimer<x>.
Expression is constructed by constants (float number), variables (var<x>, mem<x>, Time, Uptime, Sunrise, Sunset),  operators and round brackets.
Currently support 6 operators, order by priority from high to low:
^  (power)
% (modulo)
*, /
+, -
Commands examples:
Var1 3.14 * (MEM1 * (10 + VAR2 ^2) - 100) % 10 + uptime / (2 + MEM2)
Ruletimer4 Time - Sunrise + MEM2/2
2019-02-12 21:46:42 -05:00
Theo Arends 567bc93623 Add Template GUI update
Initial support for online template change using command Template or GUI Configure Other (#5177)
2019-02-12 11:55:47 +01:00
Theo Arends 98ae3eaf54 6.4.1.16 Online template change
6.4.1.16 20190211
 * Initial support for online template change using command Template (#5177)
2019-02-11 19:21:49 +01:00
Theo Arends 3a59084377 Enable group status messages
Add status message to former declined group commands (#5145)
2019-02-09 13:37:27 +01:00
Theo Arends ab11096f3a Add command SerialDelimiter 128
Add command SerialDelimiter 128 to filter reception of only characters between ASCII 32 and 127 (#5131)
2019-02-09 13:25:15 +01:00
Gabor Simon 7b93df4978
Merge branch 'development' into sm16716 2019-02-08 20:00:53 +04:00
Theo Arends ae277f59cf Change image defines
6.4.1.15 20190208
 * Change image name BE_MINIMAL to FIRMWARE_MINIMAL (#5106)
 * Change image names USE_xyz to FIRMWARE_xyz (#5106)
2019-02-08 14:55:45 +01:00
Gabor Simon e23d4201c1
Merge branch 'development' into sm16716 2019-02-04 16:48:49 +04:00
Theo Arends 6ee3d1abc6 Fix IR local echo
Fix IR local echo
2019-02-03 18:45:20 +01:00
Theo Arends 54aaaf50c9 6.4.1.14 Add diag info to status 3
6.4.1.14 20190203
 * Add SetOption32 until SetOption49 diagnostic information to Status 3 report as replacement for second property value in SetOption property name
 * Add Resolution property to Status 3 report providing previous SetOption second value property
2019-02-03 12:38:41 +01:00
Colin Kuebler d7b8a6453d Added preprocessor constant for LT_SM16716 for improved code readability
Note that this differs from other LT_* in that it's not an enum
Ensure the SM16716 codepath is only taken when the top half of light_type is LT_SM16716
2019-02-01 19:41:12 -05:00
Gabor Simon bbce19a74e
Merge branch 'development' into sm16716 2019-02-01 08:27:35 +04:00
Colin Kuebler 3a43050d93 Integrated Gabor's SM16716 code into the light driver code
Removed redundant processing and variables
Added new light type to distinguish SM16716 devices
2019-01-30 17:19:40 -05:00
Theo Arends 2c164a8b4b 6.4.1.13 Add boot loop offset
6.4.1.13 20190130
 * Add command SetOption36 to control boot loop default restoration (#4645, #5063)
2019-01-30 14:34:31 +01:00
Theo Arends 304ac6fe44 6.4.1.12 code changes (byte/boolean)
6.4.1.12 20190128
 * Change code use of boolean to bool and byte to uint8_t
 * Change code uint8_t flags to bool flags
2019-01-28 14:08:33 +01:00
Theo Arends dc75b473cf Add support for inverted buttons
* Add core version conditional compile options to provided PWM files (#4917)
 * Add support for inverted buttons and inverted buttons without pullup (#4914)
2019-01-27 14:54:28 +01:00
Theo Arends 1fb7eb646f Add 50 mSec delay
Add 50 mSec delay between interlocked relay switch
2019-01-25 18:30:10 +01:00
Theo Arends 505c4794d1 6.4.1.11 Rewrite interlock
6.4.1.11 20190124
 * Remove command SetOption14 as it has been superseded by command Interlock
 * Remove command SetOption63 as it has been superseded by command Interlock
 * Add command Interlock 0 / 1 / 1,2 3,4 .. to control interlock ON/OFF and add up to 8 relays in 1 to 4 interlock groups (#5014)
2019-01-25 17:46:27 +01:00
Theo Arends 7745e1e779 Fix Hass Software Watchdog
Fix Hass Software Watchdog exception during discovery (#4988)
2019-01-22 12:46:55 +01:00
Theo Arends b5824fc361 Housekeeping 2019-01-18 10:52:18 +01:00
Theo Arends e7e378f463 Add (S)SerialSend features
* Fix mDNS addService (#4938, #4951)
 * Add (S)SerialSend3 escape sequence \x to allow hexadecimal byte value (#3560, #4947)
 * Add SerialBridge command SSerialSend5 <hexdata>
2019-01-17 17:48:34 +01:00
Theo Arends e5fd45c9c8 6.4.1.9 Fix mDNS addService
6.4.1.9 20190115
 * Add support for Mi LED Desk Lamp with rotary switch (#4887)
 * Fix mDNS addService (#4938)
2019-01-15 16:11:42 +01:00
dh.harald 2aac0683be Add support for Mi Desk Lamp 2019-01-14 22:53:15 +00:00
lobocobra 15e4918238 As requested in issue 824# by ascillato2, implement split interlock.
=> Split interlock of SONOFF with more than 2 channel into 2 groups
=> This is needed for shutter and similar utilization
2019-01-13 11:00:02 +01:00
Theo Arends 23fa3c624a Clarify Link/Power LED selection
Clarify Link/Power LED selection
2019-01-08 11:44:45 +01:00
Theo Arends 148fe4aec0 Only restart if module supports it 2019-01-07 16:58:44 +01:00
Theo Arends a23f01080b 6.4.1.8 Add template flags
6.4.1.8 20190107
 * Change sonoff_template.h layout regarding optional module flags like ADC0
 * Add command SetOption62 1 to force no Button/Switch pullup on dedicated modules. Currently only supported on Shelly2 (#4841)
2019-01-07 16:33:18 +01:00
Theo Arends 95f39be2ef Change button driver making it modular
Change button driver making it modular
2019-01-07 12:38:47 +01:00
Theo Arends 3d31dd1457 Disable Button/Switch 4 seconds
Disable both Buttons and Switches 4 seconds after power on to workaround Wemos and Obi startup issues.
2019-01-07 10:15:00 +01:00
Theo Arends e1d903eab3 Add no pull-up control to Shelly 2
Add no pull-up control to Shelly 2 module (default is pull-up, change GPIO2 to Switch3n for no pull-up) (#4841)
2019-01-06 18:50:56 +01:00
Theo Arends 0195cabbd6 Add relay status functionality to LED2
Add relay status functionality to LED2 when configured leaving LED1 for (wifi/mqtt) status indication
2019-01-06 18:02:21 +01:00
Theo Arends 67cf1dbbcf 6.4.1.5 Add mDns user control
6.4.1.5 20190103
 * Remove command SetOption35 0-255 for mDNS start-up delay (#4793)
 * Add command SetOption55 0/1 to disable/enable mDNS (#4793)
2019-01-03 17:30:54 +01:00
Theo Arends 447ec6256e 6.4.1.4 Update Copyright (C) 2019
6.4.1.4 20190101
 * Update Copyright (C) 2019
2019-01-01 13:55:01 +01:00
Theo Arends 7ebb7a6067 6.4.1.3 Change sonoff_template.h
6.4.1.3 20181229
 * Change sonoff_template.h module lay-out by removing non-configurable GPIOs
2018-12-29 19:46:28 +01:00
Theo Arends afe83a3460 Prep for template tuning 2018-12-29 17:19:13 +01:00
Theo Arends 5a44b12870 6.4.1.2 Rewrite Switch driver
6.4.1.2 20181228
 * Change switch driver making it modular and introduce input filter (#4665, #4724)
 * Add define DS18B20_INTERNAL_PULLUP to select internal input pullup when only one DS18B20 sensor is connected eliminating external resistor (#4738)
 * Add variable %timestamp% to rules (#4749)
2018-12-28 16:35:19 +01:00
Theo Arends 9640931345 Change switch debounce
Change switch input detection by optimizing switch debounce (#4724)
2018-12-26 14:21:00 +01:00
Theo Arends 0b10f48e41 6.4.1.1 Fix most compiler warnings
6.4.1.1 20181224
 * Fix most compiler warnings
2018-12-24 18:14:25 +01:00
Theo Arends 77c07a2e00 Change FallbackTopic
Change FallbackTopic from cmnd/<mqttclient>/ to cmnd/<mqttclient>_fb/ to discriminate from Topic (#1528)
2018-12-23 14:48:57 +01:00
Theo Arends e2cd656286 6.4.0.3 Hass and Alexa fixes
6.4.0.3 20181222
 * Change Hass discovery to short MQTT messages as used by Hass 0.81 and up (#4711)
 * Change FallbackTopic detection (#4706)
 * Add define WIFI_SOFT_AP_CHANNEL in my_user_config.h to set Soft Access Point Channel number between 1 and 13 as used by Wifi Manager web GUI (#4673)
 * Fix Alexa "this value is outside the range of the device". Needs power cycle and Alexa deletion/discovery cycle. (#3159, #4712)
2018-12-22 16:13:07 +01:00
Adrian Scillato dcbf5a8c94
Fix ArduinoOTA for Core 2.5.0 (fix is backwards compatible)
https://github.com/arendst/Sonoff-Tasmota/issues/4619
2018-12-13 23:04:48 +00:00
Theo Arends 67ec0678a3 6.3.0.17 Add features
6.3.0.17 20181211
 * Add support for TheoV2 sensors as documented on https://sidweb.nl
 * Add support for SDM220 (#3610)
 * Enhance support for MPU6050 using DMP (#4581)
2018-12-11 14:24:52 +01:00
Erik a65041fee5 Enabled forced local operation when button- or switchtopic is set 2018-12-08 08:44:59 +01:00
Theo Arends 9a3c3895fb Fix Domoticz Fanspeed
Fix Domoticz Fanspeed
2018-12-06 15:03:42 +01:00
Theo Arends 61aa428646 6.3.0.16 - Bump version
6.3.0.16 20181201
 * Add support for iFan02 Fanspeed in Domoticz using a selector (#4517)
 * Add Announce Switches to MQTT Discovery (#4531)
2018-12-06 11:17:25 +01:00
Theo Arends 9471163d86
Merge pull request #4531 from emontnemery/hass_announce_switch
MQTT Discovery - Announce switches
2018-12-06 11:02:40 +01:00
Theo Arends e64c8d61c9
Update sonoff.ino 2018-12-06 11:01:57 +01:00
Theo Arends dfa0d2ef11 Add Domoticz Selector for Fanspeed
Add support for iFan02 Fanspeed in Domoticz using a selector (#4517)
2018-12-06 10:49:49 +01:00
Theo Arends 4b287ab4cb Final fix compile error (#4509)
Final fix soft_spi_flg compile error (#4509)
2018-12-05 12:23:42 +01:00
Erik be19af15e2 Announce switches 2018-12-04 21:32:02 +01:00
andrethomas2 a2e865bb44
Add dummy soft_spi_flg to satisfy compiler
@arendst Just adding this, for now, to satisfy the compiler until you get time to merge the rest of the Software SPI support.
2018-12-02 18:53:49 +02:00
Erik 74172f14d3 Further improve Hass auto discovery 2018-12-02 16:39:59 +01:00
Theo Arends eb3c1a327d 6.3.0.15 Update dynamic sleep
6.3.0.15 20181201
 * Removed command SetOption36 (#4497)
 * Add command SetOption60 0/1 to select dynamic sleep (0) or sleep (1) (#4497)
2018-12-01 18:53:42 +01:00
andrethomas 6050cd40f3 Merge sleep command 2018-12-01 18:47:25 +02:00
andrethomas 5f402c8f34 Fix sleep->SetOption36 transition 2018-12-01 00:18:08 +02:00
andrethomas 3613946f18
Prevent sleep and SetOption36 being used concurrently
Prevent sleep and SetOption36 being used concurrently
2018-11-30 20:00:20 +02:00
Theo Arends eb851a9a90
Merge pull request #4450 from emontnemery/hass_send_tele
WIP - Support sending tele/STATUS as state/RESULT
2018-11-26 12:49:43 +01:00
andrethomas acdbd39124
Fix math in LoadAvg
Fix the math in LoadAvg calculation. To keep average we take away one Nth of loops and add one Nth of current cycle ration to the average.

Now the math makes more sense... maximum load average on setoption36 0/1 = 999 (as it should be)
2018-11-26 11:37:15 +02:00
Erik eda60b6124 Support sending tele/STATUS as state/RESULT 2018-11-25 21:27:19 +01:00
Theo Arends 243ec16d80 Fix another calcuation error
Fix another calcuation error
2018-11-25 17:31:53 +01:00
andrethomas 0b14a95082
Remove assumption of 100% to report correctly
Remove the assumption of 100% loop duty cycle as we want an accurate loop load average and not a percentage as such - so if it overshoots the value stored for setoption36 this should be known by looking at the load average and not be distorted by reducing it to 100 basis points on the assumption that my_acitivity took as long as setoption36.
2018-11-25 17:52:07 +02:00
Theo Arends 05be1ee21c Fix exception due to divide by 0
Fix exception due to divide by 0
2018-11-25 16:41:29 +01:00
andrethomas 7c84f892fc Add target loop delay to telemetry 2018-11-25 14:29:53 +02:00
andrethomas c22fcc2a3a
Update CPU average load function
Remove unnecessary manipulations :)
2018-11-24 19:00:42 +02:00
Theo Arends 52eeef95f0 Add CPU average load
Add CPU average load to state message (#4431)
2018-11-24 17:43:18 +01:00
Theo Arends 4700e49d70
Update sonoff.ino 2018-11-24 17:16:27 +01:00
andrethomas 0e56044eb5
Add main loop load average
Add main loop avarage duty cycle measured against setoption36 value to telemetry data as LoadAvg
2018-11-24 18:12:49 +02:00
andrethomas c436ed5d3d
Update boot delay code
Since the driver boot delay has been removed, this is a better strategy for getting a smoother boot cpu cycle vs loop delay.
2018-11-22 17:13:55 +02:00
Theo Arends d71ae77900 6.3.0.12 Change boot delays
6.3.0.12 20181122
 * Remove delays introduced in 6.3.0.11 (#4233)
 * Add additional start-up delay during initial wifi connection
 * Add support for I2C MGC3130 Electric Field Effect sensor by Christian Baars (#3774, #4404)
 * Add initial support for Hass sensor discovery (#4380)
2018-11-22 12:25:18 +01:00
Theo Arends 23c16e58a9 Housekeeping
Housekeeping
2018-11-20 15:00:24 +01:00
Theo Arends e34a1f0719 Add wifi network scan
* Add command SetOption56 0/1 to enable wifi network scan and select highest RSSI (#3173)
2018-11-19 18:07:25 +01:00
Theo Arends 4899178362 6.3.0.10 Add command SetOption36
6.3.0.10 20181118
 * Add command SetOption36 0..255 milliseconds (10 default) to tune main loop dynamic delay
2018-11-18 16:49:02 +01:00
Theo Arends 18997e841f 6.3.0.9 Add dynamic delay in loop
6.3.0.9 20181118
 * Moved command SetSensorXX to debugging driver freeing user code space
 * Add dynamic delay to main loop providing time for wifi background tasks
 * Remove delays introduced in 6.3.0.1 (#4233)
2018-11-18 15:02:52 +01:00
Theo Arends 9eacabc4f0 Delay initial flash write
* Stop enforcing flashmode dout but it is still mandatory
 * Moved bootcount update (being first) flash write to 10 seconds after restart
2018-11-16 09:36:41 +01:00
Theo Arends 877771c90a 6.3.0.8 Stop enforcing dout
6.3.0.8 20181115
 * Stop enforcing flashmode dout. Still mandatory but this a chk for possible future flash corruption
2018-11-15 14:55:45 +01:00
andrethomas 4a7e7b0dbb Change C functions with () to (void) 2018-11-14 15:32:09 +02:00
Theo Arends 3ef78e8095 Revert "Moved command SetSensorXX"
This reverts commit 830319bc6e.
2018-11-12 15:54:18 +01:00
Theo Arends 830319bc6e Moved command SetSensorXX
Moved command SetSensorXX to debugging
2018-11-12 15:09:09 +01:00
Theo Arends e2dd11b0bc Consolidate LTrim into Trim
Consolidate LTrim into Trim
2018-11-12 12:33:49 +01:00
Theo Arends 7a235cc8ef Fix shelly2 ghost switching
Fix shelly2 ghost switching caused by lack of pull-up inputs (#4255)
2018-11-10 10:48:28 +01:00
Theo Arends 3332ab01a1 Revert "Add RF calibration on next restart"
This reverts commit 2a4d82f4b6.
2018-11-08 16:33:34 +01:00
Theo Arends 2a4d82f4b6 Add RF calibration on next restart
Add RF calibration on next restart
2018-11-08 14:21:45 +01:00
Theo Arends f9bddb6c54 Add flashchipid info
Add flashchipid info
2018-11-08 10:40:19 +01:00
Theo Arends 61985ca16b Add hex to flash info 2018-11-07 18:43:44 +01:00
Theo Arends c75ae78d88 6.3.0.5 Add code image
6.3.0.5 20181107
 * Add code image and optional commit number to version
2018-11-07 15:03:41 +01:00
Theo Arends 15148f290d 6.3.0.4 Add SetSensorXX
6.3.0.4 20181106
 * Add command SetSensorXX 0/1 to disable/re-enable compiled xsns_XX_sensor.ino driver
2018-11-06 17:33:51 +01:00
Theo Arends 28c1eed302 Fix baudrate when module changed
Fix baudrate when module changed
2018-11-06 11:48:04 +01:00
Theo Arends c9cf375c6c Add checks for GPIO selections
Add more strict checks for GPIO selections
2018-11-05 17:27:02 +01:00
Theo Arends 99ae0c9cab Change wifi connection check
Change wifi connection check
2018-11-04 18:00:07 +01:00
Theo Arends 14a7424e9b Add command SetOption24
Add command SetOption24 0/1 to select pressure unit as hPa or mmHg (#4241)
2018-11-04 16:55:12 +01:00
Theo Arends 46a0a0afba Add minutes to commands Timezone
Add minutes to commands Timezone to allow all possible world timezones
2018-11-01 13:00:05 +01:00
Joel Stein faab6f1221 tuya: modify WifiState() in support.ino to reflect not-connected-state instead of reimplementing it 2018-10-30 15:34:31 +01:00
Theo Arends 6b86c473d9 Add token %hostname%
Add token %hostname% to command FullTopic (#3018)
2018-10-29 12:38:44 +01:00
Theo Arends 5c78561b07 6.2.1.20 Add mDNS delay option
6.2.1.20 20181028
 * Add command SetOption35 0..255 (seconds) to delay mDNS initialization to control possible Wifi connect problems
2018-10-28 17:57:25 +01:00
Theo Arends 2c02532e1c 6.2.1.19 Rename user_config.h
6.2.1.19 20181023
* Fix header file execution order by renaming user_config.h to my_user_config.h
* Fix Arduino IDE compilation warning regarding e-paper library
2018-10-23 15:51:51 +02:00
Theo Arends 613ffde5c0 6.2.1.18 Add API.md
6.2.1.18 20181019
 * Add more API callbacks and document API.md
2018-10-19 12:53:22 +02:00
Joel Stein cfdec25bcb Add reset-button-handler vor tuya-dimmer 2018-10-18 16:02:40 +02:00
Theo Arends d1c807998f Rewrite Tuya Dimmer code
Rewrite Tuya Dimmer code
2018-10-18 13:01:31 +02:00