Jesse Hills
d42f35de5d
Wrap ipv6 code a bit more ( #4574 )
...
* Wrap ipv6 code a bit more for when ipv6 support should not be compiled in
* More checks
* More uses
* Fix
2023-03-21 20:24:14 +00:00
Oxan van Leeuwen
86c0e6114f
Lock scheduler items while modifying them ( #4410 )
...
* Cosmetic fixes to scheduler code
* Add generic Mutex API
* Lock scheduler items while modifying them
* Always defer MQTT callbacks on Arduino
2023-02-26 18:43:08 +00:00
ShellAddicted
fe05d7aec1
Fix: Make MQTT over TLS actually work ( #3580 )
2022-06-20 11:17:58 +12:00
jimtng
4f57bf786b
Add mqtt.on_connect and mqtt.on_disconnect triggers ( #3520 )
2022-06-03 13:51:50 +12:00
Jesse Hills
047c18eac0
Add default object_id_generator for mqtt ( #3389 )
2022-04-14 11:25:31 +12:00
Martin
792108686c
Add mqtt for idf ( #2930 )
...
Co-authored-by: Flaviu Tamas <me@flaviutamas.com>
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
Co-authored-by: Oxan van Leeuwen <oxan@oxanvanleeuwen.nl>
2022-04-04 11:07:20 +12:00
Jesse Hills
38ff66debd
Remove stray define ( #3260 )
2022-03-02 16:32:45 +13:00
Andrej Komelj
9826726a72
Implement MQTT discovery object_id generator ( #3114 )
2022-02-08 22:58:38 +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
Jesse Hills
33f17f75a0
Upgrade ArduinoJson to 6.18.5 and migrate code ( #2844 )
2022-01-01 22:31:43 +13:00
Krzysztof Białek
515519bc87
Provide an option to select MQTT unique_id generator ( #2701 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
Co-authored-by: Oxan van Leeuwen <oxan@oxanvanleeuwen.nl>
2021-11-15 15:49:18 +01: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
Oxan van Leeuwen
40c474cd83
Run clang-tidy against ESP32 ( #2147 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
Co-authored-by: Otto winter <otto@otto-winter.com>
2021-09-13 18:11:27 +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
0cd24c629a
Compatibility with clang-tidy v14 ( #2272 )
2021-09-13 09:35:55 +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
Stefan Agner
13fe9e83fa
Use Clang 11 ( #1846 )
2021-06-08 22:16:17 +02:00
Gareth Cooper
e6f8e73705
Receive long MQTT payload ( #1590 )
2021-04-08 14:26:34 +02:00
Anthony Uk
76a6c39f25
mqtt_client: Added MQTTClientComponent::unsubscribe() ( #1672 )
...
Co-authored-by: Otto Winter <otto@otto-winter.com>
2021-04-08 14:21:42 +02:00
Otto Winter
d63cd8b4cd
Add additional custom lint checks ( #790 )
2019-10-23 14:43:27 +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
01db114724
Fix MQTT client_id changed ( #579 )
...
Fixes https://github.com/esphome/issues/issues/323
2019-05-31 10:37:10 +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