Commit Graph

77 Commits

Author SHA1 Message Date
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 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 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 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 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 9746489380 Bump version to 6.6.0.5
* Add command WebSensor<sensor number> 0/1 to control display of sensor data in web GUI (#6085)
 * Change some table locations from RAM to Flash
2019-08-16 16:12:33 +02:00
Stephan Hadinger ed5f368d65 Version 6.6.0.4 2019-08-06 19:57:46 +02:00
Theo Arends 250c991c97 6.6.0.3 - Change filename of configuration backup from using FriendlyName1 to Hostname solving diacritic issues
Change filename of configuration backup from using FriendlyName1 to Hostname solving diacritic issues (#2422)
2019-07-25 14:18:28 +02:00
Theo Arends 49022d0320 6.6.0.2 Add support for Sonoff iFan03 as module 71
Add support for Sonoff iFan03 as module 71 (#5988)
2019-07-14 15:23:02 +02:00
Theo Arends 0243e2be7e Add command SetOption42 0..255 to set over temperature in Celsius. Defaults to 90
Add command SetOption42 0..255 to set over temperature in Celsius. Defaults to 90 (#6036)
2019-07-08 14:16:33 +02:00
Theo Arends c3584cc8ed Bump version to v6.6.0
Bump version to v6.6.0
2019-07-06 15:15:29 +02:00
Theo Arends 2b5c691041 6.5.0.16 Refactor TLS and Add visibility toggle to GUI password
6.5.0.16 20190611
 * Refactored TLS based on BearSSL, warning breaking change for fingerprints validation (see doc)
 * Add checkbox to GUI password field enabling visibility during password entry only (#5934)
2019-06-11 14:30:07 +02:00
Theo Arends 073fd5c2cd 6.5.0.15 Change pubsubclient MQTT_KEEPALIVE from 10 to 30 seconds
6.5.0.15 20190606
 * Change pubsubclient MQTT_KEEPALIVE from 10 to 30 seconds in preparation of AWS IoT support
2019-06-06 12:14:04 +02:00
Theo Arends ffd36e0b2d 6.5.0.14 Webserver HTML/Javascript changes
6.5.0.14 20190602
 * Change webserver HTML input, button, textarea, and select name based on id
 * Fix webserver multiple Javascript window.onload functionality
2019-06-02 16:44:02 +02:00
Theo Arends 22663fc10c 6.5.0.13 Add command SetOption38 6..255
6.5.0.13 20190527
 * Add command SetOption38 6..255 to set IRReceive protocol detection sensitivity mimizing UNKNOWN protocols (#5853)
2019-05-27 11:56:14 +02:00
Theo Arends 763118b626 6.5.0.12 Add support for link LED and four power LEDs
6.5.0.12 20190521
 * Add AriLux RF control GPIO option "ALux IrSel" (159) replacing "Led4i" (59) for full LED control (#5709)
 * Add LED GPIO option "LedLink" (157) and "LedLinki" (158) to select dedicated link status LED (#5709)
 * Add support for up to four LEDs related to four power outputs. Enabled when "LedLink(i)" is configured too (#5709)
 * Add extended LED power control using command LedPowerX where X is 1 to 4. Enabled when "LedLink(i)" is configured too (#5709)
2019-05-21 18:11:39 +02:00
Theo Arends a777bb6cdf 6.5.0.11 Add command SetOption64 0/1 to switch between "-" or "_" as sensor index separator
6.5.0.11 20190517
 * Add command SetOption64 0/1 to switch between "-" or "_" as sensor index separator impacting DS18X20, DHT, BMP and SHT3X sensor names (#5689)
2019-05-17 14:23:21 +02:00
Theo Arends 6177787744 Revert "6.5.0.11 Change sensor names using a minus"
This reverts commit 61c59fa4b9.
2019-05-17 14:06:36 +02:00
Theo Arends 61c59fa4b9 6.5.0.11 Change sensor names using a minus
6.5.0.11 20190517
 * Add user define INDEX_SEPARATOR to control Sensor Name index character which was fixed to "-" (minus) but is now changed to "_" (underscore) for future support.
 *  This change impacts DS18X20, DHT, BMP and SHT3X sensor names.
2019-05-17 12:07:37 +02:00
Theo Arends ad54ece2fb 6.5.0.10 Enable ADC0 by default
6.5.0.10 20190513
 * Enable ADC0 by default in my_user_config.h (#5671)
 * Add user configurable ADC0 to Module and Template configuration compatible with current FLAG options (#5671)
2019-05-13 15:56:01 +02:00
Theo Arends e8e7b25b80 6.5.0.9 Add command SetOption63
6.5.0.9 20190418
 * Add command SetOption63 0/1 to disable relay state feedback scan at restart (#5594, #5663)
 * Fix TasmotaSerial at 9600 bps solving DFPlayer comms (#5528)
 * Fix Shelly 2.5 overtemp
2019-04-18 16:24:46 +02:00
RevK 6d391103d7
Fix use of SerialDelimiter value 128 2019-04-13 06:50:04 +01:00
Theo Arends df6645481e 6.5.0.7 Add command LedMask
6.5.0.7 20190410
 * Add command LedMask to assign which relay has access to power LED (#5602, #5612)
2019-04-10 14:26:36 +02:00
Theo Arends aa91caa35e 6.5.0.6 Add WebColor parameters to Settings
6.5.0.6 20190409
 * Add WebColor parameters to Settings making them persistent and remove the need for using a rule
 * Add alternative IRSend command syntax IRSend raw,<freq>,<header mark>,<header space>,<bit mark>,<zero space>,<one space>,<bit stream> (#5610)
2019-04-09 13:56:19 +02:00
Theo Arends 43a61b3e24 6.5.0.5 Add compile time GUI color options
6.5.0.5 20190406
 * Add compile time GUI color options (#5586)
2019-04-06 18:25:26 +02:00
Theo Arends 8ff2759ccc 6.5.0.4 Fix Configure Timer Web GUI
6.5.0.4 20190402
 * Fix Configure Timer Web GUI (#5568)
 * Add validation check when loading settings from flash
2019-04-02 15:47:39 +02:00
Theo Arends f7c30250c1 Change some more defines to const
Change some more defines to const
2019-03-31 11:59:04 +02:00
Theo Arends e8e5d1c03c 6.5.0.3 Add command Sensor20
6.5.0.3 20190328
 * Add command Sensor20 1..255 to change Nova Fitness SDS01 working period in minutes (#5452)
2019-03-28 12:06:48 +01:00
Theo Arends 1c7fb82af8 6.5.0.2 Change UDP initial message handling
6.5.0.2 20190325
 * Change UDP initial message handling from string to char using static memory and add debug info (#5505)
2019-03-25 16:03:28 +01:00
Theo Arends b7f89c0a8c 6.5.0.1 Change GUI data collection
6.5.0.1 20190319
 * Change Web GUI sensor data collection
2019-03-19 17:31:43 +01:00
Theo Arends bcd6cf0e34 Release 6.5.0
Release 6.5.0
2019-03-19 15:37:21 +01:00
Theo Arends ca5c3d1eeb 6.4.2.22 Remove support for MQTT_LIBRARY_TYPE
6.4.2.22 20190315
 * Remove support for MQTT_LIBRARY_TYPE, MQTT_ARDUINOMQTT and MQTT_TASMOTAMQTT (#5474)
2019-03-15 14:29:47 +01:00
Theo Arends ecbe6ac618 6.4.1.21 Fix exception on GUI
6.4.1.21 20190309
 * Fix exception on GUI Configure Logging and Configure Other (#5424)
2019-03-09 14:39:48 +01:00
Theo Arends d790b1cfca 6.4.1.20 Webserver uses chunks
6.4.1.20 20190304
 * Changed webserver content handling from single String to small Chunks increasing RAM
2019-03-04 18:16:07 +01:00
Theo Arends c0f20d31ff 6.4.1.19 Add command SetOption37
6.4.1.19 20190222
 * Add command SetOption37 for RGBCW color mapping (#5326)
2019-02-25 11:14:33 +01:00
Theo Arends 05b0280019 6.4.1.18 - Fix some exceptions and watchdogs
6.4.1.18 20191221
 * Fix some exceptions and watchdogs due to lack of stack space - part 1 (#5215)
2019-02-21 14:31:31 +01:00
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 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 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
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
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 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 dcabb9c6dc 6.4.1.10 Fix Hass discovery of MHZ19(B)
6.4.1.10 20190121
 * Fix Hass discovery of MHZ19(B) sensors (#4992)
2019-01-21 22:18:19 +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
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 cb8963a7bf 6.4.1.7 Fix regression energy sensors
6.4.1.7 20190106
 * Fix HLW8012, HJL01 and BL0937 based energy sensors low Power (below 10W) measurement regression from 6.4.1.6
2019-01-06 12:29:38 +01:00
Theo Arends 41351001f5 6.4.1.6 Re-introduce Cal commands
6.4.1.6 20190105
 * Add commands PowerCal, VoltageCal and CurrentCal for HLW8012, HJL01 and BL0937 based energy sensors
2019-01-05 15:39:56 +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