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
Jesse Hills
b7aad39daf
Only allow internal pins for dht sensor ( #2940 )
2021-12-23 08:31:56 +13:00
Otto Winter
8503e08ee6
Fix InterruptLock on ESP-IDF ( #2388 )
2021-09-25 09:14:07 +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
besteru
82eca13d7b
Fix error reporting for DHT bit read loop ( #2344 )
2021-09-20 09:14:44 +02:00
Oxan van Leeuwen
f31e0532c4
Untangle core headers (part 1) ( #2276 )
2021-09-13 09:33:29 +02: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
Oxan van Leeuwen
a3dcac62f9
Fix a bunch of typos ( #2058 )
...
Co-authored-by: Stefan Agner <stefan@agner.ch>
Co-authored-by: Otto Winter <otto@otto-winter.com>
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2021-07-26 14:48:57 +02:00
Stefan Agner
3dfff2930a
Improve DHT read timings ( #1901 )
...
Make sure that the initial rising edge is properly detected even if
timing is somewhat off.
Set MCU start signal to 1ms for AM2302.
2021-06-22 10:07:14 +02:00
Stefan Agner
501f88ca86
Avoid non-const globals and enable clang-tidy check ( #1892 )
2021-06-11 08:19:44 +12: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
2376a2c941
Convert components to async-def syntax ( #1821 )
2021-05-24 10:58:29 +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
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
SenexCrenshaw
410fad3b41
fix DHT auto_detect check ( #1536 )
2021-02-16 20:42:14 +13:00
Otto Winter
4996967c79
Add CODEOWNERS mechanism ( #1199 )
2020-07-25 15:57:18 +02:00
Robin Smidsrød
7df72ddb96
dht: Fix sensor reading from DHT22 ( #926 )
...
* dht: Fix sensor reading from DHT22 (#239 )
Looking at the datasheet for DHT22, it claims to need a delay of 18ms, not
800us. Change to use the same delay as DHT11. Tested working with NodeMCUv3
and DHT22 sensor with board with built-in resistor.
* dht: Add model DHT22_TYPE2 with 2ms delay instead of 0.8ms
The model DHT22_TYPE2 is exactly the same as DHT22, but uses a different
delay.
* dht: Fix bogus negative temperature reading on DHT22_TYPE2
The workaround for negative numbers associated with DHT22s can be skipped
on these sensors.
2020-05-18 20:24:13 -03:00
Otto Winter
7a6df38515
Add ESP8266 core v2.6.2 ( #905 )
...
* Add ESP8266 core v2.6.2
* Upstream ESP8266 Wifi fixes
* Replace disable_interrupt with InterruptLock C++ class
* Update code to use InterruptLock
* Lint
* Update dht.cpp
* Improve InterruptLock docs, mark as ICACHE_RAM_ATTR
* Fixes
2019-12-04 19:30:10 +01:00
Airy André
b7b23ffdb2
Decode DHT11 decimal part ( #861 )
...
* Decode DHT11 decimal part
* Fix comment
* Fix comment
* Handle negative temp for some DHT11 - code from the DHT12 component
* Don't use the fractional part if the checksum is the 2 bytes one
2019-11-20 17:00:32 +01:00
Otto Winter
7b142525b4
Check DHT sensor exists before publishing ( #850 )
...
Fixes https://github.com/esphome/issues/issues/841
2019-11-12 19:04:11 +01:00
Otto Winter
c2028f7378
DHT publish NAN on invalid reading
...
Fixes https://github.com/esphome/issues/issues/590
2019-08-31 21:14:10 +02:00
Otto Winter
341c99b4fa
Better DHT error reporting
2019-07-01 11:10:03 +02:00
Otto Winter
b2e6d222cd
Remove unnecessary update_interval from schemas
2019-06-28 11:30:15 +02:00
Otto Winter
73eea154d5
DHT22 ignore invalid values ( #614 )
...
Fixes https://github.com/esphome/issues/issues/397
2019-06-06 13:13:28 +02:00
Otto Winter
72a80f559a
Use relative include, add check
2019-05-27 13:06:45 +02:00
Otto Winter
8e75980ebd
Cleanup dashboard JS ( #491 )
...
* Cleanup dashboard JS
* Add vscode
* Save start_mark/end_mark
* Updates
* Updates
* Remove need for cv.nameable
It's a bit hacky but removes so much bloat from integrations
* Add enum helper
* Document APIs, and Improvements
* Fixes
* Fixes
* Update PULL_REQUEST_TEMPLATE.md
* Updates
* Updates
* Updates
2019-04-22 21:56:30 +02:00
Otto Winter
6682c43dfa
🏗 Merge C++ into python codebase ( #504 )
...
## Description:
Move esphome-core codebase into esphome (and a bunch of other refactors). See https://github.com/esphome/feature-requests/issues/97
Yes this is a shit ton of work and no there's no way to automate it :( But it will be worth it 👍
Progress:
- Core support (file copy etc): 80%
- Base Abstractions (light, switch): ~50%
- Integrations: ~10%
- Working? Yes, (but only with ported components).
Other refactors:
- Moves all codegen related stuff into a single class: `esphome.codegen` (imported as `cg`)
- Rework coroutine syntax
- Move from `component/platform.py` to `domain/component.py` structure as with HA
- Move all defaults out of C++ and into config validation.
- Remove `make_...` helpers from Application class. Reason: Merge conflicts with every single new integration.
- Pointer Variables are stored globally instead of locally in setup(). Reason: stack size limit.
Future work:
- Rework const.py - Move all `CONF_...` into a conf class (usage `conf.UPDATE_INTERVAL` vs `CONF_UPDATE_INTERVAL`). Reason: Less convoluted import block
- Enable loading from `custom_components` folder.
**Related issue (if applicable):** https://github.com/esphome/feature-requests/issues/97
**Pull request in [esphome-docs](https://github.com/esphome/esphome-docs ) with documentation (if applicable):** esphome/esphome-docs#<esphome-docs PR number goes here>
## Checklist:
- [ ] The code change is tested and works locally.
- [ ] Tests have been added to verify that the new code works (under `tests/` folder).
If user exposed functionality or configuration variables are added/changed:
- [ ] Documentation added/updated in [esphomedocs](https://github.com/OttoWinter/esphomedocs ).
2019-04-17 12:06:00 +02:00