Commit Graph

669 Commits

Author SHA1 Message Date
Subhash Chandra 2f616eef2c
make IRHVAC send incremental changes. (#18310)
This change will allow mqtt messages simpler by allowing something like
`publish cmnd/ir-bridge/IRHVAC {"Power": "On"}`.
The simpler format is required for working with mqtt clients like
iotMQTTPanel or similar on android.

Limitations:
- Requires full message be sent at-least once. I work around this with
   a `system#boot` rule
- Gets messy with multiple devices. I have only one AC per room, and
  this doesn't doesn't interfere with other IR devices.

TODO:
- [ ] Change the build flag `INCREMENTAL_IRAC`to a `SetOption`
- [ ] Persist `irac_prev_state` across reboots.
- [ ] Support multiple devices.
2023-06-10 14:53:02 +02:00
btsimonh 63cc575c8b
Berry Webclient: Change StreamBytes to StreamBeBytesWriter, and improve wc_getbytes (#18837)
This reduces allocation to a single allocaiton, but also theroetically allows the Bytes object to grow if content-length was unset.

(cherry picked from commit 936477f5977dd1a4f899498cc7cc0baf05b34a89)
2023-06-10 11:28:31 +02:00
Barbudor 6aed929e17
fix #18817 http response for status with retain (#18819)
* fix http response for status with retain

* take 2

* add a failsafe when JSONlen reach zero
2023-06-09 07:59:24 +00:00
btsimonh fc92dc0995
Add wcclient.get_bytes() to Berry (#18829)
(cherry picked from commit 5903b21448a3f088b12bd47a04996ff84e467a3a)
2023-06-09 08:56:05 +02:00
blakadder 676165f3f6
better way to support LSBJ (#18827) 2023-06-08 20:39:02 +02:00
blakadder ae67c6cfa1
Add support for INMP441 MEMS microphone (#18823)
* Add INMP441 MEMS mic support

* add I2S audio defines as preview
2023-06-08 16:24:44 +02:00
blakadder 5a8f13d57f
Pdm_mic (#18807)
* add I2S LSB flag

* add support for PDM microphones
2023-06-07 12:34:44 +02:00
blakadder 24233924c5
add I2S LSB flag (#18793) 2023-06-04 23:01:46 +02:00
s-hadinger f8df9e5f00
Berry `webclient.url_encode()` is now a static class method, no change required to existing code (#18775) 2023-06-02 13:29:57 +02:00
jonschz 9d57a19be3
Fix interaction of `SO92`, `VirtualCT`, and `RGBWWTable` (#18768)
* remove unused variable

* Relocate SO92 implementation
This way, SO92 does not ignore SO106

* Relocate RGBWWTable implementation
This fixes a bug related to RGBWWTable and SO92.
Also, the code is tidier this way

* Cleanup: Reduce code duplication

* more consistent behaviour for SO92 and free_cw

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2023-06-01 22:12:57 +02:00
s-hadinger b9d855ef79
Berry RS256 crypto algorithm (RSASSA-MCKS1_v1-5 with SHA256) used for JWT (#18763) 2023-06-01 10:02:23 +02:00
s-hadinger 3c75bc92a2
Zigbee Berry mapping fix attributes (#18747) 2023-05-29 23:05:45 +02:00
Theo Arends 07b7a7ee9a Fix initial ESP32 Energy kWh total time 2023-05-29 16:19:55 +02:00
s-hadinger fe570a1b26
Matter Border Router for ESP8266 (experimental) (#18734) 2023-05-29 10:40:24 +02:00
Theo Arends d91e1e8bcc Fix berry scheme select 2023-05-27 12:33:50 +02:00
Theo Arends e87714dbcd Add TODO 2023-05-26 17:51:20 +02:00
Theo Arends fcf3477165 Initial support for WS2812 scheme 14 2023-05-26 17:47:57 +02:00
s-hadinger 6fa22aae6b
adjust neopixel busy time (#18723)
* adjust neopixel busy time

* Adjust time for Berry
2023-05-25 19:21:18 +02:00
Theo Arends e05d75248e Add undocumented feature 2023-05-25 17:13:31 +02:00
Theo Arends d0e88c9dae Fix BusyDelay WS2812 2023-05-24 17:24:48 +02:00
Theo Arends fc67cca8b4 Add generic SystemWaitIfBusy() to fix WS2812 led flicker
Add generic SystemWaitIfBusy() to fix WS2812 led flicker
2023-05-24 16:21:59 +02:00
gemu 242eb3074a
fixes and enhancements (#18718)
* onewire fixes, webui radiobuttons

* fix regression
2023-05-23 11:30:59 +02:00
Theo Arends 22abc8ad99 Fix ESP32 InfluxDb initial connection delays
Fix ESP32 InfluxDb initial connection delays using HTTPClient (#18015)
2023-05-21 16:21:43 +02:00
Theo Arends ae518424bc Add IPv4 DNS lookup to influxdb
- Add IPv4 DNS lookup to influxdb (#18015)
- Add response to influxdb send
2023-05-21 15:34:36 +02:00
stefanbode a76ebaae48
Shutter continuous improvement (#18701)
* Update xdrv_27_esp32_shutter.ino

* Update xdrv_27_shutter.ino

* Update xdrv_01_9_webserver.ino

* Update xdrv_12_discovery.ino

* shutterinvert

removed slider display to driver
fix wrong invert display

* codereduction+refactor slider

removed webui slider into driver
optimized code

* update slide, fix invert shutters

- refactor sliders into driver
- fix percent calculation on iverted shutters

* fix on realpercent if inverted shutter

* fix ShutterPercentToRealPosition

fix on inverted shutter

* added shutter to bootloop reset

* bugfix integration

* bugfix
2023-05-21 12:25:11 +02:00
Bernhard Urban-Forster d5ad79985b
haas: sync shutter discovery and fix for more than 4 shutter (#18694)
* discovery: hoist shutter computation out of loop

* haas: sync shutter discovery and fix for more than 4 shutter
2023-05-20 09:06:56 +02:00
Theo Arends 4afcdc11d6 Simplify Berry Mute option 2023-05-19 16:30:48 +02:00
s-hadinger 043ea2986b
Berry `tasmota.wifi()` would wrongly report wifi as up (#18687)
* Berry `tasmota.wifi()` would wrongly report wifi as up

* Fix ESP8266 compile

* Fix display of IP in wifiman

* Improve wifiman IP handling for IPv6
2023-05-18 11:23:09 +02:00
stefanbode 4d131fd543
zero-cross dimmer cleanup (#18674)
removed zero cross dimmer initialize
2023-05-17 08:54:22 +02:00
stefanbode adff41f962
bugfix (#18673) 2023-05-16 22:34:07 +02:00
btsimonh f8b26a90f6
Add mutex to many camera functions. (#18655)
* Add mutex to many camera functions.

* Allow stream to continue after wcinit command (and other commands which reconfigure).

* Adust retries on camera init, specifically log success if it retried.
Shorten messages to save rom.
I have seen fail of 0x103 and 0x20002 succeed on second try.
2023-05-16 12:21:25 +02:00
s-hadinger 81d7785f66
LED PWM ac_dimmer curve was wrongly applied instead of Gamma (#18666) 2023-05-15 22:51:14 +02:00
s-hadinger 98bfc172c1
Zigbee support for air sensors (#18665)
* Zigbee support for air sensors

* ppm
2023-05-15 22:04:13 +02:00
Theo Arends f1a9a0b45b Add support for PCA9557
Add support for PCA9557 8-bit I/O expander (#18632)
2023-05-14 15:08:09 +02:00
Theo Arends 26508e55fc Merge branch 'development' of https://github.com/arendst/Tasmota into development 2023-05-14 14:42:23 +02:00
Theo Arends 7cad4f95b6 Enable I2c on webcam 2023-05-14 14:42:11 +02:00
CCTweaker 885737a1fd
Add support for PCA9557 8-bit IO expander (#18632)
* add PCA9557 driver

* text correction

* added switches and buttons

* update max devices to 8

* cleanup
2023-05-14 14:19:39 +02:00
Jeroen f860722eba
Added Endianess Parameter (#18650)
https://github.com/arendst/Tasmota/discussions/18244

Co-authored-by: JeroenSt <nospam@nospam.org>
2023-05-14 14:18:45 +02:00
Jason2866 0bf27e70fe
fix logic when init cam was successful (#18653) 2023-05-14 14:08:53 +02:00
Theo Arends 86979646ff Energy power delta report delayed
Energy power delta report delayed by two seconds allowing hardware to stabilize (#17751)
2023-05-11 18:10:52 +02:00
Christian Baars 79a826a206
Update xdrv_81_esp32_webcam.ino (#18637) 2023-05-11 09:28:33 +02:00
f-reiling 3a6cd9b63c
start modus tcp bridge automatically (#18634)
* added default port for modbus tcp bridge to start automatically

* updated ifdef style

* renamed define for modbus default port
2023-05-10 14:38:52 +02:00
Jason2866 3c951d7751
fix GT911 crash in LVGL firmware (#18633)
* fix GT911 crash

* remove wrong frag when using GT911
2023-05-10 14:02:51 +02:00
Mateusz Bronk 6a7b2b0c6e
IR: Extended the A/C protocol with Command/iFeel/SensorTemp (#18612)
* IR: Added support for new A/C protocol fields

New fields introduced in IRremoteESP8266 v2.8.5:
1. Command (one of: [Control | Config | iFeel | Timer], default: Control) - allows to set IR command type (e.g. iFeel for no-beep ambient sensor report)
2. iFeel (boolean, default: false) - configures whether iFeel (ambient sensor temp. is used by the A/C unit)
3. SensorTemp - the ambient sensor temperature reading to send

Note:
 - Fan setting via int is now 6-value (breaking change -> 6 is the new max)

* IR A/C: Model now pretty-printed to JSON

Model string is the default (falls back to int if n/a)

* IR A/C: Added separate JSON resp. per command type

* No change for "kControlCommand" (default/legacy).
* SensorReport/Timer/Config commands only contain relevant JSON nodes

Additionally:
 Clock has time semantics (input: minutes, output: HH:MM), except for "config" mode,
 where state.clock is used as ConfigKey and state.sleep is used as ConfigValue.

---------

Co-authored-by: Mateusz Bronk <2566147+mbronk@users.noreply.github.com>
2023-05-09 21:35:56 +02:00
Christian Baars cf60e34578
fix webcam init for some cases (#18606)
Co-authored-by: Christian Baars <christianbaars@MacBook-Pro-von-Christian.local>
2023-05-08 09:57:00 +02:00
Theo Arends da5396a080 Add filesystem size to esp8266 GUI 2023-05-07 17:25:18 +02:00
Jason2866 eccc1af0a2
disable SHT pig on i2c / add missing GT911 defines (#18595)
* disable SHT pig on i2c / add missing GT911

* GT911 missing in config
2023-05-07 15:32:15 +02:00
Theo Arends e9d1e8c725 Change command FileUpload binary index 2023-05-06 18:09:11 +02:00
stefanbode 25e55ae073
#18548 fix shuttersetup (#18586)
- code optimization
- shuttersetup reluctant on relay to energy measure relation
2023-05-06 15:46:29 +02:00
s-hadinger 069278f966
Berry add `tcpclientasync` class for non-blocking TCP client (#18584) 2023-05-05 15:13:22 +02:00