Commit Graph

501 Commits

Author SHA1 Message Date
Theo Arends 9bf1bd93c0 Add some display safeguards fixing power issues at restart 2023-02-05 12:52:21 +01:00
Theo Arends 36b9e4ab78 Fix universal display driver too early power control 2023-02-04 18:24:21 +01:00
Theo Arends cfd34aa02c Fix Shelly Pro 4PM issues
- Fix random ADE7935 measurements
- Fix relay 1 toggle on restart
- Add Shelly Pro 4PM display.ini
2023-02-04 17:48:53 +01:00
s-hadinger a483991ba3
ESP32 preliminary support for Matter protocol, milestone 1 (commissioning) (#17871)
* ESP32 preliminary support for Matter protocol, milestone 1 (commissioning)

* Fix case
2023-02-04 00:00:21 +01:00
David Gwynne 052b5c2926
reset recv parser if it takes too long for the message to arrive. (#17845)
i have a tuyamcu based device that occasionally gets a flipped bit in
messages it receives from the muc. those usually show up as checksum
failures, but if the bit flips in the length field then we wait for
bytes that just arent going to arrive, so we don't get to the cksum
field for that test to fail. instead, add a timeout that the tick
checks, and reset the recv state machine on a timeout.

if the message that was corrupted was a dp update, we'll end up with
an inconsistent view of the state of the DPs. maybe we should send a
request for all datapoint values when this or a cksum failure happens?
2023-02-01 11:48:07 +01:00
s-hadinger 293ae8064d
Berry webserver raw content (#17844) 2023-01-31 23:23:52 +01:00
s-hadinger 5ea9a95660
Berry add `tasmota.locale()` (#17843) 2023-01-31 23:23:36 +01:00
Theo Arends db581b15c7 Add SetOption150
Add SetOption150 - (Energy) Force no voltage/frequency common allowing individual voltage channel calibration.
2023-01-31 22:30:50 +01:00
gemu ae8041140f
Webcam fix (#17840)
* Update xdrv_81_esp32_webcam.ino

* fix single picture fetch

* delay not needed
2023-01-31 22:22:28 +01:00
Jason2866 b8677ce0d6
revert PR Olimex fix (#17841) 2023-01-31 14:46:09 +01:00
Barbudor 3d39efaf4a
isTuya optionnal arg to validpin (#17835) 2023-01-30 22:35:38 +01:00
gemu f09a083777
Sml ams (#17828)
* sml ams crypto support

* add ams library

* fix crc names

* fix TLS dependency

* Update library.properties

* Update xsns_53_sml.ino
2023-01-30 15:03:46 +01:00
Theo Arends 9e9afe88f1 Fix ESP32 energy monitoring over 3 phases 2023-01-30 14:16:13 +01:00
Theo Arends 5b0ee76173 Fix ESP32 energy monitoring migration 2023-01-30 13:14:02 +01:00
Theo Arends db3fdc5118 Add ESP32 support for eigth energy phases/channels
- ESP32 support for eigth energy phases/channels
- ESP32 command ``EnergyCols 1..8`` to change number of GUI columns
- ESP32 command ``EnergyDisplay 1..3`` to change GUI column presentation
- support for SEN5X gas and air quality sensor by Tyeth Gundry (#17736)
2023-01-29 16:09:13 +01:00
s-hadinger 03815d827a
Berry energy_ctypes fixed accordingly (#17820) 2023-01-29 12:09:29 +01:00
s-hadinger b98b2838e8
Zigbee extend plug-in modifiers to 16 bits (#17817) 2023-01-29 10:46:06 +01:00
David Gwynne 9e522e8fa3
fix determination of the current weekday. (#17812)
the result of c logical expressions is 0 or 1, not the values of the
operands.
2023-01-29 07:58:20 +01:00
Theo Arends 76a1c00917 Add more energy verbosity at restart 2023-01-28 11:30:42 +01:00
Theo Arends e77154f406 Enable ESP32 energy driver 2023-01-28 11:03:14 +01:00
Barbudor 4dd97a9e82
non-breaking fix year in DS3231 (#17803) 2023-01-28 08:04:34 +01:00
Theo Arends 0b81236110 Prep ESP32 energy expansion 2023-01-27 16:41:55 +01:00
Theo Arends 5b977bf4e4 Merge branch 'development' into dev-energy 2023-01-27 16:00:44 +01:00
Theo Arends f6827590f3 Prep new energy driver 2023-01-27 15:53:40 +01:00
gemu 103e3f616a
refactoring and bug fixes (#17798) 2023-01-27 11:10:43 +01:00
Theo Arends 9f538e9986 Add ESP32 support for four channels 2023-01-26 17:27:49 +01:00
Theo Arends d70dbe979e Prep ESP32 energy for four+ phases 2023-01-26 15:26:10 +01:00
thkaiser 8d782caf15
Support ESPC3 and ESPS3 (#17791)
* Support ESPC3 and ESPS3

* remove debug comment

Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com>
2023-01-26 09:58:59 +01:00
Theo Arends 2529759974 Prep energy for four+ phase support 2023-01-25 17:05:48 +01:00
Barbudor 973e4693c2
possibly fix sleep problem (#17786) 2023-01-25 08:36:14 +01:00
Theo Arends e891830545 Prep ESP32 energy 2023-01-24 16:54:03 +01:00
Theo Arends e81d59f658 Fix Shelly Pro 4PM initial button state 2023-01-24 16:34:24 +01:00
Theo Arends ecac466e23 Fix Shelly Pro 4PM power on reset 2023-01-24 12:04:30 +01:00
Barbudor 95dee75b0b
use dB value, not quality (#17777) 2023-01-24 08:55:44 +01:00
David Gwynne 1c39ff6cef
add tuyamcubr_web_sensor to do a simple display of the dp values. (#17776)
the format shows the type+dpid on the left hand side (eg, Bool1,
Value2, Enum3, etc), and the value with %u on the right hand side.
2023-01-24 08:55:28 +01:00
David Gwynne 36fd8358d6
TuyaMCUBr: support on/true/off/false/toggle in the tuyamcubool command. (#17775)
* support on/true/off/false/toggle in the tuyamcubool command.

i wanted a tasmotized wall switch to be able to blindly send "toggle" to
a fan/light and have it do the right thing. the dp value is kept by the
driver, so it can easily read, modify, and write it.

* "on"/"off"/"toggle" etc are parsed when XdrvMailbox is set up

so i don't have to do it, i just have to use the payload.
2023-01-24 08:54:19 +01:00
Barbudor db0532de5f
ds3231 temperature sensor (#17778) 2023-01-24 08:52:43 +01:00
Theo Arends 4297fa3f3e Add Shelly Pro 4 input interrupt support 2023-01-23 12:51:02 +01:00
Theo Arends 88dd5f7f50 Fix Shelly Pro 4PM auto reset 2023-01-22 16:41:25 +01:00
yvesdm3000 3f73d5a49d
Implement Zigbee tuya_time sync. (#17765) 2023-01-22 11:50:52 +01:00
gemu d38a0c799c
Epaper deep sleep support (#17766)
* allow descriptor reload

* restart reason rrsn, database rewrite

* support for deep sleep

* revert

* restart reason
2023-01-22 10:56:06 +01:00
Theo Arends c85003c67d Prep Shelly Pro 4PM 2023-01-21 14:30:35 +01:00
s-hadinger 0743b7d2b6
Berry add up flag to ``tasmota.wifi()`` and ``tasmota.eth()``, always return MAC (#17759) 2023-01-21 13:41:36 +01:00
Benjamin Nestler 498b0e55b8
Add tuya commands CMD_GET_NETWORK_STATUS and CMD_TEST_WIFI (#17745)
* Add tuya commands CMD_GET_NETWORK_STATUS  and CMD_TEST_WIFI

* Assuming that nobody uses the tuya test wifi ssid, the payload is hardcoded.
2023-01-20 13:20:03 +01:00
Jason2866 6b4171fef9
Shelly has label `fs_1` for spiffs (#17753)
* Shelly has label `fs_1` for spiffs
2023-01-20 13:19:38 +01:00
David Gwynne 51866026d5
TuyaMCUBr: Handle "Get local time" requests from the MCU (#17750)
* handle get local time requests from the MCU.

from what i can tell from the tuya serial communication protocol
documentation, we only have to send the time if MCU requests it. this is
unlike how TUYA_SET_TIME is implementing in xdrv_16, where if
USE_TUYA_TIME is enabled it will send unsolicited time updates every
minute as well as in response to a request from the MCU.

i couldn't find an easy to check flag to see if tasmota was synced to a
real clock, so this blindly tells the MCU that our time is valid and
copies it over, the same as xdrv_16.

the tuya doco also describes a "Get system time in GMT" request and
response structure which would be mostly a copy of this code if i knew
if and where tasmota keeps track of UTC/GMT.

lastly, i'm not convinced RtcTime.day_of_week is right. it's friday
here which should be 6 if you start counting sunday as 1, but i read 2

* local time sync is implemented, but not gmtime
2023-01-20 10:07:42 +01:00
s-hadinger 61be95841f
Berry crypto.EC_P256 ECDSA signature ASN.1 (#17740) 2023-01-18 20:50:01 +01:00
Barbudor d904e0aa7f
Tuya - WIFI_STRENGTH + Save check on MCU_CONF (#17724)
* adding response to command 36 Get Wifi Strength

* more logs

* poperly check and warn if Mode 2 provide bad GPIOs

* final test on gpio
2023-01-17 04:46:00 +01:00
s-hadinger 457f706d17
Berry ``crypto.EC_P256`` ECDSA signature (required by Matter protocol) (#17723) 2023-01-16 21:48:28 +01:00
Barbudor 2d1d49504b
fix free() too early (#17710) 2023-01-15 16:20:35 +01:00