Commit Graph

1250 Commits

Author SHA1 Message Date
Theo Arends 622b8b10c0 SSPM show only if powered ON 2024-09-25 11:06:51 +02:00
Theo Arends e3c47851b7 First fix SPM v1.3.0 report values (#13447) 2024-09-24 22:36:02 +02:00
gemu 3707d4b239
Sml update (#22185)
* some refactoring

* refactoring, save some ram
2024-09-22 12:20:02 +02:00
Tim Connors 694691e34a
Refactor and fix PID sensor (PID_USE_LOCAL_SENSOR) read race condition (#22162)
* Refactor and fix PID sensor (PID_USE_LOCAL_SENSOR) read race condition

Refactor PID since it was calling pid.tick willy-nilly upon demand
from MQTT and the web instead of on a periodic basis (and was being
called with time interval of 0 when those times lined up!).  Refactor
web/mqtt display because there was shared code (that code turned out
to be misguided and belonged in Every_Second loop, but now we are also
similar to 39 thermostat)

Logging revealed that the vast majority of the time the sensor JSON
was parsed to obtain current sensor data when using PID local sensor,
it was failing to parse (and it would typically only work for a second
around TELE_PERIOD, but even then, not reliably).  This bug almost
certainly affects xdrv_39_thermostat too, but using
xsns_75_prometheus.ino as a template, we are able to update PV once
per second, which allows us to be a lot more responsive.  There is no
danger of being "too responsive" because that's the point of PID, and
the PID loop already scales feedback by interval between ticks.

* Reduce logging of PID now that query side-effects removed

* Comment out all new logging, but leave present for next debugger
2024-09-20 12:06:41 +02:00
s-hadinger be46b95d62
MQTT add warning if trying to connect without TLS on a port that normally uses TLS (#22175) 2024-09-19 23:12:46 +02:00
Theo Arends 9238ee73d6 Add ESP8266 experimental support for second I2C bus 2024-09-19 14:47:18 +02:00
Theo Arends a30f47a901 Fix bad define ESP82666 2024-09-19 11:07:16 +02:00
Theo Arends a5730a76f9 Add command entered to command error and command unknown message 2024-09-17 16:24:45 +02:00
s-hadinger 1bfbe02a29
Berry I2C to prepare M5Stack I2C STM32 based devices (#22143) 2024-09-14 12:25:23 +02:00
Theo Arends 1dff0b4b27 Add support for RX8010 RTC as used in IOTTIMER (#21376) 2024-09-13 13:53:01 +02:00
s-hadinger 6e4517de02
Berry virtual Energy driver (#22134) 2024-09-12 19:38:04 +02:00
stefanbode 05e59b048e
Fix remaining issues on shutterinvert (#22120)
found another place where the invert was not reported correctly
2024-09-10 14:48:51 +02:00
s-hadinger 7247cd6c44
Fixed Berry energy missing attributes (#22116) 2024-09-09 21:50:06 +02:00
Damian Wrobel 6650dee578
Fix ModbusBridge request/response logic (#22075)
- Fix cases where the subsequent Modbus packet
  can be send to the serial port (triggered either by
  'ModbusSend' command or request from TCP bridge)
  before an answer was received to the previous packet.

  This can happen in a setup where simultaneously:
  - two (or more) modbus TCP clients are sending requests
    through the modbus-proxy [1] to Tasmota,
  - ModbusSend commands are executed (e.g. using Berry).

  Log excerpt (from build with TASMOTAMODBUSDEBUG enabled):
  14:51:18.940 MBS: Serial Send: 04 03 01 00 00 09 84 65
  14:51:19.054 MBS: Serial Send: 04 03 10 0A 00 05 A1 5E
  14:51:19.136 MBS: Serial Received: 04 03 0A 00 00 00 D0 00 00 01 AB 00 00 89 62

  Fix adds 'waitingForAnswerFromSerial' flag which is set after
  we send data to the serial port and prevents sending another
  requests before we receive an answer or timeout happened.

  Fix stores temporarily a 'ModbusSend' command data and tries
  to execute it after Modbus response has been received or
  timeout has happened.

- Add 'ModbusSerialTimeout' command which sets timeout in [ms]
  for how long we will be waiting for an answer from the client device.
  Default value is 1000 [ms] and it is not restored after reboot.

- Sends error 11 (0xB) (as TCP response) when no answer was received
  from the serial port within the timeout set by 'ModbusSerialTimeout'
  command.

- Add Modbus 'TransactionId' to the logging.

[1] https://github.com/tiagocoutinho/modbus-proxy

Signed-off-by: Damian Wrobel <dwrobel@ertelnet.rybnik.pl>
2024-09-09 10:26:20 +02:00
pbrinette 28bbf11dbb
Enhance the KNX capabilities of Tasmota to offer more flexibility and features (#22071) 2024-09-09 09:25:11 +02:00
s-hadinger 9ac2a69603
Matter support for Zigbee Occupancy and Light 0/1/2 (OnOff / Dimmer / White Color Temperature) (#22110) 2024-09-08 23:16:19 +02:00
stefanbode 744e50acf7
Fix missing HOLD on shutterbutton (#22108)
#21986
2024-09-08 16:50:37 +02:00
s-hadinger 5f80251414
Berry Zigbee improvements to prepare Matter (#22083) 2024-09-03 23:22:50 +02:00
s-hadinger 4164887412
Zigbee avoid disabling console serial on ESP32 and improved log messages (#22082) 2024-09-03 23:06:07 +02:00
Steffen caa501b1af
add support for nexus protocol to rc-switch library (#21886)
* add support for nexus protocol to RCSwitch library

Nexus protocol is used by temperature and humidity sensor that operate at 433 MHz.
It is used by various brands.

* calc separation limit for RCSwitch library automatically
2024-09-01 16:04:40 +02:00
s-hadinger 11ed65560b
LVGL Added OpenHASP icons to font `montserrat-28` (#22048) 2024-08-29 16:57:01 +02:00
s-hadinger e7f120d443
Berry make `energy` modules changes from #21887 backwards compatible (#22046) 2024-08-29 16:02:14 +02:00
s-hadinger e8cdeaba6b
ESP32 LVGL library from v9.1.0 to v9.2.0 (#22031) 2024-08-27 23:36:38 +02:00
Theo Arends a10e3b9bc5 GPIOViewer function shuffle. No functional changes 2024-08-26 16:48:39 +02:00
Theo Arends 969611835c Fix GPIOViewer on ESP32 (needs upcoming core change) 2024-08-26 15:26:36 +02:00
gemu c35c493809
i2s wav player (#22003)
* i2s wav player

* move framepointer
2024-08-26 08:48:35 +02:00
s-hadinger 645ce4a1ee
Zigbee reduce serial logging (#22012) 2024-08-24 23:53:42 +02:00
s-hadinger d084be23db
Zigbee extend timeout for MCU reboot from 5s to 10s (#22009) 2024-08-24 18:32:35 +02:00
Theo Arends 831597e7d9 Version v14.2.0.3
- Add command ``SetOption69 1`` to enable Serial Bridge inverted Receive (#22000)
2024-08-23 11:22:26 +02:00
Theo Arends 4144f5c5ca Change GPIOViewer from v1.5.5 to v1.5.6 2024-08-22 18:03:39 +02:00
Theo Arends ba7161fb00 Fix ESP8266 energy cal range chk 2024-08-20 17:30:18 +02:00
Theo Arends ab2d6c1169 Add Energy command ``PowerSet 60,230`` to calibrate both Current and Power with known resistive load of 60W at 230V using calibrated Voltage 2024-08-20 13:08:56 +02:00
Theo Arends c5b92d3ab1 Add Energy Log level 4 message when (Calculated) Apparent Power is less than Active Power indicating wrong calibration (#20653) 2024-08-19 22:31:56 +02:00
Theo Arends 4f62a0deab Refactor to TimeReacged() 2024-08-18 12:46:23 +02:00
Theo Arends c0eb28dae9 Harden shutter timeouts 2024-08-16 11:53:58 +02:00
stefanbode 6d2647fd5f
fix potential overflow on uptime 2nd try (#21966)
* fix potential overflow

* fix potential overflow

* fix overflow on millis()

* fix overflow on millis()

* Update xdrv_27_shutter.ino

---------

Co-authored-by: Theo Arends <11044339+arendst@users.noreply.github.com>
2024-08-15 14:28:10 +02:00
stefanbode 851f11dcdd
fix potential overflow on uptime (#21965)
* fix potential overflow

* fix potential overflow

* fix potential overflow

* fix potential overflow
2024-08-15 10:08:54 +02:00
Theo Arends 8f75684cd7 Add Rule and Scripter xdrv sensor polling 2024-08-13 12:28:09 +02:00
Theo Arends 5bac2a2331 Revert "Add Rule and Scripter xdrv sensor polling"
This reverts commit cc2ea328d5.
2024-08-11 19:29:10 +02:00
Theo Arends cc2ea328d5 Add Rule and Scripter xdrv sensor polling 2024-08-11 17:47:01 +02:00
Theo Arends d3f6d7d844 Sync ESP8266 energydriver with ESP32 2024-08-10 17:15:05 +02:00
s-hadinger f88a635d5d
Zigbee loads device data early before MCU startup (#21917) 2024-08-06 12:43:15 +02:00
Theo Arends 3473c3c1b0 Fix scientific notation for 1234.5 (#21131) 2024-08-04 17:42:15 +02:00
s-hadinger 3c884118ed
Berry `zigbee.started()` (#21895) 2024-08-02 19:42:11 +02:00
s-hadinger 6b98a320b1
Berry `zigbee.find()` (#21889) 2024-08-02 15:43:31 +02:00
s-hadinger 010ca34622
Berry `energy` module support for 8 phases and move to pseudo-arrays (#21887)
* Berry `energy` module support for 8 phases and move to pseudo-arrays

* add size()
2024-08-01 22:37:37 +02:00
s-hadinger a3ed99e549
Change Energy `power_history` arrays to prepare for Berry mapping (#21876) 2024-07-31 14:27:34 +02:00
gemu ba596993a0
fix sd mmc free space display (#21869)
* fix sd mmc free space display

* Update xdrv_50_filesystem.ino
2024-07-30 22:24:31 +02:00
s-hadinger 55cb473e13
Berry `webserver_async` (#21836)
* Berry `webserver_async`

* Shrink size and include only when USE_BERRY_DEBUG
2024-07-26 09:32:12 +02:00
s-hadinger b62b2d0d93
Matter support for split lights (`SetOption68 1` and `SetOption37 128`) (#21834) 2024-07-24 10:20:25 +02:00