Commit Graph

2851 Commits

Author SHA1 Message Date
Shantur Rathore 982f0b9573 TuyaMCU: Rename Tuya Dimmer to Tuya MCU to make it more clear. 2019-09-04 17:29:45 +01:00
Shantur Rathore 1d7a058155 Tuya MCU: Add support for Switches1 to 4 FunctionIDs 1 to 4 2019-09-04 17:29:45 +01:00
Shantur Rathore efd1870d5e Tuya: Make Tuya Mcu implementation more configurable.
More and more Tuya MCU based devices are coming in the market and people requesting to support them. This patch makes Tuya module more configurable and easier to add new functionalities. Its not just a dimmer or a switch anymore.

After this Patch Tuya MCU module has a list of supported functions and the user would need to map the functionId to dpId of their device. Once mapped correctly the Tuya module will take care for handling proper function for dpId.

Currently functions supported are

1. Relays1 to 8 : FunctionID 11 to 18
2. Dimmer : FunctionID 21
3. Power ( Deca Watt )  : Function ID 31
4. Current ( milli Amps ) : Function ID 32
5. Voltage ( deca Volts ) : Function ID 33

The changes are

- Use a TuyaMCU command to map DPs to Functions instead of many different SetOptions. SetOption41, 44, 45, 46, 65 won't be needed after this patch.
- TuyaMCU command takes argument like `11,1` which means Map Function id 11 (Relay1) to DPID 1
- Migrates old settings flags and options to new TuyaMap command
2019-09-04 17:29:44 +01:00
Theo Arends af1edb0cdb Add command Time 1/2/3 to select JSON time format ISO + Epoch, ISO or Epoch
* Add time to more events (#6337)
 * Add command Time 1/2/3 to select JSON time format ISO + Epoch, ISO or Epoch
2019-09-04 18:06:34 +02:00
Theo Arends 138ed6def9 Refactoring
Refactoring
2019-09-04 12:58:37 +02:00
Theo Arends 1304252d08 Refactor sonoff.ino
Refactor sonoff.ino
2019-09-04 12:47:58 +02:00
Theo Arends f88e87cfde Refactor and document power control
Refactor and document power control
2019-09-04 12:20:04 +02:00
Theo Arends 636e842545 Restore initial energy total default behaviour regression from yesterday
Restore initial energy total default behaviour regression from yesterday
2019-09-04 10:10:25 +02:00
Theo Arends 34eed717fa Add command Power0 0/1/2/Off/On/Toggle to control all power outputs at once
Add command Power0 0/1/2/Off/On/Toggle to control all power outputs at once (#6340)
2019-09-03 23:04:49 +02:00
Theo Arends 41f76c5128 Add restore power state when limit is restored
Add restore power state when limit is restored (#6340)
2019-09-03 22:27:54 +02:00
Theo Arends 1478f1624a Add restore power state when limiit restored
Add restore power state when limiit restored (#6340)
2019-09-03 22:22:36 +02:00
Theo Arends 8e4dd169f3 Init Energy Total on energy monitoring devices with Energy Total Register
Init Energy Total on energy monitoring devices with Energy Total Register (#6282)
2019-09-03 21:56:17 +02:00
Theo Arends b3562e030e Init Energy Total on energy monitoring devices with Energy Total Register
Init Energy Total on energy monitoring devices with Energy Total Register (#6282)
2019-09-03 21:53:20 +02:00
Theo Arends 3ee83ae147 Merge branch 'development' of https://github.com/arendst/Sonoff-Tasmota into development 2019-09-03 21:15:40 +02:00
Theo Arends d44104135e Fix turning on/off all power when limit is reached
Fix turning on/off all power when limit is reached (#6340)
2019-09-03 21:15:36 +02:00
gemu2015 d5005e29d9 sml update (add modus , optimizations) 2019-09-03 10:54:01 +02:00
gemu2015 d6560e89bd sml update modbus decoder 2019-09-03 10:39:51 +02:00
srodgers 407be4075f Add ina226 driver 2019-09-02 14:53:12 -07:00
Theo Arends 04debb5305 Fix USE_SDM120_2 issues
Fix USE_SDM120_2 issues (#6282)
2019-09-02 16:41:18 +02:00
Theo Arends f4b5e565ef Add driver USE_SDM120_2 with Domoticz P1 Smart Meter functionality as future replacement for USE_SDM120 - Pls test and report
Add driver USE_SDM120_2 with Domoticz P1 Smart Meter functionality as future replacement for USE_SDM120 - Pls test and report (#6282)
2019-09-01 17:51:25 +02:00
Stephan Hadinger 42d3f1f677 Add Zigbee parameters 2019-08-31 21:52:51 +02:00
Stephan Hadinger 23c3419509 Add Zigbee support phase 2 - cc2530 initialization and basic ZCL decoding 2019-08-31 21:23:32 +02:00
Theo Arends ae4735af5c
Merge pull request #6330 from s-hadinger/user_config_override
Move '#include user_config_override.h' in 'my_user_config.h'.
2019-08-31 18:30:49 +02:00
Stephan Hadinger fce3de82c5 Move '#include user_config_override.h' in 'my_user_config.h'.
Allow user_config_override.h to change parameters like USE_MQTT_TLS.
2019-08-31 14:44:49 +02:00
Theo Arends 12a5e500ee
Merge pull request #6328 from s-hadinger/ir_full_code_shrink
Disable USE_DISCOVERY and USE_EMULATION in sonoff-ir, reducing code size by 30k
2019-08-31 11:51:16 +02:00
Stephan Hadinger 2796aa7bc6 Disable USE_DISCOVERY and USE_EMULATION in sonoff-ir, reducing code size by 30k 2019-08-31 11:49:22 +02:00
gemu2015 655c8288eb fix counter irq mode 2019-08-31 11:32:57 +02:00
gemu2015 78989faf81 scripter update
epoch, json export, web show
2019-08-31 10:10:16 +02:00
Stephan Hadinger dc5d5476c7 Fix Travis build, case type in #include 2019-08-30 22:33:21 +02:00
Stephan Hadinger 69a31577eb Fix Travis build for sonoff-ir 2019-08-30 22:25:11 +02:00
Stephan Hadinger 2d673d78ef Add 'sonoff-ir' pre-packaged IR-dedicated firmware and 'sonoff-ircustom' to customize firmware with IR Full protocol support 2019-08-30 20:41:01 +02:00
Theo Arends 06135c6ccd Merged #5421
Merged #5421
2019-08-30 17:07:56 +02:00
Theo Arends b363bb55a9 Add compile time define USE_WS2812_HARDWARE to select hardware type WS2812, WS2812X, WS2813, SK6812, LC8812 or APA106 (DMA mode only)
Add compile time define USE_WS2812_HARDWARE to select hardware type WS2812, WS2812X, WS2813, SK6812, LC8812 or APA106 (DMA mode only)
2019-08-30 14:35:08 +02:00
Theo Arends 48783a4772 Add define USE_WS2812_BTYPE to select different bitbang timing
Add define USE_WS2812_BTYPE to select different bitbang timing (#6292)
2019-08-29 18:03:30 +02:00
Stephan Hadinger 5e962879c1 Align to new behavior for codes >64 bits 2019-08-28 22:24:40 +02:00
Stephan Hadinger ab5af7bf47 Add Full support of all protocols in IRremoteESP8266, to be used on dedicated-IR Tasmota version. Warning: +81k Flash when compiling with USE_IR_REMOTE_FULL 2019-08-28 22:01:01 +02:00
Theo Arends b04bf63446 Add possibility to receive more then 64 bits to IRremote
Add possibility to receive more  then 64 bits to IRremote. May still need change of IR_RCV_BUFFER_SIZE (#6286)
2019-08-28 16:13:19 +02:00
Theo Arends 9af67a5278 Bump version to 6.6.0.9
Change theoretical baudrate range to 300..19660500 bps in 300 increments (#6294)
2019-08-28 12:02:27 +02:00
Theo Arends 387c10f118 Fix lost energy values
Fix lost energy values (#6302)
2019-08-28 11:08:23 +02:00
Theo Arends b52da68a68 Fix energy smart calculation at day roll-over
Fix energy smart calculation at day roll-over
2019-08-28 10:52:24 +02:00
Theo Arends 3a63ff3728 Fix Serial Bridge set baudrate regression from 6.6.0.4
Fix Serial Bridge set baudrate regression from 6.6.0.4
2019-08-28 10:17:31 +02:00
Theo Arends 3048b6550c
Merge pull request #6303 from s-hadinger/fix_echo_2nd_gen
Fix Unrecognized relay with Echo Dot 2nd Gen
2019-08-27 22:24:44 +02:00
Stephan Hadinger e14c560f51 Fix Unrecognized relay with Echo Dot 2nd Gen 2019-08-27 22:19:27 +02:00
Theo Arends f5646d6bbe Add SH1106 and e-paper 4.2 inch to sonoff-display.bin
Add SH1106 and e-paper 4.2 inch to sonoff-display.bin
2019-08-27 17:29:54 +02:00
Theo Arends 1776f7d06a Fix sonoff-sensor compilation by removing iram user TX20
Fix sonoff-sensor compilation by removing iram user TX20
2019-08-27 17:24:19 +02:00
Theo Arends f31b903fab Bump version to 6.6.0.8
* Add Tuya Energy monitoring by Shantur Rathore
 * Add phase 1 Domoticz P1 Smart Meter support using energy sensors handled by xdrv_03_energy.ino based on an idea by pablozg
 *   Add commands Tariff1 0..23 (start Off-Peak hour), Tariff2 0..23 (start Standard hour) and Tariff3 0/1 (Saturday and Sunday Off-Peak)
2019-08-27 17:01:12 +02:00
Theo Arends 5413b95963 Fix Greek language compilation error
Fix Greek language compilation error
2019-08-27 16:44:51 +02:00
Theo Arends 9d04ca0ccd
Merge pull request #6300 from shantur/tuya-serial-fixes
Fix sonoff-display compilation after Tuya Power metering changes
2019-08-27 15:53:05 +02:00
Theo Arends a82742126f
Merge pull request #6298 from gemu2015/meter-driver
meter driver
2019-08-27 15:49:01 +02:00
Theo Arends b661c6a414 Fix baudrate calculation allowing max 30600 baud
Fix baudrate calculation allowing max 30600 baud (#6294)
2019-08-27 15:44:30 +02:00
Shantur Rathore 6c3d9d2ff5 Fix sonoff-display compilation after Tuya Power metering changes 2019-08-27 14:40:43 +01:00
gemu2015 e96bf9af4e updata tasmota serial, add sml driver 2019-08-27 15:33:09 +02:00
Theo Arends 022df89950
Merge pull request #6296 from shantur/tuya-serial-fixes
More Tuya support
2019-08-27 14:39:09 +02:00
Shantur Rathore 231a1ba137 Tuya Serial: Add support for power metering
Capable Tuya serial devices send power metering data over serial interface. User needs to identify the ids of all power metering functions and set as
SetOption44 -> Voltage
SetOption45 -> Current
SetOption46 -> Power
2019-08-27 10:50:34 +01:00
Shantur Rathore 579f68cf2f Tuya Dimmer: Add support for dimmers with max 24
New Tuya Dimmer has dim values from 0 to 24. Currently the code expects it to be 0-100 or 0-255.
With this change we move the flag to a param and use that to calculate correct dim percentage.

This change also makes sure to update settings on version upgrade.
2019-08-27 10:46:27 +01:00
Stephan Hadinger 0cb49214e4 Fix Would not compile if USE_LIGHT not defined 2019-08-27 10:02:25 +02:00
Theo Arends 0ef45c1fa3 Add IsDst()
Add IsDst()
2019-08-25 17:31:27 +02:00
Theo Arends 427dee028d Fix compile error
Fix compile error
2019-08-25 17:30:12 +02:00
Theo Arends 43c3d3611d Prep domoticz for P1 smart meter
Prep domoticz for P1 smart meter
2019-08-25 16:25:38 +02:00
Theo Arends 459101ee3a Add translation
Add translation
2019-08-25 16:19:23 +02:00
Theo Arends 6c905b65a4 Expand Settings area to 4k for future use
Expand Settings area to 4k for future use
2019-08-25 14:58:45 +02:00
Theo Arends dc76792b5f Bump version to 6.6.0.7
Bump version to 6.6.0.7
2019-08-25 12:41:00 +02:00
Theo Arends 28eb6d7661 Integrate ibeacon 2019-08-25 12:29:48 +02:00
gemu2015 f6503ca01d Update xsns_52_ibeacon.ino 2019-08-24 15:56:28 +02:00
gemu2015 3b30ba8810 ibeacon added 2019-08-24 13:20:00 +02:00
Theo Arends 5cb863d35b Restore define USE_DISPLAY_EPAPER_42
Restore define USE_DISPLAY_EPAPER_42
2019-08-23 17:33:30 +02:00
Shantur Rathore 92a6f6672c Tuya Fix: Dimmer doesn't switch on from HASS
Tuya serial dimmer doesn't switch on from HASS because when powered off, HASS sends dimmer command.
Internally, dimmer update and power command are sent too quickly to serial out and switch doesn't turn on.
Adding a delay fixes things.
2019-08-23 10:02:24 +01:00
Shantur Rathore 9fb804b426 Fix: Tuya Switches are detected as dimmers.
Tuya switches are detected as dimmers even after setting SetOption65 to 1.
Currently SetOption65 just hides the dimmer from Web UI for Tuya switches with SetOption65 to 1 but they are advertised as dimmer to HASS.
With this change we set light_type to LT_BASIC (on/off) instead of LT_SERIAL1 (dimmable) when option 65 is set.
2019-08-23 10:02:24 +01:00
Shantur Rathore 1c7fd88ec4 Tuya: Rename tuya_show_dimmer to tuya_disable_dimmer to make the option clear.
By default the option is set to 0 in which case the tuya serial will act as dimmer
When its set to 1 tuya serial will disable dimmer functions.
2019-08-23 10:02:24 +01:00
gemu2015 8c3c3f1709 display update 2019-08-23 10:26:09 +02:00
Stephan Hadinger 993216c8c6 Fix Hue Emulation not responding on /resourcelinks, issue #6238 2019-08-22 19:13:14 +02:00
Theo Arends 944cf3877f Final fix buffer dump
Final fix buffer dump
2019-08-22 12:36:13 +02:00
Theo Arends 5ddd5633ff Fix watchdog restarts due to buffer overflow
Fix watchdog restarts due to buffer overflow (#6266)
2019-08-22 10:54:12 +02:00
Theo Arends c2474f8d5d Quick fix MHZ19 watchdog reset
Quick fix MHZ19 watchdog reset (#6266)
2019-08-21 09:44:34 +02:00
Theo Arends 86b6dc7ecb Fix warning
Fix warning
2019-08-20 12:17:21 +02:00
Theo Arends e04bea8768
Merge pull request #6262 from s-hadinger/fix_http_head
Renamed HTTP_HEAD to HTTP_HEADER
2019-08-20 09:29:16 +02:00
Shantur Rathore e9475592b3 Fix: Legacy Led1 doesn't power up with Relay1.
https://github.com/arendst/Sonoff-Tasmota/pull/6246 broke Legacy Led1 power up logic. Make sure the if statement matches the if statement before #6246
2019-08-19 21:04:27 +01:00
Stephan Hadinger a49c416c81 Renamed HTTP_HEAD to HTTP_HEADER 2019-08-19 21:14:58 +02:00
Theo Arends 5f6a87c7c0 Update libraries and fix SSD1306 power control
Update libraries and fix SSD1306 power control
2019-08-19 18:17:44 +02:00
Theo Arends 42c8ac61e8 Bump version to 6.6.0.6
Bump version to 6.6.0.6
2019-08-19 17:09:31 +02:00
Theo Arends b6e95e818c Add new display driver defines
Add new display driver defines
2019-08-19 16:58:24 +02:00
Theo Arends e8f28740a7 Display fixes part 1
Display fixes part 1
2019-08-19 16:49:20 +02:00
gemu2015 eb7ca618c7 display update 2019-08-19 13:38:14 +02:00
gemu2015 cb0de03df7 update displays 2019-08-19 13:21:54 +02:00
Theo Arends 33aa430f64 Add support for RDM6300 125kHz RFID Reader by Gerhard Mutz
Add support for RDM6300 125kHz RFID Reader by Gerhard Mutz
2019-08-19 11:47:59 +02:00
Theo Arends 347ebe5e0d
Merge pull request #6258 from gemu2015/rdm6300
rdm6300 support
2019-08-19 11:22:50 +02:00
Theo Arends 7d690dcc1b Gain a little code space on WebSend response
Gain a little code space on WebSend response
2019-08-19 11:21:00 +02:00
Theo Arends cae714e300 Optimize rule/script processing
Optimize rule/script processing
2019-08-19 11:18:50 +02:00
gemu2015 70cb8f3822 rdm6300 support 2019-08-19 10:54:58 +02:00
Theo Arends bfad4f815f Add define USE_WEBSEND_RESPONSE
Add define USE_WEBSEND_RESPONSE
2019-08-19 10:36:42 +02:00
gemu2015 f981c13ae6 Update xdrv_10_scripter.ino 2019-08-19 08:24:41 +02:00
gemu2015 f6d22a6e4d scripter update 2019-08-19 08:20:51 +02:00
Theo Arends 7965ada5c5 Clean code
Clean code
2019-08-18 15:21:38 +02:00
Theo Arends 54364484fa Add Driver and Sensor info to status 4
* Add Driver and Sensor info to status 4
* Change WebSensor return information to show disabled state using exclamation mark
* Clean up debug code
2019-08-18 13:23:43 +02:00
Theo Arends 049dd72ca5 Refactor wifi saving code space
Refactor wifi saving code space
2019-08-17 17:13:09 +02:00
Theo Arends c107864b92 Refactor RTC saving code space
Refactor RTC saving code space
2019-08-17 16:49:17 +02:00
Theo Arends ef63883a1c Refactor Button, Switch and Rotary to save code space
Refactor Button, Switch and Rotary to save code space
2019-08-17 16:19:58 +02:00
Theo Arends 9eed3ebfea Refactor Armtronix driver
Refactor Armtronix driver
2019-08-17 15:07:46 +02:00
Theo Arends 12d17030ca Refactor Tuya driver saving code space
Refactor Tuya driver saving code space
2019-08-17 15:00:57 +02:00
Theo Arends 9a15663ca0 Correction
Correction
2019-08-17 14:50:12 +02:00