1
0
mirror of https://github.com/esphome/esphome.git synced 2025-09-16 18:22:22 +01:00
Commit Graph

129 Commits

Author SHA1 Message Date
Jesse Hills
786c8b6cfe Add new sensor device classes (#3895) 2022-10-11 09:54:58 +13:00
Peter Galantha
aeb81e547b Add state_class total (#3608)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2022-08-11 14:00:09 +12:00
RoboMagus
989b7be99b Pass optional args to 'new_Pvariable' when creating new entities (#3690) 2022-08-08 07:31:50 +12:00
DAVe3283
ed26c57d99 Rework NaN handling in sensor filters (#3610)
Co-authored-by: Otto Winter <otto@otto-winter.com>
2022-07-28 16:39:11 +12:00
Luca Adrian L
093989406f Added more sensor device classes (#3624) 2022-07-07 11:32:38 +12:00
Maurice Makaay
0d1028be2e Cleanup deprecated EntityBase::hash_base() (#3525)
Co-authored-by: Maurice Makaay <mmakaay1@xs4all.net>
2022-06-08 09:13:11 +12:00
Jesse Hills
256395c28d Add duration device class for sensors (#3421) 2022-04-26 21:02:08 +12:00
Jesse Hills
ba8d255cb4 Allow on_value_range for sensor and number to be templated (#3359) 2022-04-05 22:06:36 +12:00
EdJoPaTo
69633826bb Implement send_first_at for exponential_moving_average (#3240) 2022-02-21 13:13:06 +13:00
Jesse Hills
3b8bb09ae3 Add class as first positional arg to sensor_schema (#3216) 2022-02-18 10:27:20 +13:00
Oxan van Leeuwen
80d03a631e Force braces around multi-line statements (#3094)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2022-01-25 08:56:36 +13:00
Oxan van Leeuwen
7da12a878f Enable readability-redundant-member-init check (#3097) 2022-01-23 20:34:43 +13:00
Oxan van Leeuwen
89e7448007 Remove deprecated attribute from virtual entity methods (#3056) 2022-01-16 23:40:15 +01:00
Oxan van Leeuwen
073828235f Deprecate virtual methods to set entity properties (#3021) 2022-01-10 13:32:39 +01:00
Petr Vraník
5d70ff702b quantile filter support (#2900)
Co-authored-by: Oxan van Leeuwen <oxan@oxanvanleeuwen.nl>
Co-authored-by: pvranik <petr.vranik@mgm-tp.com>
2021-12-15 07:43:42 +13:00
Jesse Hills
3c0414c420 Add Entity categories for Home Assistant (#2636) 2021-11-08 07:24:52 +13:00
Sergio Mayoral Martínez
3dee057826 Add throttle_average sensor filter (#2485) 2021-10-13 11:35:30 +13:00
Paul Monigatti
471b82f727 EntityBase Refactor (#2418)
* Renamed Nameable to EntityBase (cpp)

* Renamed NAMEABLE_SCHEMA to ENTITY_BASE_SCHEMA (Python)

* Renamed cg.Nameable to cg.EntityBase (Python)

* Remove redundant use of CONF_NAME from esp32_touch

* Remove redundant use of CONF_NAME from mcp3008

* Updated test

* Moved EntityBase from Component.h and Component.cpp

* Added icon property to EntityBase

* Added CONF_ICON to ENTITY_BASE_SCHEMA and added setup_entity function to cpp_helpers

* Added MQTT component getters for icon and disabled_by_default

* Lint

* Removed icon field from MQTT components

* Code generation now uses setup_entity to setENTITY_BASE_SCHEMA fields

* Removed unused import

* Added cstdint include

* Optimisation: don't set icon if it is empty

* Remove icon from NumberTraits and SelectTraits

* Removed unused import

* Integration and Total Daily Energy sensors now inherit icons from their parents during code generation

* Minor comment correction

* Removed redundant icon-handling code from sensor, switch, and text_sensor

* Update esphome/components/tsl2591/tsl2591.h

Co-authored-by: Oxan van Leeuwen <oxan@oxanvanleeuwen.nl>

* Added icon property to binary sensor, climate, cover, and fan component tests

* Added icons for Binary Sensor, Climate, Cover, Fan, and Light  to API

* Consolidated EntityBase fields in MQTT components

Co-authored-by: Oxan van Leeuwen <oxan@oxanvanleeuwen.nl>
2021-10-10 10:37:05 +02:00
Otto Winter
ac0d921413 ESP-IDF support and generic target platforms (#2303)
* Socket refactor and SSL

* esp-idf temp

* Fixes

* Echo component and noise

* Add noise API transport support

* Updates

* ESP-IDF

* Complete

* Fixes

* Fixes

* Versions update

* New i2c APIs

* Complete i2c refactor

* SPI migration

* Revert ESP Preferences migration, too complex for now

* OTA support

* Remove echo again

* Remove ssl again

* GPIOFlags updates

* Rename esphal and ICACHE_RAM_ATTR

* Make ESP32 arduino compilable again

* Fix GPIO flags

* Complete pin registry refactor and fixes

* Fixes to make test1 compile

* Remove sdkconfig file

* Ignore sdkconfig file

* Fixes in reviewing

* Make test2 compile

* Make test4 compile

* Make test5 compile

* Run clang-format

* Fix lint errors

* Use esp-idf APIs instead of btStart

* Another round of fixes

* Start implementing ESP8266

* Make test3 compile

* Guard esp8266 code

* Lint

* Reformat

* Fixes

* Fixes v2

* more fixes

* ESP-IDF tidy target

* Convert ARDUINO_ARCH_ESPxx

* Update WiFiSignalSensor

* Update time ifdefs

* OTA needs millis from hal

* RestartSwitch needs delay from hal

* ESP-IDF Uart

* Fix OTA blank password

* Allow setting sdkconfig

* Fix idf partitions and allow setting sdkconfig from yaml

* Re-add read/write compat APIs and fix esp8266 uart

* Fix esp8266 store log strings in flash

* Fix ESP32 arduino preferences not initialized

* Update ifdefs

* Change how sdkconfig change is detected

* Add checks to ci-custom and fix them

* Run clang-format

* Add esp-idf clang-tidy target and fix errors

* Fixes from clang-tidy idf round 2

* Fixes from compiling tests with esp-idf

* Run clang-format

* Switch test5.yaml to esp-idf

* Implement ESP8266 Preferences

* Lint

* Re-do PIO package version selection a bit

* Fix arduinoespressif32 package version

* Fix unit tests

* Lint

* Lint fixes

* Fix readv/writev not defined

* Fix graphing component

* Re-add all old options from core/config.py

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2021-09-20 11:47:51 +02:00
dependabot[bot]
dbb195691b Bump pylint from 2.10.2 to 2.11.1 (#2334)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Otto winter <otto@otto-winter.com>
2021-09-19 19:22:28 +02:00
Paul Monigatti
64341d1d18 Fix MQTT discovery for sensor state_class (#2331) 2021-09-19 18:30:41 +02:00
Oxan van Leeuwen
e6b0a0ca2b Clean-up sensor integration (#2275) 2021-09-13 18:58:49 +02:00
Oxan van Leeuwen
d594a6fcbc Store strings only used for logging in flash (#2274)
Co-authored-by: Otto winter <otto@otto-winter.com>
2021-09-13 09:48:52 +02:00
Oxan van Leeuwen
d9cb64b893 Add device classes new in HA 2021.9 (#2248) 2021-09-07 10:12:26 +12:00
Jesse Hills
ff6bed54c6 Remove last_reset_type and convert all those sensors to TOTAL_INCREASING (#2233) 2021-09-06 08:30:47 +12:00
Jesse Hills
f0b14055b6 Add new total_increasing state-class for Home Assistant 2021.9+ (#2166) 2021-08-18 11:04:13 +12:00
Franck Nijhof
ebabf0e7d8 Add Gas device class to DSMR component (#2169) 2021-08-17 21:43:51 +12:00
Jesse Hills
93796491af Allow entities to be disabled by default in HA (#2113)
Co-authored-by: Otto Winter <otto@otto-winter.com>
2021-08-10 13:45:31 +12:00
Otto Winter
5c65f9f9ad Convert sensor_schema to use kwargs (#2094)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2021-08-01 12:21:32 +02:00
Otto Winter
618cfd9ec5 Add sensor monetary device_class (#2083) 2021-07-28 15:34:18 +02:00
Jesse Hills
3b3297d269 Adding last_reset_type to sensors that should support it. (#2039) 2021-07-21 09:20:20 +12:00
Jesse Hills
07ae8ec553 Remove a whole bunch of deprecated/removed stuff (#1981) 2021-07-14 14:42:16 +12:00
Stefan Agner
a80f9ed336 Support ESP8266 Arduino 3.0.0 (#1897)
Co-authored-by: Otto Winter <otto@otto-winter.com>
2021-06-15 08:50:58 +02:00
Stefan Agner
501f88ca86 Avoid non-const globals and enable clang-tidy check (#1892) 2021-06-11 08:19:44 +12:00
Otto Winter
360effcb72 Activate some clang-tidy checks (#1884) 2021-06-10 13:04:40 +02:00
Franck Nijhof
11fb54c74e Add support for Sensor state class (#1835)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2021-06-03 13:49:56 +12:00
Otto Winter
e3c27a483c Update sensor device classes from HA (#1825) 2021-05-24 21:45:51 +02:00
Otto Winter
a33bb32874 Convert components to async-def syntax (#1823)
* Convert components to async-def syntax

* Remove stray @coroutine

* Manual part

* Convert complexer components code to async-def

* Manual cleanup

* More manual cleanup
2021-05-24 21:45:31 +02:00
Otto Winter
aebad04c0b Convert core components to async-def coroutine syntax (#1658)
Co-authored-by: Guillermo Ruffino <glm.net@gmail.com>
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2021-05-23 22:10:30 +02:00
Otto Winter
d8e4f5d56b Sensor Average Filter Fix Floating Pointer Error Accumulating (#1624) 2021-04-09 10:27:18 +02:00
Otto Winter
586e36906d Fix sensor.sensor_schema interface changed (#1659) 2021-04-08 14:37:55 +02:00
Guillermo Ruffino
69879920eb add-black (#1593)
* Add black

Update pre commit

Update pre commit

add empty line

* Format with black
2021-03-07 16:03:16 -03:00
Gabe Cook
88b46b7487 Add min/max filters (#1569) 2021-03-05 10:10:06 -03:00
marecabo
520c4331e3 Add default device classes to sensor components (#1533)
* Add device_class arg to homeassistant sensor_schema call

* Add device_class arg to mqtt_subscribe sensor_schema call

* Add device_class arg to dht sensor_schema call

* Add device_class arg to dht12 sensor_schema call

* Add device_class arg to am2320 sensor_schema call

* Add device_class arg to atc_mithermometer sensor_schema call

* Add device_class arg to atm90e32 sensor_schema call

* Add device_class arg to bh1750 sensor_schema call

* Add device_class arg to ble_rssi sensor_schema call

* Add device_class arg to bme280 sensor_schema call

* Add device_class arg to bme680 sensor_schema call

* Add device_class arg to bmp085 sensor_schema call

* Add device_class arg to bmp280 sensor_schema call

* Add device_class arg to binary_sensor_map sensor_schema call

* Add device_class arg to apds9960 sensor_schema call

* Add device_class arg to as3935 sensor_schema call

* Add device_class arg to ccs811 sensor_schema call

* Add device_class arg to cse7766 sensor_schema call

* Add device_class arg to ct_clamp sensor_schema call

* Add device_class arg to dallas sensor_schema call

* Add device_class arg to duty_cycle sensor_schema call

* Add device_class arg to esp32_hall sensor_schema call

* Add device_class arg to hdc1080 sensor_schema call

* Add device_class arg to hlw8012 sensor_schema call

* Add device_class arg to hm3301 sensor_schema call

* Add device_class arg to hmc5883l sensor_schema call

* Add device_class arg to htu21d sensor_schema call

* Add device_class arg to hx711 sensor_schema call

* Add device_class arg to ina219 sensor_schema call

* Add device_class arg to ina226 sensor_schema call

* Add device_class arg to ina3221 sensor_schema call

* Add device_class arg to ibsth1 sensor_schema call

* Add device_class arg to max31855 sensor_schema call

* Add device_class arg to max31856 sensor_schema call

* Add device_class arg to max31865 sensor_schema call

* Add device_class arg to mhz19 sensor_schema call

* Add device_class arg to max6675 sensor_schema call

* Add device_class arg to mpu6050 sensor_schema call

* Add device_class arg to ms5611 sensor_schema call

* Add device_class arg to mcp9808 sensor_schema call

* Add device_class arg to ntc sensor_schema call

* Add device_class arg to pid sensor_schema call

* Add device_class arg to pmsx003 sensor_schema call

* Add device_class arg to pulse_counter sensor_schema call

* Add device_class arg to pulse_width sensor_schema call

* Add device_class arg to pzem004t sensor_schema call

* Add device_class arg to pzemac sensor_schema call

* Add device_class arg to pzemdc sensor_schema call

* Add device_class arg to qmc5883l sensor_schema call

* Add device_class arg to resistance sensor_schema call

* Add device_class arg to rotary_encoder sensor_schema call

* Add device_class arg to ruuvitag sensor_schema call

* Add device_class arg to scd30 sensor_schema call

* Add device_class arg to sds011 sensor_schema call

* Add device_class arg to senseair sensor_schema call

* Add device_class arg to sgp30 sensor_schema call

* Add device_class arg to sht3xd sensor_schema call

* Add device_class arg to shtcx sensor_schema call

* Add device_class arg to sps30 sensor_schema call

* Add device_class arg to sts3x sensor_schema call

* Add device_class arg to sun sensor_schema call

* Add device_class arg to tcs34725 sensor_schema call

* Add device_class arg to teleinfo sensor_schema call

* Add device_class arg to template sensor_schema call

* Add device_class arg to tmp102 sensor_schema call

* Add device_class arg to tmp117 sensor_schema call

* Add device_class arg to tsl2561 sensor_schema call

* Add device_class arg to tx20 sensor_schema call

* Add device_class arg to ultrasonic sensor_schema call

* Add device_class arg to uptime sensor_schema call

* Add device_class arg to vl53l0x sensor_schema call

* Add device_class arg to wifi_signal sensor_schema call

* Add device_class arg to xiaomi_cgd1 sensor_schema call

* Add device_class arg to xiaomi_cgg1 sensor_schema call

* Add device_class arg to xiaomi_gcls002 sensor_schema call

* Add device_class arg to xiaomi_hhccjcy01 sensor_schema call

* Add device_class arg to xiaomi_hhccpot002 sensor_schema call

* Add device_class arg to xiaomi_jqjcy01ym sensor_schema call

* Add device_class arg to xiaomi_lywsd02 sensor_schema call

* Add device_class arg to xiaomi_lywsd03mmc sensor_schema call

* Add device_class arg to xiaomi_lywsdcgq sensor_schema call

* Add device_class arg to xiaomi_mhoc401 sensor_schema call

* Add device_class arg to xiaomi_mjyd02yla sensor_schema call

* Add device_class arg to xiaomi_wx08zm sensor_schema call

* Add device_class arg to zyaura sensor_schema call

* Add device_class arg to ads1115 sensor_schema call

* Add device_class arg to adc sensor_schema call

* Add device_class arg to ade7953 sensor_schema call

* Add device_class arg to aht10 sensor_schema call

* Make args of sensor_schema required

* lint

Co-authored-by: Guillermo Ruffino <glm.net@gmail.com>
2021-02-27 19:28:06 -03:00
marecabo
f95be6a0df Device class attribute for sensor component (#1525)
* Add constants for sensor device_class

* Add device_class attribute to sensor component

* Add device_class attribute to sensor class

* Add device_class to mhz19 temperature sensor

* Add device_class to sensor in api component

* Add test for device_class of sensor

* Rename DEVICE_CLASS_NONE to DEVICE_CLASS_EMPTY for consistency

* Make optional attributes of sensor component truly optional
2021-02-15 12:49:02 -03:00
Otto Winter
4996967c79 Add CODEOWNERS mechanism (#1199) 2020-07-25 15:57:18 +02:00
Guillermo Ruffino
1bec1faf6d lint 2020-05-24 23:27:28 -03:00
Andrew Zaborowski
a62b6548d2 Make some Action methods protected
Apparently play()/stop() etc. are not meant to be called directly by
users of the class and if they're called directly that would not give
the expected result for the classes that have an empty play().

Make all methods except play_complex, stop_comples and is_running
protected.  While there also make RemoteTransmitterActionBase::encode
protected.
2020-05-01 12:44:30 +02:00
Otto Winter
d62ef35860 Fix scheduler first execution (#798)
* Fix scheduler first execution not immediately

* Also update sensor filters
2019-10-24 21:24:57 +02:00
Otto Winter
8ff742d9ab Implement more dump_configs (#791) 2019-10-23 14:43:41 +02:00