Commit Graph

1278 Commits

Author SHA1 Message Date
Theo Arends fa82a48789 Fix Sonoff WTS01 temperature sensor shows incorrect negative temperature (#19373) 2024-10-14 15:28:33 +02:00
Theo Arends 3969c80242 Add DALI commands (#22214)
- Add command ``DaliSend <address>|<address+256>,<command>`` to send command (address+256 is repeat) on DALI bus
- Add command ``DaliQuery <address>|<address+256>,<command>`` to send command (address+256 is repeat) on DALI bus and wait up to DALI_TIMEOUT ms for response
2024-10-14 12:27:01 +02:00
s-hadinger 314fcd0dbc
Berry Serial `config` to change parity on-the-fly for RS-485 (#22285) 2024-10-13 22:15:47 +02:00
Theo Arends 0c7e8c67f3 Update changelogs 2024-10-13 12:03:31 +02:00
sfromis c07b8a59c0
Fixing build error xdrv_13_display.ino with JPEG_PICTS (#22265)
On ESP32, with `#define JPEG_PICTS` without the scripter, build fails due to the function `Draw_jpeg` being defined after use. Order swapped to satisfy the compiler.

Change tested to compile without errors, but not being 100% sure of when/how it is supposed to work, no verification of this.
2024-10-13 11:10:27 +02:00
Grzegorz 63d44c8b30
Add prohibit function for MiElHVAC (#22269)
Add Prohibit functions:
* Power
* Temperature
* Mode
 and all combinations of this functions
Updated VaneV names for better identify
2024-10-13 11:09:51 +02:00
Theo Arends 4b06cb27b0 Adhere to DALI naming 2024-10-11 17:27:12 +02:00
Theo Arends b53ac4a14e Fix next core I2C2 compilation 2024-10-11 14:11:00 +02:00
Theo Arends 154f478b5c Fix Berry I2C2 compilation 2024-10-11 12:44:05 +02:00
Theo Arends a839144491 Update changelogs 2024-10-11 11:54:08 +02:00
s-hadinger cc6ec3648f
Berry Zigbee removed test code (#22263) 2024-10-10 19:50:57 +02:00
Theo Arends db47b92bc1 Dali add power control 2024-10-10 18:16:32 +02:00
Theo Arends c7845f1864 Dali add dimmer control 2024-10-10 18:04:27 +02:00
Theo Arends 04f3df8bf6 Add command ``DaliWeb 1`` to enable light control for broadcast address
- Change DaliDimmer range from 0..254 to 0..100
2024-10-10 17:49:11 +02:00
Theo Arends 1a5e6db02d Dali add better receive error detection 2024-10-08 17:54:17 +02:00
Theo Arends d986f7f7c7 Extend Dali driver 2024-10-07 18:08:58 +02:00
Theo Arends 3e0d36af9d Extend Dali driver 2024-10-07 18:03:20 +02:00
Grzegorz abc6e46354
Add Air Direction control for MiElHVAC (#22241)
* Update xdrv_44_miel_hvac.ino

Code structure cleanup,
Add Power, SetTemperature, Mode, SwingV, SwingH, FanSpeed to JSON StatusSNS MiElHVAC

* Update xdrv_44_miel_hvac.ino

* clesnup

* Revert "Update xdrv_44_miel_hvac.ino"

This reverts commit 45f813d32c.

* revert styling and format

* make operation and compressor indyvidual and remove unnecessary sep

* Update xdrv_44_miel_hvac.ino

* Update xdrv_44_miel_hvac.ino

* Use uppercase

* Update xdrv_44_miel_hvac.ino

* Added AirDirection control modes (even, indirect, direct)
* Added to WIDEWANE MAP - ISEE position (if AirDirection is used)
* Update WIDEWANE position values

* fix data size
2024-10-07 08:54:23 +02:00
Theo Arends 4196f753c8 Update changelogs 2024-10-06 22:40:28 +02:00
Theo Arends 0240da2bf7 Fix Dali received data decoding
- Add support for DALI 1 on ESP8266
2024-10-06 21:57:59 +02:00
Grzegorz ba687deaf5
Bridge Mitsubishi AC devices to Homebridge/Homekit locally (#22236)
* Update xdrv_44_miel_hvac.ino

Code structure cleanup,
Add Power, SetTemperature, Mode, SwingV, SwingH, FanSpeed to JSON StatusSNS MiElHVAC

* Update xdrv_44_miel_hvac.ino

* clesnup

* Revert "Update xdrv_44_miel_hvac.ino"

This reverts commit 45f813d32c.

* revert styling and format

* make operation and compressor indyvidual and remove unnecessary sep

* Update xdrv_44_miel_hvac.ino

* Update xdrv_44_miel_hvac.ino

* Use uppercase
2024-10-05 23:13:56 +02:00
Damian Wrobel bf0f7316b9
Avoid sending more then one Modbus TCP response (#22223)
Prevent from sending more then one Modbus TCP response
for a single request.

This might happen in the following scenario where,
shortly after the first response has been sent (4),
the second one will be send (8) (note the same
'TransactionId') triggered by the response to the
'ModbusSend' request issued by Berry (5).

The log excerpt from such a situation:

(1) 21:13:20.510 MBS: MBRTCP to Modbus TransactionId:520, deviceAddress:4, functionCode:3, startAddress:8193, count:1, recvCount:1, recvBytes:2
(2) 21:13:20.523 MBS: Serial Send: 04 03 20 01 00 01 DE 5F
(3) 21:13:20.647 MBS: Serial Received: 04 03 02 0A 28 72 FA
(4) 21:13:20.652 MBS: MBRTCP from Modbus TransactionId:520, deviceAddress:4, writing:11 bytes to client (error:0)
(5) 21:13:20.724 CMD: Grp 0, Cmd 'MODBUSSEND', Idx 1, Len 89, Pld -99, Data '{"deviceAddress":4, "functionCode":6, "startAddress":8192, "type":"uint16", "Values":[6]}'
(6) 21:13:20.743 MBS: Serial Send: 04 06 20 00 00 06 02 5D
(7) 21:13:21.009 MBS: Serial Received: 04 06 20 00 00 06 02 5D
(8) 21:13:21.014 MBS: MBRTCP from Modbus TransactionId:520, deviceAddress:4, writing:12 bytes to client (error:0)

Use 'tcp_transaction_id' field to denote that we already
sent a response.

Signed-off-by: Damian Wrobel <dwrobel@ertelnet.rybnik.pl>
2024-10-02 21:34:48 +02:00
Grzegorz 6fa38e4b83
Add heat/dry/cool isee operation mode to xdrv_44_miel_hvac.ino (#22216)
* Add heat/dry/cool isee operation mode to xdrv_44_miel_hvac.ino

This add heat, dry, and cool isle operation mode to support new AC devices. Closes also #10937

* remove duplicated wide vane mode
2024-09-30 11:21:12 +02:00
Theo Arends 2d80f87fc9 Attempt 2 to fix Dali core 3 compilation (#22214) 2024-09-30 09:50:15 +02:00
Theo Arends 5d4230d39b Attempt to fix Dali core 3 compilation (#22214) 2024-09-29 17:11:13 +02:00
Theo Arends b2b839fa83 Add support for Sonoff SPM v1.3.0 (#13447) 2024-09-28 17:57:31 +02:00
pharaocurt 5909eec188
fix compile error with core 3.0.0 for Range Extender driver xdrv_58_range_extender.ino (#22205)
* final ported range_extender

* removed #define USE_WIFI_RANGE_EXTENDER_PORTADD, because new framework-arduinoespressif32 @ 3.1.0+sha.22a3b096 is available with CONFIG_LWIP_IPV4_NAPT_PORTMAP=y
2024-09-27 20:16:28 +02:00
Theo Arends 452031fbbd Add Energy Export Active support to BL0906 (Athom EM2/EM6) 2024-09-27 18:08:22 +02:00
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