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
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
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
b5af3aa048
Update variable in scheduler ( #838 )
...
Fixes https://github.com/esphome/issues/issues/826
2019-11-06 22:35:22 +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
a6faccb4d9
Uppercase ESPHome ( #814 )
2019-10-31 20:09:07 +01: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
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
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
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
aed7b3fbb2
Fix typo in Component::set_interval ( #767 )
...
Ouch...
2019-10-18 15:33:18 +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
ac48ff1fd6
Fix potential ISR digital_write issue ( #753 )
2019-10-17 16:53:39 +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
Otto Winter
6c493d10d2
More scheduler fixes
2019-06-30 12:18:27 +02:00
Otto Winter
7b4366bfef
Fix scheduler
2019-06-30 09:13:52 +02:00
Otto Winter
369d175694
Create Protobuf Plugin for automatically generating native API stubs ( #633 )
...
* Create Protobuf Plugin for automatically generating native API stubs
* Format
* Delete api.proto
* Cleanup, use no_delay conditionally
* Updates
* Update
* Lint
* Lint
* Fixes
* Camera
* CustomAPIDevice
* Fix negative VarInt, Add User-defined services arrays
* Home Assistant Event
* Fixes
* Update custom_api_device.h
2019-06-18 19:31:22 +02:00
Otto Winter
904a0b26ea
Make logger string memory usage more efficient ( #641 )
...
* Make logger string storing more efficient
* Lint
2019-06-16 19:14:24 +02:00
Otto Winter
36f47ade70
Add Captive Portal ( #624 )
...
* WIP: Captive Portal
* Updates
* Updates
* Lint
* Fixes
2019-06-09 17:03:51 +02:00
Otto Winter
8db6f3129c
Fix scheduler
2019-06-09 13:19:57 +02:00
Otto Winter
b51cbc4207
Add central function scheduler ( #609 )
...
* Add central function scheduler
* Avoid unnecessary copies
* Lint
* Prevent more copies, store pointers
* Add never update_interval
2019-06-07 14:26:40 +02:00
Otto Winter
4fe0c95ccb
Allow id() syntax for custom code ( #621 )
...
* Allow id() syntax for custom code
* Lint
2019-06-07 14:26:17 +02:00
Peter Tatrai
0d36e66125
Fix ForCondition time duration check ( #610 )
...
According documentation ForCondition should evaluate to true if a nested condition is true for at least the specified time duration and not the less.
2019-06-04 18:34:51 +02:00
Otto Winter
ebe64e24f1
Move ESPHome version define ( #607 )
...
* Move ESPHome version define
* Lint
2019-06-03 16:07:15 +02:00
Otto Winter
c53483a3b2
ESP8266 connect fixes ( #605 )
...
* ESP8266 Connection Fixes
* Update client.py
* Update mqtt_client.cpp
* Update mqtt_client.cpp
* Fix ping
* Async dump config
* Update base image to 1.7.0
* Update helpers.py
* Updates
* Update Dockerfile.lint
2019-06-03 15:21:36 +02:00
Otto Winter
15cb0e4ff3
Warn if a component does long-running work in loop thread ( #565 )
...
* Warn if a component does long-running work in loop thread
* Update application.cpp
2019-05-29 11:13:05 +02:00
Otto Winter
16c2929bb4
Fix parse_float accepting invalid input
2019-05-24 19:32:59 +02:00
Otto Winter
0281914507
CCS811 support ( #536 )
...
* CCS811
* Move define, add test
* Remove sun artifact
* Lint
* Lint
2019-05-13 13:06:14 +02:00
Otto Winter
f811b1157c
Updates for 1.13 ( #546 )
...
* Update CI matcher
* Check Executable bit
* Quicklint
* Updates
* Allow pm1.0 and pm10.0 for PMS5003ST
Fixes https://github.com/esphome/feature-requests/issues/225
* PowerSupplyRequester
* Lint
* Include debug data in generated main.cpp
* Updates
* Auto-select bit_depth
* Updates
2019-05-12 23:04:36 +02:00
Otto Winter
f1a0e5a313
Sun support ( #531 )
...
* Sun
* Add sun support
* Lint
* Updates
* Fix elevation
* Lint
* Update mqtt_climate.cpp
2019-05-11 12:31:00 +02:00
Otto Winter
521c080989
Updates
2019-05-08 09:58:03 +02:00
mtl010957
c569d022ec
Fix MQTT Not Working in dev branch ( #527 )
...
* Fix MQTT not working
* Fix minor typo causing compile error
2019-05-07 21:19:30 +02:00
Otto Winter
595dfe7e24
Addressable updates
2019-04-25 10:36:55 +02:00
Otto Winter
766f6c045d
Updates
2019-04-24 23:49:02 +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