Commit Graph
101 Commits
Author SHA1 Message Date
Jesse Hills 730441c120 [api] Update api proto to add legacy value (#8802) 2025-05-14 21:26:21 -05:00
Jesse Hills 1da8e99d27 [api] Synchronise api.proto between repos (#8720) 2025-05-09 13:33:28 +12:00
J. Nick Koston 54ead9a6b4 Reserve buffer space to avoid frequent realloc when generating protobuf messages (#8707) 2025-05-07 21:56:54 -05:00
Jesse Hills ecb91b0101 [bluetooth_proxy] Allow changing active/passive via api (#8649) 2025-04-29 12:43:55 +00:00
Keith BurzinskiandJesse Hills 2fd5f9ac58 [api] Allow noise encryption key to be set at runtime (#7296)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2025-04-17 13:15:25 +12:00
Kevin Ahrendt 00000e0ea8 [api] add voice assistant announce to the api (#8395) 2025-03-12 14:35:10 -10:00
J. Nick Koston 63a7234767 Include the bluetooth mac address in the device info when proxy is enabled (#8203) 2025-02-27 13:37:11 +00:00
J. Nick Koston dd18a219db Include Bluetooth connection slot allocations in connections free message (#8148) 2025-01-28 06:57:52 +04:00
Michael HansenandJesse Hills 5a3e1d5792 Add voice assistant methods for configuration (#7459)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2024-09-18 11:38:39 +12:00
Michael Hansen 3835ad8c1f Add voice assistant configuration messages (#7445) 2024-09-16 13:40:45 +12:00
Michael Hansen 857d79dc71 Add sample_bytes to media player supported format (#7451) 2024-09-15 23:46:54 +00:00
Michael Hansen 8bd46a43b9 Add voice assistant announce (#7377) 2024-09-09 12:54:20 +12:00
Michael HansenandJesse Hills 5a707b558d Add supported formats to media player (#7318)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2024-08-27 11:38:49 +12:00
Jesse Hills 2b25daa199 [api] Add new flag to request state/attribute once from HA only (#7258) 2024-08-13 17:12:06 +12:00
Jesse Hills 87944f0c1b Add support for doing update entity refresh/check via API. (#7190) 2024-08-04 23:58:20 -05:00
Jesse Hills 3cd2fb0843 [core] Update Entities (#6885) 2024-06-12 09:57:36 +12:00
Jesse HillsandKeith Burzinski 854d3f2e4a [voice_assistant] Timers (#6821)
Co-authored-by: Keith Burzinski <kbx81x@gmail.com>
2024-05-30 13:09:19 +12:00
Mischa Siekmann 6f53607e5a Add ANNOUNCING state to media_player. (#6691) 2024-05-14 21:40:08 +12:00
Jesse Hills 8ef7b41c91 Add datetime entities (#6513) 2024-04-26 09:19:54 +12:00
David FriedlandandJesse Hills c531a528f0 Event entity support (#6451)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2024-04-24 14:35:26 +12:00
Keith BurzinskiandJesse Hills eb89d99999 Add valve component (#6447)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2024-04-23 16:47:03 +12:00
Jesse Hills 76c5337987 Add support for time entities (#6399)
* Add time entities

* Add tests

* Add myself to datetime codeowners

* Fix publishing times with 0 values

* Log performing TimeCall

* Implement `on_time` trigger

* Rename var

* Fix initial value for time

* Add arg name for clarity

* Remove useless checks
2024-04-08 20:46:35 -05:00
Jesse HillsandMichael Hansen 6f71363d9b Send/Receive Voice Assistant audio via API (#6471)
Co-authored-by: Michael Hansen <mike@rhasspy.org>
2024-04-08 16:19:22 +12:00
RFDarterandJesse Hills 1e96a19d09 Add datetime date entities (#6191)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2024-03-11 07:52:22 +13:00
Jesse Hills 01fc0578bd Add wake word phrase to voice assistant start command (#6290) 2024-03-06 07:41:18 +13:00
dougiteixeiraandJesse Hills 323849c821 Add device class support to text sensor (#6202)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2024-02-26 11:29:39 +13:00
Jesse Hills bd6fa29f77 Regenerate api_pb2 after manual changes were added incorrectly in #5732 (#5990) 2023-12-22 14:29:10 +09:00
Stefan RadoandJesse Hills 6c7a133faa Add humidity support to climate (#5732)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-12-13 10:23:02 +09:00
Tucker KernandJ. Nick Koston ad79e4fe24 Add support for fan preset modes (#5694)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-12-12 14:13:26 +09:00
CossidandJesse Hills bcfbcd9578 Add area (zone) to esphome core config to be suggested through API and MQTT. (#5602)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-10-27 11:38:52 +13:00
e80bd8ed3d Add text component (#5336)
Co-authored-by: Maurits <maurits@vloop.nl>
Co-authored-by: mauritskorse <mauritskorse@gmail.com>
Co-authored-by: Daniel Dunn <dannydunn@eternityforest.com>
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-10-25 22:00:32 +13:00
Jesse Hills 4913b3cc35 Add stream start and end events (#5545) 2023-10-17 17:18:05 +13:00
Jimmy Hedman c9a8911029 Prepare protobuf for ESP-IDF >= 5 (#5510) 2023-10-11 11:51:53 +13:00
Jesse Hills 511af5845e Remote wake word support for voice assistant (#5229) 2023-10-10 19:52:42 +13:00
Jimmy Hedman aabe0091cc Prepare api and time for ESP-IDF >= 5 (#5332) 2023-09-04 15:51:04 -05:00
Jesse Hills 417d45939f Fix silence detection flag on voice assistant (#5120) 2023-07-19 11:38:47 +12:00
Graham BrownandJesse Hills 54474e5b33 Add Alarm Control Panel (#4770)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-06-15 12:34:39 +12:00
Jesse Hills ce13979690 Bluetooth Proxy: Raw bundled advertisements (#4924) 2023-06-09 07:41:09 +12:00
Jesse Hills 1ea5d90ea3 Continuous voice_assistant and silence detection (#4892) 2023-05-31 16:30:53 +12:00
Jesse Hills c5efaa1c00 Remove climate legacy away flags (#4744) 2023-04-27 13:11:32 +12:00
Alexander MomchilovandJesse Hills bef5b38d49 Add supports_stop trait to Cover (#3897)
* Add "stop" trait to Cover

* Add `supports_stop` to Cover protobuf msg

* Run `script/api_protobuf/api_protobuf.py`

... followed by `script/clang-format -i`

* Add `has_stop` field to template Cover

* Set `has_stop` during Cover codegen

* Set `supports_stop` trait on all other Cover types

* Bump APIVersion to 1.8

---------

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-04-23 20:51:32 +00:00
Jesse Hills b60c08dd28 Add push to talk voice assistant (#4648)
* Add push to talk voice assistant

* Refactor most code into voice_assistant

* Make voice_assistant the component and remove push_to_talk (can be done in yaml)

* Fix component setup

* Always AF_INET to match serverside

* Fix microphone and media player co-existence

* Format

* Update codeowners

* Update test file

* Fix endifs

* nullptr not NULL

* clang-tidy

* Format

* fixup: Add VA event data

* Generate proto

* Parse and log events

* Add default to switch

* Fix

* Add mic/va to test5
2023-04-11 23:45:10 +00:00
richardhoptonandJesse Hills 922344811f feat: Add support to unsubscribe from BLE advertisements (#4620)
* feat: Add support to unsubscribe from BLE advertisements

* Fix tests & clang

---------

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-03-28 08:54:58 +00:00
J. Nick Koston 9ee661c1e4 Add ability to clear the gatt cache (#4621)
* Add ability to clear the gatt cache

With BlueZ we can fully clear the cache when something goes wrong with the services, however since this is also a cache on the ESP32 we need to be able to clear the on device cache as well for the proxies since if something goes wrong with the service resolution it can cache the bad resolution on NVS forever.

Our current client implementation is limited to clearing the memory cache in Home Assistant https://github.com/home-assistant/core/blob/89355e087952417a6824507fd3b197f9d0520e19/homeassistant/components/esphome/bluetooth/client.py#L512

related issue https://github.com/esphome/issues/issues/4156

https://github.com/esphome/aioesphomeapi/pull/410

* naming

* lint

* lint

* naming

* naming

* naming

* 88 now that 87 is taken

* make const

* Update esphome/components/api/api_frame_helper.cpp
2023-03-26 21:48:56 +00:00
Fredrik GustafssonandJesse Hills 29571a1acd implement pairing for bluetooth proxy (#4475)
* default to just-works encryption

This patch will turn on encryption when making active connections in order to comply with just-works BLE encryption.

* Revert "default to just-works encryption"

This reverts commit 05bc9e9f1cca9c41cbc7434379cbd5eb6dbb1034.

* implement pair method

* adhere to clang formatter

* fix oopsie

* bump bluetooth_proxy_version

* add auth callback

* generate new protos

* fix another oopsie

* add pairing status to connection

* clear paired on connect()

* lint

* add unpair ("forget") ble method

* compile protos

* fix oopsie

* add missing unpairing method

* add unpairing

* fix get_paired return type

* remove unused memcpy

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

* change to is_paired

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

* Update bluetooth_proxy.cpp

* actually add missing method

* send auth cb on set_encryption failure

* cleanup from havin the worst test setup

* lint

* match auth events to bd_addr

* add second addr check to auth cb

* add addr check to third auth cb

---------

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-03-06 18:04:35 +00:00
Jesse Hills 0e1d018ce3 Allow specifying target and current visual steps for climate (#4440)
* Allow specifying target and current visual steps for climate

* Fixes

* format

* format
2023-02-20 22:22:43 +00:00
Michael Muré dfafc41ce6 climate: add support for quiet fan mode (#3609) 2023-02-09 11:28:16 +13:00
Jesse Hills c301ae3645 Add friendly_name to device (#4296) 2023-01-17 10:28:09 +13:00
Jesse Hills eb664b99ba preprocess out proto_enum_to_string if not needed (#4119) 2022-11-30 08:30:00 +13:00
8414bb9a7a Active BLE connection v3 (#4113)
Co-authored-by: Daniel Cousens <413395+dcousens@users.noreply.github.com>
Co-authored-by: Maurice Makaay <account+github@makaay.nl>
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2022-11-30 07:53:32 +13:00