Commit graph

695 commits

Author SHA1 Message Date
Nikolay Vasilchuk
7c870556c6 http_request: fix memory allocation (#916) 2019-12-31 12:40:13 +01:00
Guillermo Ruffino
420c860424
fix climate-ir bad merge (#935)
* fix climate-ir bad merge

* add mitshubishi test
2019-12-31 00:20:11 -03:00
Wilmar den Ouden
828e291538 fix: only decode when not str already (#923)
Signed-off-by: wilmardo <info@wilmardenouden.nl>
2019-12-30 23:23:03 -03:00
Guillermo Ruffino
eea78531a1
Climate Mitsubishi (#725)
* add climate

* Mitsubishi updates

* refactor mitsubishi to use climate_ir

* lint
2019-12-30 22:02:55 -03:00
Andrew Zaborowski
c8ccb06f11 ct_clamp: Check sample() return value is not NaN (#921)
Don't try to update CT clamp's state with NaN values returned from the
underlaying sensor.  A single IO error in the sensor code will cause a
NaN to be returned and if we use that in CTClampSensor's floating point
maths both sample_sum_ and offset_ will become NaN and from there every
future calculation will use the NaN offset_ and return NaN too.
2019-12-17 12:08:37 +01:00
Jesse Hills
f5b7cc81d8 Add RFBridge component (#896)
* Add RFBridge component

* Fix format issues

* Rename methods

* More formatting

* Fix line length

* Apply suggestions from code review

Co-Authored-By: Otto Winter <otto@otto-winter.com>

* Check uart settings on dump

* Make receiving local to the loop

* FIx code order and schema

* Add rf_bridge to test file

* Apply suggestions from code review

Co-Authored-By: Otto Winter <otto@otto-winter.com>
2019-12-10 11:09:35 +01:00
Otto Winter
ae784dc74c
Fix CI 2019-12-07 18:53:20 +01:00
Otto Winter
056c72d50d
Drop Python 2 Support (#793)
* Remove Python 2 support

* Remove u-strings

* Remove docker symlinks

* Remove from travis

* Update requirements

* Upgrade flake8/pylint

* Fixes

* Manual

* Run pyupgrade

* Lint

* Remove base_int

* Fix

* Update platformio_api.py

* Update component.cpp
2019-12-07 18:28:55 +01:00
adamgreg
b5714cd70f ESP32 GPIOs 33 to 38 can be used for deep sleep wakeup (#911) 2019-12-07 17:19:27 +01:00
Nick Whyte
74aca2137b Add duty cycle output component (#894)
* Add duty cycle output component

* cleanup + tests

* format

* duty_cycle -> slow_pwm

* .

* clang-format

* ESP_LOGD -> ESPLOGVV

Co-Authored-By: Otto Winter <otto@otto-winter.com>
2019-12-07 17:15:04 +01:00
Otto Winter
d09dff3ae3
Clean up YAML Mapping construction (#910)
* Clean up YAML Mapping construction

Fixes https://github.com/esphome/issues/issues/902

* Clean up DataBase

* Update error messages
2019-12-07 13:43:51 +01:00
Niclas Larsson
8a08d1fb5d Handle yaml merge keys correcly. (#888)
* Handle yaml merge keys correcly.

* Removed old debug bool.

* Deleted after request from @OttoWinder.

* Small refactoring.

Removed unused variable `value`
Small refactoring to make the code clearer.
Added comments.

* Fix merge sequence edge case
2019-12-05 00:27:49 +01:00
Otto Winter
ea652e3587
Fix ESP32 interrupt enable/disable switched
Needs to be manually cherry-picked
2019-12-04 23:51:27 +01: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
Otto Winter
bba6d6897d
Update dependencies (#906)
PyYAML 5.1.2 -> 5.2 https://github.com/yaml/pyyaml/blob/master/CHANGES
flake8 3.6.0 -> 3.7.9 https://github.com/PyCQA/flake8/tree/master/docs/source/release-notes
paho-mqtt 1.4.0 -> 1.5.0 https://github.com/eclipse/paho.mqtt.python/blob/master/ChangeLog.txt
platformio 4.0.3 -> 4.1.0 https://github.com/platformio/platformio-core/releases
protobuf 3.10.0 -> 3.11.1 https://github.com/protocolbuffers/protobuf/releases
pylint 2.3.0 -> 2.4.4 http://pylint.pycqa.org/en/latest/whatsnew/changelog.html#what-s-new-in-pylint-2-4-4
2019-12-04 17:13:34 +01:00
Otto Winter
33c08812cc
Update ESP32 BLE ADV parse to match BLE spec (#904)
* Update ESP32 BLE ADV parse to match BLE spec

* Update xiaomi

* Update ruuvi

* Format

* Update esp32_ble_tracker.cpp

* Fix log

* Format

* Update xiaomi_ble.cpp
2019-12-04 17:12:26 +01:00
Otto Winter
f68a3a9334
Disable default wait_time for rc_switch (#900)
See also 82625a3080 (commitcomment-36092052)
2019-12-04 16:48:08 +01:00
Otto Winter
0698be3995
Better/stricter pin validation (#903)
* Better/stricter pin validation

* Update tests
2019-12-04 16:47:34 +01:00
Otto Winter
064589934c
Ignore ESP32 Camera unknown framesizes (#901)
Fixes https://github.com/esphome/issues/issues/866
2019-12-04 16:04:46 +01:00
Otto Winter
e9e92afc9e
Optimize application loop speed (#860)
* Optimize application loop speed

* Also check call_loop

* Remove duplicate code

* Fixes
2019-12-04 16:03:37 +01:00
Otto Winter
e86f2e993f
Pulse counter validate not both disabled (#902) 2019-12-04 15:59:27 +01:00
Otto Winter
d26cd85306
web_server call setup_controller (#899) 2019-12-04 15:59:08 +01:00
Otto Winter
73f80a8ea1
Fix MQTT logs Int or String expected Python 3 (#898)
Fixes https://github.com/esphome/issues/issues/850
2019-12-04 15:58:58 +01:00
Otto Winter
b7dff4bbab
Add magic value REPLACEME (#881)
* Add magic value REPLACEME

* Lint
2019-12-04 15:58:40 +01:00
Evgeny
31d964c16a Add TM1561 support (#893)
* Add TM1561 support

* Fixed after clang-tidy

* Fixed after clang-tidy

* Fixed after clang-tidy, updated lib_deps

* Fixed after clang-tidy, updated formatting

* Added actions, removed from display domain

* Protected methods naming

* float casting

* float casting
2019-12-04 13:11:53 +01:00
Nad
7f895abc24 Add support for Sensirion SPS30 Particulate Matter sensors (#891)
* Add support for Sensirion SPS30 Particulate Matter sensors

* Remove blocking of the main thread on initialization;
Improve wording on the debug messages;
Add robustness in re-initialization of reconnected or replaced sensors;

* Fix code formatting;


Co-authored-by: Nad <valordk@github>
2019-12-04 12:34:10 +01:00
Guillermo Ruffino
0f406c38eb
fix climate_ir on receive optional (#897)
* fix climate on receive optional

* add climate tests
2019-12-03 11:50:06 -03:00
Andrej Komelj
6433da13a3 Add B/W support for Waveshare 2.90in (B) screen (#889)
* Add B/W support for Waveshare 2.90in (B) screen

* Fix for() loop source code formatting
2019-12-03 14:18:05 +01:00
Tim P
fa1adfd934 Add QMC5883L Sensor + Improvements to HMC5883L (#671)
* Add QMC5883L and Updated HMC5883L

* add tests

* changed to oversampling

* fix pylint

* fix private method

* typo fix

* fix protected method

* Clean up code and PR recomendations

* fix tests

* remote file

* fix qmc oversampling unit

* Remove hmc5883l config logging

Either the units are converted to the user values like 1x, 8x oversampling or not printed at all. Printing the machine-value of these is only confusing users.

* Changes for validate_enum

Move stuff that can be done beforehand out of the bound function, use text_type for py2/3 compatability.

* Remove unused constant

* Remove duplicate tests

* Repeat remove config print

* remove changes to test2 since bin is to large

* Add comment to HMC5583L


Co-authored-by: Timothy Purchas <timothy@TPF.local>
Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-11-26 18:43:11 +01:00
DAVe3283
36ffef083b Fix MAX31865 edge case. (#882)
In a heavy EMI environment, reading the current config from the MAX31865 can
fail, such as switching from a 4-wire sensor to a 3-wire sensor. This causes
the temperature value to be off wildly, but still technically valid, so it
doesn't get reported as a sensor failure.

Since we know what configuration we want, rather than send it to the MAX31865
on setup and ask for it over and over (propagating any error as we write it
back), instead store the base configuration and work from that to change modes.
This not only avoids propagating any error, it also saves a lot of unnecessary
reads from the MAX31865.
2019-11-26 18:31:33 +01:00
Daniel Kucera
fe89dcdc08 added idle action for climate (#859)
* added idle

* more clear state description

* Also add drying/fan

Putting it in this PR because it will be put in the same aioesphomeapi release anyway.

* Update bang_bang for idle action


Co-authored-by: root <root@mail.danman.eu>
Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-11-26 17:56:04 +01:00
KristopherMackowiak
be36eef939 fix: template cover add position action (#877)
* Update const.py

* Update __init__.py

* Update template_cover.cpp

* Update __init__.py

* Update test3.yaml

* formatting code

* formatting code 2

* removed position lambda

* Update test3.yaml

* Update __init__.py
2019-11-21 17:57:27 -03:00
John
6a0268b852 fix chip_temperature for atm90e32 component (#865)
* Added more data to atm90e32 component

* ignore

* correction

* Delete 6chan_energy_meter.yaml

* PR request changes

* repository test branch

* Update setup.py

* Update const.py

* delete test yaml

* fix chip_temperature_sensor

This was throwing an error if chip_temperature was used. It needed to be changed from temp to temperature.

* default

* Update test1.yaml
2019-11-20 17:47:34 +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
warpzone
ad76709d00 fix the problem of missing part of advertising packet when activ… (#868)
* fix the problem of missing part of advertising packet when active scan is enabled.

* fix for ci-suggest-changes
2019-11-20 16:54:25 +01:00
Otto Winter
072cd5b83e
Change ESP8266 default wifi output power (#862)
See also https://github.com/esphome/issues/issues/455
2019-11-17 23:28:43 +01:00
Otto Winter
cfd42ea162
Revert ESP32 BLE Tracker defaults (#863)
Fixes https://github.com/esphome/issues/issues/824
Fixes https://github.com/esphome/issues/issues/851
2019-11-17 23:28:30 +01:00
Otto Winter
b55544b860
Fix MQTT python 3 stringify IPAddress Type (#864)
Fixes https://github.com/esphome/issues/issues/850
2019-11-17 23:25:20 +01:00
Otto Winter
5becaebdda
Improve WiFi disconnect messages (#857)
* Improve WiFi disconnect messages

* Fix

* Update wifi_component_esp32.cpp
2019-11-17 23:25:04 +01:00
Guillermo Ruffino
1814e4a46b Add climate dry fan (#845)
* add climate dry fan

* clang-format

* updates, add swing mode, add back compat with old ha

* revert client-config add swing

* sort const.py

* fix missing retur
2019-11-16 16:34:11 +01:00
Brandon Davidson
4f8f59f705 Tuya: Fix init sequence and handle wifi test command (#820)
* Handle WiFi test command

Also rename commands to match Tuya protocol docs

* Fix init sequence and product info check

* Fix clang-format suggestions

* Additional changes based on code review

* Fix temp command buffer scope

* Let the interval timer fire the first heatbeat

* Fix init steps; add logging

* Lint

* Remove setup_priority override

* Add delay to dump_config

* Refactor dump sequence

* Fix verbose logging

* Fix lints

* Don't bother suppressing duplicate config dumps

* nolint


Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-11-14 13:43:44 +01:00
Brandon Davidson
aca306d120 Fix logger uart conflict check (#858)
* Fix logger uart conflict check

* Fix class for check func

* Fix syntax

Hope lint is OK with moving the end of the conditional outside the #IFDEF

* Move end of conditional inside ifdef and remove extra whitespace

* Simplify

clang-format did not like the ifdefs and was reformatting in a way that killed clang-tidy.

Simple solution is to use logger's hw_serial as source of truth

Also simplifies the code - uart doesn't need to know what the logger uart settings mean
2019-11-14 13:36:55 +01:00
Otto Winter
694395ac91
Switch to 115200 baud upload if 460800 fails (#856)
* Switch to 115200 baud upload if 460800 fails

* Update __main__.py
2019-11-14 12:42:50 +01:00
Mark
092bca0d63 Atm90e32 pf fix (#841)
* correct set_pf_sensor to set_power_factor_senor

* remove junk files added in error

* correct sensors.yaml reference to set_reactive_power

* Fixes
2019-11-13 08:49:59 +01:00
Otto Winter
a386bb476f
Fix output_power log strings, lint 2019-11-12 22:26:35 +01:00
Samuel Sieb
39a520f552 add position reporting to the template cover (#821)
* add position reporting to the template cover

* remove duplicate import

* use config flag instead


Co-authored-by: Samuel Sieb <samuel@sieb.net>
2019-11-12 22:24:13 +01:00
Otto Winter
663f84f8b4
Mark python 3.5 support deprecated (#849)
* Mark python 3.5 unsupported

Fixes https://github.com/esphome/issues/issues/831

* Update .travis.yml

* Update typing dep
2019-11-12 21:44:28 +01:00
Otto Winter
8677d47777
Fix PZEM004T v2 (#846)
Fixes https://github.com/esphome/issues/issues/817
2019-11-12 21:44:20 +01:00
Otto Winter
4f1a28d460
Adjust some units (#852)
* Adjust some units

Fixes https://github.com/esphome/issues/issues/843

* Lint
2019-11-12 19:04:39 +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
7d4f279206
Web server CORS headers (#840)
* Add CORS header to web server

* Refactor

* Cleanup

See also https://github.com/esphome/issues/issues/806
2019-11-12 19:03:59 +01:00
Otto Winter
51233e1931
Fix sensor force_update native API (#847)
Fixes https://github.com/esphome/issues/issues/842
2019-11-12 19:01:36 +01:00
Otto Winter
907c14aa98
Fix neopixelbus missing method pins (#848)
Fixes https://github.com/esphome/issues/issues/839
2019-11-12 18:59:23 +01:00
Otto Winter
fb055750df
Add missing state attribute (#851)
* Add api missing_state attribute

Fixes https://github.com/esphome/issues/issues/828

Adds a new property for missing state, so that HA can now when a sensor does not have a state yet.

* Update api.proto
2019-11-12 18:58:26 +01:00
Otto Winter
fad05d5a2e
Add wifi output_power setting (#853)
* Add wifi output_power setting

See also:
 - https://github.com/esphome/feature-requests/issues/471#issuecomment-552350467
 - https://github.com/esp8266/Arduino/issues/6366
 - https://github.com/esp8266/Arduino/issues/6471
 - 849f8cf920/code/espurna/config/general.h (L593-L599)
 - https://docs.espressif.com/projects/esp-idf/en/latest/api-reference/network/esp_wifi.html#_CPPv425esp_wifi_set_max_tx_power6int8_t

* Lint
2019-11-12 17:39:27 +01:00
Guillermo Ruffino
9580b13b9f fix esphome better error out (#843)
* fix esphome better error out

* lint

* not in then
2019-11-12 15:28:23 +01:00
Guillermo Ruffino
367ae906c3
fix missing checks of is_playing condition (#844) 2019-11-11 23:50:06 -03:00
Nikolay Vasilchuk
f8d98ac494 http_request component (#719)
* It works

* Template doesn't work

* Template fix

* CA Certificate untested

* ESP32 done

* URL validation

* Lint fix

* Lint fix (2)

* Lint fix (<3)

* Support unsecure requests with framework >=2.5.0

* Removed fingerprint, payload renamed to body

* Removed add_extra

* Review

* Review

* New HTTP methods

* Check recommended version

* Removed dead code

* Small improvement

* Small improvement

* CONF_METHOD from const

* JSON support

* New JSON syntax

* Templatable headers

* verify_ssl param

* verify_ssl param (fix)

* Lint

* nolint

* JSON string_strict

* Two json syntax

* Lambda url fix validation

* CI fix

* CI fix
2019-11-09 18:37:52 +01:00
Alexander Leisentritt
3e8fd48dc0 implemented ruuvi_ble and ruuvitag with RAWv1 and RAWv2 protocol (#810)
* implemented ruuvi_ble and ruuvitag with RAWv1 protocol

fixes esphome/feature-requests#313

* lint

* updated data calculations

* cpp lint

* use string directly in message

Co-Authored-By: Otto Winter <otto@otto-winter.com>

* add RAWv2 protocol support

* fix ICON_SIGNAL

* typo

* calculation correction and cleaning

* c++ lint

* added acceleration and fixed typo

* removed remote_receiver to reduce firmware size

remote_receiver also in test1.yaml
2019-11-07 22:10:09 +01:00
Otto Winter
003326f2eb
Fix calculations for negative sun declination (#839)
Fixes https://github.com/esphome/issues/issues/793

Also adds a clampd function that operates with doubles, not floats
2019-11-06 22:49:38 +01:00
Otto Winter
b5af3aa048
Update variable in scheduler (#838)
Fixes https://github.com/esphome/issues/issues/826
2019-11-06 22:35:22 +01:00
Sergio
a919b015b4 Add support for INA226 Current/Power Monitor (#801)
* Add support for INA226 Current/Power Monitor

* fix lint errors

* fix narrowing conversion

* Remove useless code


Co-authored-by: Sergio Muñoz <sergio@iMac-de-Sergio.local>
2019-11-06 13:59:00 +01:00
DAVe3283
f94e9b6b1e Add MAX31865 sensor support, fix MAX31855 sensor (#832)
* Add MAX31865 sensor support, fix MAX31855 sensor.

# MAX31865

Added support for the MAX31865 RTD-to-Digital Converter to measure PT100 and
similar RTDs. Verified with an Adafruit unit (product ID: 3328) and a PT100
probe.

# MAX31855

This was setup for incorrect SPI clock polarity and phase, and would return bad
data due to a race condition measuring on the wrong edge (verified with Saleae
Logic scope). Selecting the correct configuration fixes that problem.

Re-wrote the decode off the datasheet to handle error states better (sends NaN
as an update on failure to read temperature, which shows the value as Unknown
in Home Assistant).

Added the *optional* ability to monitor the internal high-precision temperature
sensor, which can be nice in some applications.

* Tests for MAX31855/MAX38165.

* Update style to match project rules.

Also fix CONF_REFERENCE_RESISTANCE and CONF_REFERENCE_TEMPERATURE being defined
multiple places. Missed this when I added them to const.py.

* Update style to match project rules.

Pylint line limit 101/100 ("missed it by that much").
Also apparently I can't read and patched the wrong line in max31855.cpp.

* Minor string/style cleanup.

There was a copy-paste leftover in max31855.cpp and max31865/sensor.py had
unnecessary whitespace.

* Improve MAX31865 fault detection and logging.

Log levels are more in-line with the documented descriptions.

Fault detection code is improved. A transient fault between reads is still
reported, but now only faults *during* a read cause the sensor to fail and
return NAN ("unknown" in Home Assistant).

* Update style to match project rules.

I just now realized the .clang-format and pylintrc files are included. D'oh!

* MAX31855 & MAX31865 code style alignment.

@OttoWinter caught some style mismatches, updated to match project better.

* Fix a lost '\' in max31865/sensor.py.
2019-11-06 13:56:43 +01:00
Otto Winter
1ed8e63d59
Remove useless code
See also https://github.com/esphome/esphome/pull/801/files#r342813117
2019-11-05 22:45:31 +01:00
Otto Winter
d97bc95798
Update platformio libraries (#837)
* Update platformio libraries

* Lint
2019-11-05 22:28:19 +01:00
Otto Winter
5c56f15c67
Fix homeassistant.service schema lambda (#833)
* Fix homeassistant.service schema lambda

Fixes https://github.com/esphome/issues/issues/820

* Improve

* Fix
2019-11-05 22:27:35 +01:00
Otto Winter
3fdb68cba8
Fix ESP32 rotary encoder (#834)
* Fix ESP32 rotary encoder

Fixes https://github.com/esphome/issues/issues/672

* Update rotary_encoder.cpp

* Lint
2019-11-05 22:26:06 +01:00
Otto Winter
85c46becdf
WiFi AP apply manual ip settings (#836) 2019-11-05 22:11:15 +01:00
Otto Winter
0cbd373817
ESP8266 remove default opmode check (#835) 2019-11-05 21:56:35 +01:00
Otto Winter
8027facb39
Fix weird ESP8266 wifi crashes (#831)
* Try fix ESP8266 weird crashes

* Only call disconnect if STA is active
2019-11-03 00:19:57 +01:00
Otto Winter
16c2dc2aaf
Fix stack trace decode for latest platformio (#830) 2019-11-02 21:19:15 +01:00
Otto Winter
dc2279b74f
Add servo missing restore option to codegen (#829)
See also https://github.com/esphome/issues/issues/609
2019-11-02 20:56:42 +01:00
Otto Winter
75275c4e93
Remove PCF8574 input_pullup mode and cleanup (#828)
Fixes https://github.com/esphome/issues/issues/755
Closes https://github.com/esphome/esphome/pull/822
Fixes https://github.com/esphome/issues/issues/667
Closes https://github.com/esphome/esphome/pull/808

Co-Authored-By: Amish Vishwakarma <amishv@users.noreply.github.com>
Co-Authored-By: S-Przybylski <s-przybylski@users.noreply.github.com>
2019-11-02 20:31:39 +01:00
Otto Winter
65d3dc9cb8
Fix update-all input in dashboard (#826)
Fixes https://github.com/esphome/issues/issues/798
2019-11-02 19:35:55 +01:00
Otto Winter
66aa02fc34
Move native API enums to new namespace (#825)
Fixes https://github.com/esphome/issues/issues/801
2019-11-02 19:35:45 +01:00
Otto Winter
be6b4ee47f
Fix wizard mkdir (#824)
* Fix CLI wizard mkdir_p with empty path

Fixes https://github.com/esphome/issues/issues/796

* Cleanup

* Lint
2019-11-02 19:35:37 +01:00
Alexander Leisentritt
90f909d2ea refactored xiaomi ble data parsing (#823) 2019-11-02 18:55:10 +01:00
Otto Winter
adf2a463fd
Fix some binary_sensor not having an initial state (#819)
Fixes https://github.com/home-assistant/home-assistant/issues/28384
2019-10-31 21:03:57 +01:00
Otto Winter
80aaf66963
Fix fan oscillating (#818)
Fixes https://github.com/esphome/issues/issues/783
2019-10-31 20:31:58 +01:00
Otto Winter
560251ab2a
Scheduler fixes (#813)
* Scheduler fixes

Fixes https://github.com/esphome/issues/issues/789, fixes https://github.com/esphome/issues/issues/788

Also changes to use unique_ptr - this should be much safer than the raw pointers form before (though the scoping rules might cause some issues, but looking closely I didn't find anything)

* Disable debugging

* Format
2019-10-31 20:25:16 +01:00
Otto Winter
864c5d8908
Allow TimePeriod for time_period_str_unit (#815) 2019-10-31 20:09:57 +01:00
Otto Winter
742c21506c
Print update interval for pulse counter (#816) 2019-10-31 20:09:23 +01:00
Otto Winter
a6faccb4d9
Uppercase ESPHome (#814) 2019-10-31 20:09:07 +01:00
Lumpusz
69fd3e8937 service uuid based ble tracking (#800)
* service uuid based ble tracking

* code review fixes

* fix import, format

* fix indentation

* reformat
2019-10-31 15:34:19 +01:00
Nikolay Vasilchuk
41233d7f25 [Hotfix] Dashboard authentication on Py3 (#812)
* Fix

* Review fix

* Reverted first fix
2019-10-31 15:10:52 +01:00
Antoine GRÉA
07286d1d76 Add check if middle_text is too short (#811)
* Add check if middle_text is too short

* Use int division as suggested
2019-10-30 16:16:14 +01:00
Otto Winter
08148c5830
Fix web server transition length truncated (#807)
Fixes https://github.com/esphome/issues/issues/772
2019-10-27 12:30:48 +01:00
Otto Winter
969bdb06ce
Fix modbus register (#806)
Fixes https://github.com/esphome/feature-requests/issues/49#issuecomment-546555289

Co-Authored-By: tsunglung <tsunglung@users.noreply.github.com>
2019-10-27 12:30:36 +01:00
Otto Winter
b0bb692af4
AS3935 Use normal pin polling for IRQ (#805)
* AS3935 Use normal pin polling for IRQ

See also https://github.com/esphome/feature-requests/issues/452

* Fix tests
2019-10-27 12:30:19 +01:00
Otto Winter
7bf6fd316f
Add Tuya message for no datapoints (#804)
See also https://github.com/esphome/feature-requests/issues/352#issuecomment-546579206
2019-10-27 12:28:01 +01:00
Otto Winter
c1f5e04d6c
Warn when UART and logger operating on same bus (#803) 2019-10-27 12:27:46 +01:00
John
5a67e72389 Added more power data to the atm90e32 component (#799)
* Added more data to atm90e32 component

* ignore

* correction

* Delete 6chan_energy_meter.yaml

* Update sensor.py

fixed indents

* Update atm90e32.h

* Update esphome/components/atm90e32/sensor.py

Co-Authored-By: Otto Winter <otto@otto-winter.com>

* PR request changes

* repository test branch

* Update setup.py

* Update const.py

* backslash

* comma!

* delete test yaml

* corrected chip temp

* change to signed int for get_pf_ functions

* Update atm90e32.h

formatting

* adjusted function & variable names

* Update atm90e32.h

formatting

* Update sensor.py

Import CONF_POWER_FACTOR from const.py

* travis formatting

* Update esphome/components/atm90e32/sensor.py

Co-Authored-By: Otto Winter <otto@otto-winter.com>

* Update esphome/components/atm90e32/atm90e32.h

Co-Authored-By: Otto Winter <otto@otto-winter.com>
2019-10-27 12:05:13 +01:00
Pavel Golovin
91c9b11647 Fujitsu General climate new component (#677)
* new Fujitsu-General climate component

* Refactor out climate_ir

CC @glmnet

Refactored out climate_ir python files too.
Fixed invalid namespace name for climate_ir.

* Add namespace lint check

* Refactor Fujitsu Climate to climate_ir


Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-10-25 11:32:31 +02:00
Otto Winter
bb2582717f
Make file generation saving atomic (#792)
* Make file generation saving atomic

* Lint

* Python 2 Compat

* Fix

* Handle file not found error
2019-10-24 21:53:42 +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
59c5956f93
Fix MQTT not showing logs with Python 3 (#797)
* Fix MQTT logging for Python 3

* Also fix captive portal PACKED
2019-10-24 20:11:17 +02:00
Nikolay Vasilchuk
e4f055597c Logger on_message trigger (#729)
* on_message

* Lint fix

* Lint fix (2)

* Lint fix (<3)

* Replace cg.int_ with int

* Revert

* Removed strdup


Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-10-24 14:19:33 +02:00
Chris Debenham
4c49beb3c7 Add missing include - fixes missing GPIOPin definition (#794) 2019-10-24 14:13:50 +02:00
Otto Winter
8ff742d9ab
Implement more dump_configs (#791) 2019-10-23 14:43:41 +02:00
Otto Winter
d63cd8b4cd
Add additional custom lint checks (#790) 2019-10-23 14:43:27 +02:00
Otto Winter
3f0503c296
Fix modbus CRC calculation (#789)
* Fix modbus CRC calculation

Fixes https://github.com/esphome/feature-requests/issues/49#issuecomment-545045776

* Fix
2019-10-22 22:56:34 +02:00
Otto Winter
c18050bda0
Add Python 2 deprecation notice (#784)
* Add Python 2 deprecation notice

* Update __main__.py
2019-10-21 23:32:12 +02:00
Ville Skyttä
6542be5588 Wizard board name fixes (#787)
* Sort board names in wizard

* Fix board name in invalid board error message
2019-10-21 23:06:11 +02:00
Nils Schulte
9fb60b8015 web_server_base AUTO_LOAD includes ASYNC_TCP (#788)
* web_server_base AUTO_LOAD includes ASYNC_TCP

fix AUTO_LOAD of web_server_base to include ASYNC_TCP

* Remove from dependencies


Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-10-21 23:05:50 +02:00
Otto Winter
1177b856a0
Fix ledc can't find bit_depth (#786)
Fixes https://github.com/esphome/issues/issues/759
2019-10-21 22:55:27 +02:00
Otto Winter
ae8700447e
Add sensor force_update option (#783)
* Add sensor force_update option

* Add test
2019-10-21 15:46:39 +02:00
amishv
d64a4ef2b4 Implementation of LCD Clear (#781)
* Implementation of LCD Clear

* Implementation of LCD Clear

* Implementation of LCD Clear

* Implementation of LCD Clear
2019-10-21 12:43:28 +02:00
Otto Winter
1e22b1e959
Update AsyncMQTTClient/ESPAsyncWebServer (#779) 2019-10-20 19:24:34 +02:00
Otto Winter
e077ad56bd
Add PZEM004T/PZEMAC/PZEMDC Support (#587)
* Add PZEM004T Support

* Don't flush as much

* Update pzem004t.cpp

* Add generalized modbus

* Add PZEMAC

* Add PZEMDC

* Fix file modes

* Lint

* Fix

* Fix

* Add check_uart_settings
2019-10-20 19:24:20 +02:00
Otto Winter
f1e00f8c8e
Add GPIO Switch interlock wait time (#777)
* Add interlock wait time to gpio switch

Fixes https://github.com/esphome/issues/issues/753

* Format

* Fix
2019-10-20 18:10:14 +02:00
Otto Winter
9a152e588e
Vl53l0x (#644)
* VL530LX

* VL53L0X

* Updates

* License

* Lint
2019-10-20 17:56:57 +02:00
Otto Winter
16f42a3d03
Add script.wait action (#778)
Fixes https://github.com/esphome/feature-requests/issues/416, fixes https://github.com/esphome/issues/issues/572
2019-10-20 16:15:30 +02:00
Otto Winter
6c8d0f1852
Change message 2019-10-20 15:57:59 +02:00
Otto Winter
b59cf6572b
Add lint check for integer constants (#775) 2019-10-19 22:31:32 +02:00
Otto Winter
4fa11dfa68
Lint 2019-10-19 21:59:55 +02:00
Otto Winter
352bdd9fb5
Tuya Set gamma correction and transition length defaults
See also https://github.com/esphome/esphome-docs/pull/353/files#r336751499
2019-10-19 21:50:39 +02:00
Samuel Sieb
96ff9a162c Add new component for Tuya dimmers (#743)
* Add new component for Tuya dimmers

* Update code

* Class naming

* Log output

* Fixes

* Lint

* Format

* Fix test

* log setting datapoint values

* remove in_setup_ and fix datapoint handling


Co-authored-by: Samuel Sieb <samuel@sieb.net>
Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-10-19 21:47:24 +02:00
Guillermo Ruffino
af15a4e710 Add dfplayer mini component (#655)
* Add dfplayer mini component

* receiving some data

* implemented many actions

* lint

* undo homeassistant_time.h

* Update esphome/components/dfplayer/__init__.py

Co-Authored-By: Otto Winter <otto@otto-winter.com>

* Update esphome/components/dfplayer/dfplayer.cpp

Co-Authored-By: Otto Winter <otto@otto-winter.com>

* add set device. fixes

* lint

* Fixes and sync with docs

* add test

* lint

* lint

* lint
2019-10-19 21:37:05 +02:00
Nad
18426b71e4 Add support for STS3x Temperature sensors (#669)
* Add support for Sensirion STS3x Temperature sensors

* Removed humidty reading from STS3x sensor

* Fixed line error and operand error

* Fixed syntax

* Add test snippet for STS3x sensor

* Clean up

* #550 Proactive fix for STS3x component reporting WARNING status and reinitialzing similar to SHT3xd

* Flattened config.

* Fixed missing temperature unit

* Code formatting

* Added marking for future commands

* Cleanup

* Removed whitespace

* Cleanup

* Cleanup
2019-10-19 21:31:37 +02:00
Nad
7063aa6009 Add support for SHTCx Temperature sensors (#676)
* Add support for Sensirion STS3x Temperature sensors

* Removed humidty reading from STS3x sensor

* Fixed line error and operand error

* Fixed syntax

* Add test snippet for STS3x sensor

* Clean up

* Add support for Sensirion SHTC1 and SHTC3 Temperature sensors

* Fixed the test

* Fix lint issues

* Update esphome/components/shtcx/shtcx.cpp

Good point.

Co-Authored-By: Otto Winter <otto@otto-winter.com>

* Refactored device type identification and logging

* Refactoring and cleanup

* Remove sts3x


Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-10-19 21:31:27 +02:00
Nad
286ca07cc8 Add support for SGP30 eCO2 and TVOC sensors (#679)
* Add support for SGP30 eCO2 and TVOC sensors

* Added test for SGP30

* Lint issues fixed

* Lint fixes

* Fixed light lengths

* Cleanup

* Add support for Sensirion SCD30 CO2 sensors

* Fixed few lint issues

* Lint fixes

* Fixed line ending for lint

* Cleanup

* Refactored float conversion

* Refactor unnecessary return

* Refactoring and cleanup

* Updated uptime_sensor_ referencing and simplified checking on availability of copensation

* Temperature and Humidity source moved to a separate compensation block; Dependency for Uptime sensor removed.

* Both humidity_source and temperature_source are now mandatory if the compensation block is defined;

* Clean up

* Cleanup

* Cleanup in search of perfection

* Use correct comment style


Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-10-19 21:21:07 +02:00
Evan Coleman
58b6311821 Add SSD1325 Display Component (#736)
* add ssd1325 component

* fix i2c

* remove ssd1325 i2c

* add test

* set max contrast

* No macros - see styleguide

* Remove invalid function

* Formatting


Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-10-19 20:44:43 +02:00
Otto Winter
62d4b29662
Format 2019-10-19 17:48:30 +02:00
Otto Winter
16bc60644d
Bump version to v1.15.0-dev 2019-10-19 17:11:22 +02:00
Otto Winter
28031cfa3e
Add to ignore list 2019-10-19 16:17:20 +02:00
Otto Winter
292c2d0c53
Remove debug log from dashboard js 2019-10-19 16:17:12 +02:00
Otto Winter
869775ec7a
Fix compile warning in SCD30 2019-10-19 16:17:01 +02:00
Otto Winter
783b179af7
Fix TinyGPSPlus having name conflict 2019-10-19 16:16:49 +02:00
Otto Winter
28454ea4cd
Fix dashboard setup for python 3 2019-10-19 15:48:57 +02:00
Otto Winter
9f4b666ef0
ESP32 Upgrade AsyncTCP to 1.1.1 (#773) 2019-10-19 14:15:22 +02:00
Otto Winter
80214640b1
Filter some debug lines from PlatformIO in output (#771)
* Filter some debug lines from PlatformIO in output

* Lint

* Strip trailing newline from esp-idf output

* Only create global std::string if on esp32
2019-10-19 14:04:14 +02:00
Otto Winter
4310c14497
Add BLE scan parameters (#769)
* Add BLE parameters

Fixes https://github.com/esphome/issues/issues/735

* Fix
2019-10-18 18:15:53 +02:00
Otto Winter
aebb6d2fcc
Revert "Fix filter_out bug"
This reverts commit 1ade7bcb2d.
2019-10-18 17:30:44 +02:00
Otto Winter
af35c9258e
Py3 Updates 2019-10-18 16:58:29 +02:00
Fabian Affolter
7a43231c43 Support for Python 3 (#702)
* Support for Python 3

* Add later Python releases

* Remove Python 3.6

* Re-enable Python 2.7

* Remove platformio-core zip archive

* Re-enable Python 2.7

* Fixes for python 3

Co-Authored-By: C W <fake-name@users.noreply.github.com>
2019-10-18 16:51:16 +02:00
Otto Winter
1bf55c130b
Format 2019-10-18 16:43:37 +02:00
Otto Winter
95a74a7f19
Addressable light transition (#750)
* Improve addressable light transition behavior

Fixes https://github.com/esphome/issues/issues/555

* Improve addressable flicker effect

See also https://github.com/esphome/feature-requests/issues/348

* Update addressable_light_effect.h

* Refactor

* Format

* Prevent divide by zero

* Fixes
2019-10-18 16:27:36 +02:00
Otto Winter
b78b28ea0e
Fix platformio monkey patch (#768) 2019-10-18 15:33:30 +02:00
Otto Winter
aed7b3fbb2
Fix typo in Component::set_interval (#767)
Ouch...
2019-10-18 15:33:18 +02:00
Otto Winter
1ade7bcb2d
Fix filter_out bug 2019-10-18 14:58:06 +02:00
Otto Winter
21bbafb63d
Captive portal fixes (#766)
* Enable MDNS logs comment

* Work around ESP8266 mDNS broken for AP

See also https://github.com/esp8266/Arduino/issues/6114

* Enable captive_portal in AP-only mode

Fixes https://github.com/esphome/issues/issues/671

* Make ESP32 connecting faster

See also https://github.com/espressif/arduino-esp32/pull/2989

* Format
2019-10-18 14:46:44 +02:00
Otto Winter
1cfc6ac3c6
Update ESP8266/ESP32 bases (#760)
* Update ESP8266/ESP32 bases

* Update platformio.ini

* Update boards definitions
2019-10-18 14:46:29 +02:00
Otto Winter
c3aa834d80
Fork some base libraries (#758)
* Fork some base libraries

* Update ESPAsyncWebServer
2019-10-18 14:46:09 +02:00
Otto Winter
68d0d045c0
Add LEDC set_frequency action (#754)
* Add LEDC set_frequency

Fixes https://github.com/esphome/feature-requests/issues/380

* Fix log

* Fixes

* Format

* Update test1.yaml

* Update test1.yaml

* Fix
2019-10-18 11:22:08 +02:00
Marcel van der Veldt
72d6471ab8 add support for climate action (#720)
* add support for climate action:

Following hass implementation of climate, action represents the current action the climate device is perfoming, e.g. cooling or heating

fix bang_bang climate:

make sure that the thresholds are always respected.
fixes the issue where the component would just keep on heating, regardless of the temperature range

* Updates

- Use dedicated enum for action (otherwise it gets confusing because "auto" is not a valid action)
- Add field to tell HA that action is supported
- Revert semantic changes in bang_bang

* Conditional print


Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-10-18 10:39:14 +02:00
Otto Winter
22aecdfc6f
Use higher default baudrate for USB upload (#761)
See also https://github.com/espressif/esptool/issues/435
2019-10-18 10:23:06 +02:00
Otto Winter
ee0b6e835f
Sensor filter_out rounded (#765)
Fixes https://github.com/esphome/issues/issues/741
2019-10-18 10:22:29 +02:00
Guillermo Ruffino
8292024306 add tcl112 receiver (#762) 2019-10-18 09:22:55 +02:00
Guillermo Ruffino
84cfcf2b4a vscode support check file exists (#763)
* vscode support check file exists

* ups. formatter got disabled
2019-10-18 09:17:16 +02:00
nicuh
ea762b7295 Fix remote_transmitter type_a encoding (#742)
Co-authored-by: Nicu Hodos <nicu@hodos.ro>
2019-10-18 09:05:37 +02:00
Nikolay Vasilchuk
d51c0f13c0 SenseAir S8 CO2 sensor support (#705)
* Компилится

* Tests

* Checksum calculation

* Read status
2019-10-17 21:37:24 +02:00
Otto Winter
6ceb975a3a
calibrate_linear check not all from values same (#714)
Fixes https://github.com/esphome/issues/issues/524
2019-10-17 21:35:59 +02:00
Otto Winter
9a40d6ef50
Integration sensor use double precision (#715)
Fixes https://github.com/esphome/issues/issues/534

Kept the RTC value as a float in order not to introduce a breaking preferences change.
2019-10-17 21:35:31 +02:00
Otto Winter
32195f77d9
Fix dallas not unknown (#716)
* Fix dallas not sending unknown on disconnected sensor

* Deep sleep
2019-10-17 21:34:58 +02:00
Guillermo Ruffino
578e5a0d7a Base climate ir (#726)
* add ClimateIR

* update climate ir

* update class comment

* lint

* moved to climate_ir

* fix include path

* use climateir

* updates

* update include path

* lint

* fixed variable assigned to itself
2019-10-17 21:01:02 +02:00
Lazar Obradovic
1242f43769 BME280: Increase sensor timeout (#727)
I'm facing some occasional timeouts when reading BME280. 
Looking at Adafruit driver (that this code is based on), I see that base math is using 1.25ms, increased by 2.3*oversampliing + 0.575 for each value being read. 
I've added 1.5ms as baseline, to be on the same safe.
2019-10-17 20:58:59 +02:00
Thomas Klingbeil
3bb6430495 Add support for TTGO ePaper module (#730)
* Add support for TTGO ePaper module

Use 2.13in-ttgo as type. Only different LUTs were needed, everything else is the same.

relates to issue #233.

* fix styling errors

* styling fixes


Co-authored-by: null <mandy.klingbeil@student.hpi.uni-potsdam.de>
2019-10-17 20:55:27 +02:00
Otto Winter
aae633277f
Fix strobe/flicker effect not using selected value (#749)
Fixes https://github.com/esphome/issues/issues/562
2019-10-17 19:15:02 +02:00
Otto Winter
996c50e8f2
Add rotary_encoder.set_value action (#747)
* Add rotary_encoder.set_value action

Fixes https://github.com/esphome/feature-requests/issues/389

* Fix
2019-10-17 19:14:52 +02:00
Otto Winter
95c883ae9b
Fix MCP23017 setup priority (#751)
Fixes https://github.com/esphome/issues/issues/535
2019-10-17 19:14:25 +02:00
Otto Winter
78c1adafcd
Make UART flush function consistent (#748)
See also 78be9d2937
2019-10-17 16:54:38 +02:00
Otto Winter
e15071228e
Fix addressable light fade to black function (#752)
Fixes https://github.com/esphome/issues/issues/517
2019-10-17 16:53:55 +02:00
Otto Winter
ac48ff1fd6
Fix potential ISR digital_write issue (#753) 2019-10-17 16:53:39 +02:00
Guillermo Ruffino
428684bc1e Brightness ssd1306 (#723)
* added brightness for oled display ssd1306

* lint


Co-authored-by: waiet <vlado.rusnak23@gmail.com>
2019-10-17 16:36:11 +02:00
TomFahey
81b7653c9c Add mcp23008 support (#649)
* Add support for mcp23008 8-port io expander

* add-mcp23008-support

* Revert "add-mcp23008-support"

This reverts commit b4bc7785b1.

* Fixed spacing typo

* removed extra space in mcp23008.cpp, line 23

* Fixed trailing whitespace issue

* Added mcp23008 component

* Added component mcp23008

* Edited typo in test/test1.ymal

Removed additional ' in line 1337

* Another typo
2019-10-17 16:18:41 +02:00
Alexander Leisentritt
45736707bd fix CGG1 log message (#757) 2019-10-17 14:02:41 +02:00
Alexander Leisentritt
cdfbe5b523 refactored xiaomi sensors (#755)
* refactored xiaomi sensors

* fix lint

* fixed and added tests

* fix namespace

* LYWSD02 has no battery level

* fixed enum

* fix

* fix case

* fix spaces in empty line...

* inform users of old sensors about the change
2019-10-16 13:29:56 +02:00
Otto Winter
cdb9c59662
Add ADE7953 Support (#593)
* Add ADE795 support

* Lint

* Fix

* Fix, add test
2019-10-16 13:19:41 +02:00
amishv
9c30f4cc68 Fix for PCF8574 output chattering at the start/reboot (#744)
* Fix for PCF8574 output chattering at the start/reboot

* Fix for PCF8574 output chattering at the start/reboot

* Fix for PCF8574 output chattering at the start/reboot


Co-authored-by: Amish Vishwakarma <vishwakarma.amish@gmai.com>
2019-10-15 21:31:52 +02:00
Otto Winter
23f99908db
Apply HDC1080 patch from @Hsxsky
See also 105ac63d62
2019-10-15 20:53:59 +02:00
Sergio Mayoral Martínez
e30512931b Add Xiaomi Cleargrass Temperature and Humidity Sensor (#735)
* Add Xiaomi Cleargrass Temperature and Humidity Sensor

* fix CI Travis

* fix CI Travis 2

* Improve device detection (more accurate)


Co-authored-by: t151602 <sergio.mayoralmartinez@telefonica.com>
2019-10-14 13:25:08 +02:00
Otto Winter
e207c6ad84
Fix ct_clamp update
Fixes https://github.com/esphome/issues/issues/684
2019-10-14 12:06:23 +02:00
Levente Tamas
9d7f76773d Add support for TI TLC59208F (#718)
* Add support for TI TLC59208F

The chip is a 8-BIT FM+ I2C BUS LED DRIVER with
8 open-drain output channels.

Its features include:
- 256 linear levels
- group dimming
- group blinking
- 64 slave addresses
- customizable sub addresses and all call address
- output update on stop or on ACK
- 3.3V or 5V supply with 5V tolerant IO
- no glitch startup
- 50mA / output continuous current up to 17V

* Convert macro to uint8_t

Variables had to be renamed, clang-format would protest against
mixed case in global variable name.

* Change gen-call reset to use the correct i2c bus
2019-10-14 11:30:41 +02:00
Michiel van Turnhout
5f2808ec2f support for the sx1509 i2c device (#651)
* added ANALOG_OUTPUT as first functionality

* added gpio

* seperated the code for different functions

* fixed code

* Revert "fixed code"

This reverts commit 0c6eacb225.

* add timings for breathe and blink

* made the sx1509_float_output am output component

* add keypad

* implementation for sx1509 keypad

* keypad code cleanup and first device tests

* debounce

* keypad working now.

* update for timings.
does not compile yet

* added all options for breathe and blink
fixed var namings

* blink and breath still not ok

* fixed ms for timings

* sync with repo

* fixed issue with gpio pin output

* code cleanup

* lint

* more lint

* remove log from header

* Update esphome/components/sx1509/__init__.py

Co-Authored-By: Otto Winter <otto@otto-winter.com>

* review

* feedback

* fixed review issues
did some extended testing with mqtt spy

* code cleanup (comments)

* fixed row col swap for binarysensor_keypad

* flake and lint

* travis

* travis

* travis

* Update esphome/components/sx1509/sx1509.cpp

Co-Authored-By: Otto Winter <otto@otto-winter.com>

* review

* separated platforms

* code cleanup

* travis relative paths in python

* remove blink/breathe
code cleanup

* cpp lint

* feedback

* travis

* lint line to long

* check keypad settings to be valid

* clang

* keypad config

* text

* Remove wrong .gitignore from .gitignore

* Remove .pio folder from .gitignore (merge)

* Formatting

* Formatting

* Add i2c log in dump_config

* Remove unused variables

* Disable static for header files

We don't need internal linkage

* Use consistent member default argument style

* Run clang-format


Co-authored-by: null <m.vanturnhout@exxellence.nl>
Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-10-14 11:27:50 +02:00
Nikolay Vasilchuk
be91cfb261 Device description in dashboard (#707)
* Description

* Review fixes

* Test

* Label

* Description renamed to comment
2019-10-14 11:27:07 +02:00
Nad
0eadda77b0 Improve SHT3xD reconnect handling (#675)
* Add support for Sensirion STS3x Temperature sensors

* Removed humidty reading from STS3x sensor

* Fixed line error and operand error

* Fixed syntax

* Add test snippet for STS3x sensor

* Clean up

* #550 Fix STH3x component reporting WARNING status and reinitialzing the sensor upon reconnecting.

* #550 Fix lint issues

* Delete __init__.py

* Delete sensor.py

* Delete sts3x.cpp

* Delete sts3x.h

* Delete test1.yaml

* Revert "Delete test1.yaml"

This reverts commit 33e69fb703.

* Removed leaked STS3x changes from test
2019-10-13 17:46:21 +02:00
Nikolay Vasilchuk
b2388b6fe7 Basic Auth for web_server component (#674)
* Basic auth

* Test

* Linter fix

* Make username/password strict strings

Reason: passwords only consisting of digits (012345) will be silently converted (to "12345")


Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-10-13 14:27:44 +02:00
Nikolay Vasilchuk
1a763ae974 Authorization by username and password (#668)
* Auth

* Logout

* Lint fix

* Small hassio fix

* Reverted uppercase

* Secrets editor

* Reverted secrets editor

* Reverted log height

* Fix default username
2019-10-13 13:52:02 +02:00
Otto Winter
38dfab11b4
Fix dev branch 2019-10-13 13:51:34 +02:00
Nikolay Vasilchuk
7c31592850 Secrets editor (#672)
* Secrets editor

* Check file exists
2019-10-13 12:57:28 +02:00
Nikolay Vasilchuk
57bee74225 Fill log height (#673) 2019-10-13 12:55:26 +02:00
Otto Winter
fa351cd37c
Cleanup AS3935 2019-10-12 17:03:01 +02:00
Thomas Eckerstorfer
68e7e5a51c AS3935 Lightning sensor (#666)
* added tx20 wind speed sensor

* added test

* fixed lint errors

* fixed more lint errors

* updated tx20

* updated tx20 sensor

* updated to new structure and removed static variables

* removed content from __init__.py

* fixing lint errors

* resolved issues from review

* added as3935 sensor

* updated as3935 with more settings

* update

* support for i2c + spi updated

* added tests and various fixes

* added tx20 wind speed sensor

* fixed lint errors

* fixed more lint errors

* updated tx20

* updated tx20 sensor

* updated to new structure and removed static variables

* removed content from __init__.py

* fixing lint errors

* resolved issues from review

* added as3935 sensor

* updated as3935 with more settings

* update

* support for i2c + spi updated

* added tests and various fixes

* updated tests

* fixed style issues

* Remove debug line

* Update log levels

* Reformat

* Auto-convert to int


Co-authored-by: Thomas <thomas.eckerstorfer@mic-cust.com>
Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-10-12 15:03:35 +02:00
Abílio Costa
4d31ad3bdc Allow 64 bit codes and add nexa remote support. (#662)
* add nexa remote support.

This is inspired by: https://github.com/sui77/rc-switch/pull/124
As described there: "The remotes sold in ClasOhlson in scandinavia have
a slightly longer sync sequence(added a skip pulse field in the
protocol) and a 64 bit code word. Part of the code gets lost but that
seems to be OK until support for 64 bit codes is added."

* add default value to ctor

* allow 64bit codes

* lint

* make vars 64 bits
2019-10-12 14:42:27 +02:00
Guillermo Ruffino
f4f1164b94
fixes samsung ir (#738)
fixes https://github.com/esphome/issues/issues/691
2019-09-28 10:26:48 -03:00
C W
bd0be41064 Fix https://github.com/esphome/issues/issues/658 (#724)
* Fix https://github.com/esphome/issues/issues/658

* Update to gross code style.
2019-09-10 23:37:33 -03:00
Guillermo Ruffino
4118a289a6
Add coolix receiver (#645)
* add coolix receiver

a

* lint - added comments

* Lint

* target temp neve be nan
2019-09-08 22:14:39 -03:00
Fritz Mueller
1d5f8d5a52 Use default format to render FloatLiteral (#717)
Fixes https://github.com/esphome/issues/issues/557
2019-09-04 11:06:18 +02:00
Otto Winter
fd1dc24ac6
Also accept invalid spelling from Updater
Fixes https://github.com/esphome/issues/issues/564 partly.

At least the error message will now be a better one.
2019-09-01 11:42:37 +02:00
Otto Winter
be1e4c0a1d
Fix nextion display_picture argument order
Fixes https://github.com/esphome/issues/issues/613
2019-08-31 21:14:33 +02: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
4b0f203049
Use unique enum names for native API
Fixes https://github.com/esphome/issues/issues/617
2019-08-31 21:13:41 +02:00
Otto Winter
23ff8178a0
Merge branch 'dev' of https://github.com/esphome/esphome into dev 2019-08-31 20:23:35 +02:00
Otto Winter
93cfee8026
Fix strobe effect
Fixes https://github.com/esphome/issues/issues/620
2019-08-31 20:23:06 +02:00
Guillermo Ruffino
b6920025b2 Fixes sim800l (#678)
* Fix receive message quickly

* fix case

* lint
2019-08-31 19:45:34 +02:00
Otto Winter
fb29ac27a2
Merge branch 'dev' of https://github.com/esphome/esphome into dev 2019-08-31 19:24:53 +02:00
Nad
4c03cebef3 Add support for Sensirion SCD30 CO2 sensors (#712)
* Add support for Sensirion SCD30 CO2 sensors

* Fixed few lint issues

* Lint fixes

* Fixed line ending for lint

* Cleanup

* Refactored float conversion

* Refactor unnecessary return


Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-08-31 19:24:37 +02:00
Guillermo Ruffino
244c4be8cc fix integration sensor (#711)
* fix integration sensor

* revert rtc_.save conditional
2019-08-31 18:45:06 +02:00
Guillermo Ruffino
9b28c732c6
fix wifi info (#709)
* fix wifi info

* lint time based cover
2019-08-29 21:34:29 -03:00
Otto Winter
5dfb33ebee
Merge branch 'dev' of https://github.com/esphome/esphome into dev 2019-08-29 16:20:59 +02:00
Otto Winter
2b30cde125
Fixup dev branch again
Closes https://github.com/esphome/esphome/pull/706
2019-08-29 16:20:56 +02:00
Robert Kiss
f9b3e61c0f Add delayed_on_off binary_sensor filter (#700)
* add delayed_on_off binary_sensor filter

* fix formatting

* remove unwanted file modification

* add newline to fix linter error
2019-08-29 16:09:37 +02:00
Guillermo Ruffino
83a92f03fc add time based cover, has built in endstop (#665)
* add has built in endstop

* rewrite as proposed

* Update esphome/components/time_based/time_based_cover.h

Co-Authored-By: Otto Winter <otto@otto-winter.com>

* lint

* Re trigger stop_operation if stop called

* allow se triggering open/close command if safe

* using COVER_OPEN/CLOSE constants
2019-08-29 16:07:41 +02:00
Nikolay Vasilchuk
d27291b997 License for Material Design Icons (#708) 2019-08-29 15:42:31 +02:00
Otto Winter
2c995cf145
Fix GPS time source. (#704)
* Change ESP32 default power_save_mode to light

* Update
2019-08-27 22:11:50 +02:00
Otto Winter
2822fa4a40
Also scan for symlinks in comports
Fixes https://github.com/esphome/feature-requests/issues/56
2019-08-27 22:10:23 +02:00
Otto Winter
ccf3da2a5a
Improve handling of no upload option
Fixes https://github.com/esphome/issues/issues/596
2019-08-27 22:00:34 +02:00
Otto Winter
5348b36a7c
Fix warnings about comments in lambdas
Fixes https://github.com/esphome/issues/issues/593
2019-08-27 21:51:59 +02:00
Otto Winter
947a6034e3
Update platformio patch for latest change
See also 8059e04499
2019-08-27 21:33:01 +02:00
junnikokuki
65d08beaa4 add xiaomi BLE Thermometer lywsd02 model support (#664)
* add xiaomi BLE Thermometer lywsd02 model support

* remove battery level

* Update sensor.py

to pass the lint test
https://github.com/esphome/esphome/pull/664

* fix trailing space


Co-authored-by: Guoxue <gx@m15.cn>
Co-authored-by: mr G1K <mr@g1k.ru>
2019-08-27 21:06:39 +02:00
Otto Winter
9770bc371b
Remove duplicate TAG value 2019-08-27 20:27:56 +02:00
Otto Winter
22f9f75914
Remove ESP32 uart pin entries
See also 655327a8b1
2019-08-27 20:13:50 +02:00
Otto Winter
54c9dd4173
Fix WiFi Info dump_config change
Fixes https://github.com/esphome/esphome/pull/698#discussion_r318212018
2019-08-27 20:07:48 +02:00
Jasper van der Neut - Stulen
0fc267dfc7 Implement median filter (#697)
Add median filter to sensors component
2019-08-27 10:39:04 -07:00
Nikolay Vasilchuk
c5db457700 MH-Z19 calibration support (#683)
* Allow configuration to enable or disable automatic baseline calibration on boot
* Add actions to enable or disable automatic baseline calibration
* Add action to calibrate zero point
2019-08-27 10:33:25 -07:00
Pauline Middelink
15a7d2ef75 The display component should not be handling update_interval, (#693)
as that is already done when registering the component.
2019-08-27 10:30:13 -07:00
Pauline Middelink
071272a27f Fix mqtt_text_sensor to honor unique_id when set. (#698)
* Fix mqtt_text_sensor to honor unique_id when set.
* Remove setting of unique_id in json tree, as the mqtt_component already does this, and in fact overrides what we do here.
* Add unqiue_id() and dump_config() to the wifi_info sensors.
2019-08-27 10:28:50 -07:00
Jack Wozny
655327a8b1 Corrected ESP32 hardware UART pins (#701)
The UART pins for Serial1 and Serial2 on the ESP32 were reversed.
2019-08-27 10:19:55 -07:00
Nikolay Vasilchuk
15b87af8ed Local Material Icons (#703)
Remove external dependence on fonts.googleapis.com by vendoring MDI fonts and CSS.
2019-08-27 10:10:44 -07:00
Brandon Davidson
a0b3d861fe
Remove double publish_state in ultrasonic sensor (#696)
Fixes https://github.com/esphome/issues/issues/589
2019-08-19 12:13:48 -07:00
Alex Mekkering
718c494013 Support voluptuous 0.11.7 / fix cpp-lint
* Support voluptuous 0.11.7 ( Fixes esphome/issues#580 )
* Fix travis target Cpp-Lint for platformio 4
2019-08-19 11:37:17 -07:00
Guillermo Ruffino
5c9755ecc1 fix missing schedule call (#690) 2019-08-11 12:30:47 +02:00
Otto Winter
11e88019c2
Fix travis 2019-07-28 15:40:31 +02:00
Felix Eckhofer
a783637a7a Restore sending "None" effect type (#667)
This is a regression from 369d175694.
2019-07-21 13:11:34 +02:00
Otto Winter
7210ad7ed9
Change ESP32 default power_save_mode to light (#661) 2019-07-03 20:42:55 +02:00
Otto Winter
1876c21e3e
WiFi networks priority (#658)
* WiFi networks priority

Fixes https://github.com/esphome/feature-requests/issues/136

* Print priority
2019-07-03 20:42:46 +02:00
Otto Winter
6516a6ff7e
Fix LG nbits 2019-07-03 17:16:46 +02:00
Otto Winter
85195436c1
Work around pytz tzname bug
Fixes https://github.com/esphome/issues/issues/445
2019-07-03 17:13:40 +02:00
Thomas Eckerstorfer
c6512013bb added tx20 wind speed sensor (#275)
* added tx20 wind speed sensor

* added test

* fixed lint errors

* fixed more lint errors

* updated tx20

* updated tx20 sensor

* updated to new structure and removed static variables

* removed content from __init__.py

* fixing lint errors

* resolved issues from review


Co-authored-by: Thomas <thomas.eckerstorfer@mic-cust.com>
Co-authored-by: Otto Winter <otto@otto-winter.com>
2019-07-03 16:42:32 +02:00
Otto Winter
81a070d03d
ESP32 Use NVS directly (#659) 2019-07-03 16:34:40 +02:00
Otto Winter
0ef1d178d2
Fix deep sleep on_shutdown hooks (#660)
Fixes https://github.com/esphome/feature-requests/issues/294
2019-07-03 16:34:03 +02:00
Nikolay Vasilchuk
762f1b1fc9 ZyAura CO2 / Temperature / Humidity Sensor (#656)
* ZyAura sensors support

* Validation

* Small refactoring

* Some checks

* Small fix

* Use floats, not double

Co-Authored-By: Otto Winter <otto@otto-winter.com>

* uint32_t now

Co-Authored-By: Otto Winter <otto@otto-winter.com>

* A constant for bits in a byte just over-complicates the source code

Co-Authored-By: Otto Winter <otto@otto-winter.com>

* Review fixes

* Review fixes

* Review fixes

* Review fixes

* Review fixes

* Review fixes

* Review fixes

* Review fixes

* Travis fixes

* Travis fixes

* Travis fixes
2019-07-03 16:33:18 +02:00
Otto Winter
7ad593d674
Add setup, loop as reserved IDs
Fixes https://github.com/esphome/issues/issues/496
2019-07-03 15:25:38 +02:00
Otto Winter
13522c8f19
WIP: ESP8266 work on connection issues (#648)
* Erase all flash for USB uploads on ESP8266s

Previously, only erased "write regions".

Downside: Config for other FWs like tasmota could be affected

Upside: Potentially fixes some ESP8266 connection issues

Related: https://github.com/esphome/issues/issues/455#issuecomment-503524479

* Clear WiFi settings for ESP8266

Clears wifi settings from retained storage on ESP8266 (if set).

Unsure if this is the actual issue, but it won't cause problems either.

* Update wifi_component_esp8266.cpp

* Revert erase chip for testing

* Improve wait_time calculation
2019-07-02 13:03:11 +02:00
Otto Winter
d2938e82db
Add calibrate_polynomial sensor filter (#642)
* Add calibrate_polynomial sensor filter

* Fix

* Lint

* Format
2019-07-02 13:02:55 +02:00
Otto Winter
f95d4ca106
CT Clamp ADS1115 Improvements (#647)
Fixes https://github.com/esphome/issues/issues/457
2019-07-02 13:02:46 +02:00
Otto Winter
486bafd009
Fix upload_speed must be str 2019-07-01 15:11:11 +02:00
Otto Winter
341c99b4fa
Better DHT error reporting 2019-07-01 11:10:03 +02:00
Otto Winter
83095e8989
Fix climate MQTT HA interop
Fixes https://github.com/esphome/issues/issues/494
2019-07-01 11:09:44 +02:00
Otto Winter
71ba4bc31c
Fix api client disconnect handler 2019-07-01 11:09:20 +02:00
Otto Winter
894ec07cc8
Allow multiple files in CLI syntax 2019-07-01 11:09:06 +02:00
Otto Winter
59091100e4
Fix YAMLError with unicode 2019-06-30 12:19:03 +02:00
Otto Winter
e5485ab650
Fix registry entry value copy 2019-06-30 12:18:41 +02:00
Otto Winter
6c493d10d2
More scheduler fixes 2019-06-30 12:18:27 +02:00
Otto Winter
840f599631
Dallas improve warnings 2019-06-30 09:14:16 +02:00
Otto Winter
5a76e61b1e
Prevent too long fallback AP SSID 2019-06-30 09:14:04 +02:00
Otto Winter
7b4366bfef
Fix scheduler 2019-06-30 09:13:52 +02:00
Otto Winter
8dee5c5fe8
Adjust default reboot timeouts 2019-06-30 09:12:48 +02:00
Otto Winter
b2e6d222cd
Remove unnecessary update_interval from schemas 2019-06-28 11:30:15 +02:00
Otto Winter
2712c44004
Update dependencies (#653)
* Update pio dependencies

* Platformio 4

* Fixes

* Update platformio_api.py

* Lint
2019-06-28 11:29:37 +02:00