Commit graph

705 commits

Author SHA1 Message Date
Pavlo Dudnytskyi
7e7c83b3ca
Support for Haier IR protocol added (#5403) 2023-10-09 09:49:55 +13:00
Clyde Stubbs
b6d5cb4142
St7789v and SPI data rate (#5472) 2023-10-04 15:18:33 -05:00
Clyde Stubbs
506c2ba6c7
ST7789v - Allow predefined backlight pin to be disabled. (#5476)
* Allow predefined backlight pin to be disabled.

* Add test

* Update esphome/components/st7789v/display.py
2023-10-03 20:10:26 -05:00
kahrendt
88bb051f37
Add xor automation condition (#5453) 2023-10-03 22:58:11 +13:00
Clyde Stubbs
205f41509b
Support RP2040 hardware SPI (#5466) 2023-10-03 10:24:20 +13:00
De Cock Xavier
a33b8abce8
Feat/component poller suspend (#5423) 2023-10-03 09:25:13 +13:00
Angel Nunez Mencias
2513ede3ec
Add testcases for multiple SPI buses on ESP32 Arduino (#5457) 2023-09-29 20:48:51 -05:00
Jimmy Hedman
57b7dd0fa2
Refactor ip address representation (#5252) 2023-09-27 21:38:43 +13:00
Clyde Stubbs
5360e14a9c
Fix #4896 and #4903 (#5433) 2023-09-27 12:25:14 +13:00
Samuel Sieb
1100f67b66
support keypads with pulldowns (#5404)
Co-authored-by: Samuel Sieb <samuel@sieb.net>
2023-09-21 10:26:36 +12:00
Kuba Szczodrzyński
056a28906b
Wizard: fix colored text in input prompts (#5313) 2023-09-21 10:09:23 +12:00
Keith Burzinski
736dbfac13
Add IDF 5 test yaml, add adc to IDF tests, fix adc for IDF 5 (#5379) 2023-09-13 11:36:17 +12:00
Jesse Hills
fe81bcc003
Use /data directory for .esphome folder when running as HA add-on (#5374) 2023-09-12 09:26:48 +12:00
Daniel Dunn
10eee47b6b
Make string globals persist-able using fixed size allocations (#5296)
Co-authored-by: Daniel Dunn <dannydunn@eternityforest.com>
2023-09-12 09:26:00 +12:00
Lubos Horacek
b107948c47
Wireguard component (#4256)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
Co-authored-by: Simone Rossetto <simros85@gmail.com>
Co-authored-by: Thomas Bernard <thomas0bernard@gmail.com>
2023-09-12 07:13:24 +12:00
Clyde Stubbs
d2648657fb
Native SPI RGB LED component (#5288)
* Add testing branch to workflow

* Add workflow

* Checkpoint

* Align SPI data rates in c++ code with Python code.

* Checkpoint

* CI fixes

* Update codeowners

* Workflow cleanup

* Rename to spi_rgb_led

* Rename header file

* Clang tidy

* Disable spi after transfer.

* Move enable() to where it belongs

* Call spi_setup before enable

* Clang tidy

* Add test

* Rename to spi_led_strip

* Include 'defines.h'

* Fix CODEOWNERS

* Migrate data rate to new style setting.

* Remove defines.h

* Fix class name

* Fix name in .py

* And more more name tidy up.

---------

Co-authored-by: Keith Burzinski <kbx81x@gmail.com>
2023-09-10 21:20:06 -05:00
Flaviu Tamas
e66047e072
Add BMI160 support (#5143)
* Add BMI160 support

* BMI160: use set_timeout for delay

* Add support for old compilers

Fix "warning: missing terminating ' character"

* Increase power-on delay to be more conservative

* Add helper for reading little-endian data over i2c

* Replace configuration names with globals

Note: for testing with external components, you will need to comment out the import & define your own CONF_GYROSCOPE_X, etc, in this file

* Improve icons

* Fix tests & lint
2023-09-09 21:25:09 -05:00
Ilia Sotnikov
7bb67ae94b
[ADC] Support measuring VCC on Raspberry Pico (W) (#5335)
* [ADC] Support measuring VCC on Raspberry Pico (W)

Added support for measuring VCC on Raspberry Pico (W) with ADC.
GPIO pin is provided as `VCC`, same as with ESP8266. VSYS is the voltage
being actually processed, and might have an offset from actual power
supply voltage (e.g. USB on VBUS) due to voltage drop on
Schottky diode between VSYS and VBUS on Rasberry Pico. The offset has
experimentally been found to be ~0.25V on Pico W and ~0.1 on Pico,
presumably due to different power consumption.

Example usage:

	sensor:
	  - platform: adc
	    pin: VCC
	    name: "VSYS"

* + Added tests for VCC measuring on `rpipicow` board
2023-09-09 04:00:45 -05:00
Péter Sárközi
d9523a0cbf
Fix repeat.count = 0 case (#5364)
* Only play first action if count is non-zero

* Add test to  yaml

* Update test5.yaml
2023-09-09 09:10:20 +12:00
Clyde Stubbs
5c26f95a4b
Refactor SPI code; Add ESP-IDF hardware support (#5311)
* Checkpoint

* Checkpoint

* Checkpoint

* Revert hal change

* Checkpoint

* Checkpoint

* Checkpoint

* Checkpoint

* ESP-IDF working

* clang-format

* use bus_list

* Add spi_device; fix 16 bit transfer.

* Enable multi_conf;
Fix LSB 16 bit transactions

* Formatting fixes

* Clang-format, codeowners

* Add test

* Formatting

* clang tidy

* clang-format

* clang-tidy

* clang-format

* Checkpoint

* Checkpoint

* Checkpoint

* Revert hal change

* Checkpoint

* Checkpoint

* Checkpoint

* Checkpoint

* ESP-IDF working

* clang-format

* use bus_list

* Add spi_device; fix 16 bit transfer.

* Enable multi_conf;
Fix LSB 16 bit transactions

* Formatting fixes

* Clang-format, codeowners

* Add test

* Formatting

* clang tidy

* clang-format

* clang-tidy

* clang-format

* Clang-tidy

* Clang-format

* clang-tidy

* clang-tidy

* Fix ESP8266

* RP2040

* RP2040

* Avoid use of spi1 as id

* Refactor SPI code.
Add support for ESP-IDF hardware SPI

* Force SW only for RP2040

* Break up large transfers

* Add interface: option for spi.
validate pins in python.

* Can't use match/case with Python 3.9.
Check for inverted pins.

* Work around target_platform issue with

* Remove debug code

* Optimize write_array16

* Show errors in hex

* Only one spi on ESP32Cx variants

* Ensure bus is claimed before asserting /CS.

* Check on init/deinit

* Allow maximum rate write only SPI on GPIO MUXed pins.

* Clang-format

* Clang-tidy

* Fix issue with reads.

* Finger trouble...

* Make comment about missing SPI on Cx variants

* Pacify CI clang-format. Did not complain locally??

* Restore 8266 to its former SPI glory

* Fix per clang-format

* Move validation and choice of SPI into Python code.

* Add test for interface: config

* Fix issues found on self-review.

---------

Co-authored-by: Keith Burzinski <kbx81x@gmail.com>
2023-09-08 02:27:19 -05:00
Christian
76ebbfefd2
Integration LightwaveRF switches (#4812)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-09-06 10:33:49 +12:00
JJ
74ab940aff
Adding DFRobot Ozone Sensor Support (sen0321) (#4782) 2023-09-06 10:09:22 +12:00
Jimmy Hedman
ac5c6ec288
Add debug component to all tests (#5333) 2023-09-06 07:38:58 +12:00
Clyde Stubbs
32b24726ed
Add Lilygo T-Embed to st7789v display config. (#5337)
* Add Lilygo T-Embed to st7789v display config.

* Move all configuration into the Python code.
Add presets for TTGO.
All preset configuration can be overridden.

* Add Adafruit S2 pin presets

* Add test

* Add funhouse pins.

Co-authored-by: Keith Burzinski <kbx81x@gmail.com>

* Keep ordering of options consistent

* Remove unused declarations

---------

Co-authored-by: Keith Burzinski <kbx81x@gmail.com>
2023-09-05 02:01:28 -05:00
kahrendt
562f7c8718
Debug component: add free PSRAM sensor (#5334)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-09-05 14:02:59 +12:00
Kuba Szczodrzyński
a9630ac847
Support for LibreTiny platform (RTL8710, BK7231 & other modules) (#3509)
Co-authored-by: Kuba Szczodrzyński <kuba@szczodrzynski.pl>
Co-authored-by: Sam Neirinck <git@samneirinck.com>
Co-authored-by: David Buezas <dbuezas@users.noreply.github.com>
Co-authored-by: Stroe Andrei Catalin <catalin2402@gmail.com>
Co-authored-by: Sam Neirinck <github@samneirinck.be>
Co-authored-by: Péter Sárközi <xmisterhu@gmail.com>
Co-authored-by: Hajo Noerenberg <hn@users.noreply.github.com>
2023-09-05 10:16:08 +12:00
Christian
2165960ba1
add heating functionality to SI7021 (#4828)
* add heating functoinality

* add test

* add heat

* fix

* fix

* fix

* fix

* fix

* fix sensor

* restore class

* Update esphome/components/htu21d/sensor.py

* Update esphome/components/htu21d/sensor.py

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>

* Update esphome/components/htu21d/sensor.py

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>

---------

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
Co-authored-by: Keith Burzinski <kbx81x@gmail.com>
2023-09-01 19:03:30 -05:00
Daniel Dunn
19d53c6643
Use gzip compression for the web server component's static resources (#5291)
Co-authored-by: Daniel Dunn <dannydunn@eternityforest.com>
2023-09-01 14:02:26 +12:00
Rob Deutsch
0443310385
Bump arduino-heatpumpir to v1.0.23 (#5269) 2023-08-21 12:20:00 +12:00
Jesse Hills
c287e529a8
Change haier from AUTO to HEAT_COOL (#5267) 2023-08-18 08:06:21 +12:00
Clyde Stubbs
164d05fdce
Add manufacturer data config to BLE server (#5251) 2023-08-18 08:05:25 +12:00
SeByDocKy
c11c4dad2f
Add pmwcs3 capacitive soil moisture & temperature sensor component (#4624)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-08-18 08:03:39 +12:00
Regev Brody
5cb5594288
Add configuration flow abilites to the ld2410 component (#4434) 2023-08-16 11:31:18 +12:00
Sergey Dudanov
0daf4545a9
fix midea: undo approved PR#4053 (#5233) 2023-08-14 09:06:04 +12:00
Jesse Hills
a84365659b
Read string of bool env and match against well known values (#5232) 2023-08-11 16:20:58 +12:00
Samuel Sieb
b56c606523
add value option to timeout filter (#5222)
Co-authored-by: Samuel Sieb <samuel@sieb.net>
2023-08-10 17:11:03 +12:00
Francesco Ciocchetti
f457269a68
Add missing on_(arming|pending|armed_home|armed_night|armed_away|disarmed) triggers to alarm_control_panel (#5219) 2023-08-10 17:09:21 +12:00
Greg Cormier
0ed0bdc655
New PM sensor Panasonic SN-GCJA5 (#4988) 2023-08-10 17:04:22 +12:00
kahrendt
a8fa4b56f9
New component: Add support for bmp581 pressure and temperature sensors (#4657) 2023-08-08 17:05:08 +12:00
Rudd-O
f3329fdc8c
Add KMeterISO component. (#5170)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-08-08 12:32:34 +12:00
Francesco Ciocchetti
a6b89e4e8a
Add arm night to alarm control panel (#5186) 2023-08-08 11:57:40 +12:00
André Cirne
1495fada90
Add support for a01nyub (#4863)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-08-07 12:22:18 +12:00
Keith Burzinski
56630bb717
Swap ADC back to use 'int' because C3 (#5151) 2023-07-31 09:19:06 +12:00
Mat931
cd46a69f2c
Add 'map_linear' and 'clamp' sensor filters (#5040) 2023-07-31 09:09:09 +12:00
Sergey Dudanov
a120a455bf
climate triggers Climate and ClimateCall references (#5028) 2023-07-31 07:52:01 +12:00
Sergey Dudanov
827b2def1e
Coolix IR protocol improvements (#5105)
* coolix protocol

* tests

* 24-bit range

* some DRY in coolix

* added short condition

* one more change

* final prettify

* v2023.8
2023-07-23 08:15:37 +12:00
Clyde Stubbs
ac81fae855
Add timeout filter (#5104) 2023-07-17 09:17:31 +12:00
Jesse Hills
8c6cddf1bb
Remove template switch restore_state (#5106) 2023-07-17 09:11:43 +12:00
Sergey Dudanov
a539197bc4
New 'Duty Time' sensor component (#5069) 2023-07-13 08:48:16 +12:00
Christian
119bbba254
Grove amend name (#5093) 2023-07-13 08:13:50 +12:00