Jonathan Swoboda
e7ddc6f6d3
[multiple] Fix validation ranges (batch 2) ( #15533 )
2026-04-07 17:54:57 -04:00
J. Nick Koston
9ea27e68ee
[pcf8574][pca9554] Disable loop when all pins are outputs ( #15455 )
2026-04-04 22:52:40 -10:00
J. Nick Koston
2d9a42e4ba
[pcf8574][pca9554] Add optional interrupt pin to eliminate polling ( #15444 )
2026-04-04 13:56:21 -10:00
J. Nick Koston
a91e6d92f6
[core] Remove dead get_loop_priority code ( #15242 )
2026-03-29 17:32:43 -04:00
J. Nick Koston
ede2da2fbc
[core] Conditionally compile get_loop_priority with USE_LOOP_PRIORITY ( #14210 )
2026-02-23 10:57:23 +13:00
J. Nick Koston
d8849b16f2
[gpio] Use buf_append_printf in dump_summary for ESP8266 flash optimization ( #13283 )
2026-01-18 18:41:34 -10:00
J. Nick Koston
f41f0506c1
[pcf8574] Combine log statements to reduce loop blocking ( #12941 )
2026-01-04 14:05:17 -10:00
J. Nick Koston
916370a943
[gpio] Avoid heap allocation in dump_summary ( #12760 )
2026-01-02 15:42:56 -10:00
J. Nick Koston and Jesse Hills
afa191ae41
[pcf8574] Migrate to CachedGpioExpander to reduce I2C bus usage ( #10573 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2025-09-07 18:26:22 -05:00
J. Nick Koston
b7ce8c116b
[core] Centralize component setup logging to reduce flash usage ( #9885 )
2025-07-25 19:27:03 +00:00
Thomas Rupprecht and Jesse Hills
a59e1c7011
[core/pins] improve pins types ( #8848 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2025-06-11 18:06:41 +00:00
Keith Burzinski
44f1ff10e6
Introduce "communication failed" log macro ( #8939 )
2025-05-29 01:59:38 -05:00
Keith Burzinski
d99e3237f9
Streamline setup() logging (n, o, p, q, r) ( #8929 )
2025-05-29 07:23:53 +12:00
dependabot[bot]
4adda632bb
Bump ruff from 0.9.2 to 0.11.0 ( #8409 )
2025-03-20 09:51:23 -10:00
Djordje Mandic and Keith Burzinski
5108b9a8b7
Make get_flags() in GPIOPin mandatory ( #8182 )
...
Co-authored-by: Keith Burzinski <kbx81x@gmail.com >
2025-02-03 11:14:55 -06:00
Clyde Stubbs
d9792b0d92
Checks for pins used in multiple places ( #5666 )
2023-12-05 08:56:53 +09:00
Jesse Hills
9eea52ea85
Allow validation of pins based on hub config ( #5647 )
2023-11-02 15:32:00 +13:00
Otto Winter and Jesse Hills
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
Jesse Hills
07ae8ec553
Remove a whole bunch of deprecated/removed stuff ( #1981 )
2021-07-14 14:42:16 +12:00
Stefan Agner
501f88ca86
Avoid non-const globals and enable clang-tidy check ( #1892 )
2021-06-11 08:19:44 +12: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
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
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
amishv and Amish Vishwakarma
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
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