* feat(test): Enhance NVS test
* fix(nvs): Remove unused Unity header and improve Serial wait loop
* refactor(nvs): Extract string increment logic into a separate function
* refactor(test): Format long strings in expect_exact calls for better readability
* feat(SDFS): Add destructor to clean up resources
* feat(test): Enhance NVS test
* fix(nvs): Remove unused Unity header and improve Serial wait loop
* refactor(nvs): Extract string increment logic into a separate function
* refactor(test): Format long strings in expect_exact calls for better readability
* feat(uart): fixes loopback function after IDF changes
IDF 5.4.1 has added a new function called uart_release_pin() that is called whenever new pins are set or when uart driver is deleted.
This has a side effect that causes RX pin to never work again with the loopback function. Other changes also have removed some GPIO setup that was necessary for the GPIO loopback mode work.
The PR forces a full RX Pin setup in order to make it work in GPIO Matrix with Loopback TX Signal
* feat(uart): adds missing include file
* feat(uart): removes not necessary part of the code
* fix(uart): commentaries style fix
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* ci(pre-commit): Apply automatic fixes
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
* Proper EDNS handling and cleaner NOERROR response
* fix: library.properties
reverting version number update - as it is done automatically
* ci(pre-commit): Apply automatic fixes
* Spelling Corrected and minor clarification in comments
* Removing commented out code fragments
* ci(pre-commit): Apply automatic fixes
* fix(pr): Fix typo
---------
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
* made some fix to the ESP32 I2S simple tone example
* edit the I2S - simple tone example
* edit the I2S - simple tone example
* some edit
* edit comment
* edit
* edit
* ci(pre-commit): Apply automatic fixes
---------
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
* fix(release): Replace all assets with chinese mirrors
* feat(release): Add script to append "-cn" to versions
* docs(install): Add instructions for users in China
AsyncUDP::listenMulticast() properly receives packets sent to IPv4
multicast addresses like 239.1.2.3, but it is not receiving packets sent
to IPv6 multicast addresses like ff12::6ood:cafe.
The root cause is a bit hidden: listen(NULL, port) would match
AsyncUDP::listen(const ip_addr_t *addr, uint16_t port), which calls
_udp_bind(_pcb, addr, port), which uses the lwIP API to call
udp_bind(struct udp_pcb *pcb, const ip_addr_t *ipaddr, u16_t port) at
the end. If lwIP has LWIP_IPV4 enabled, it checks if ipaddr == NULL and
sets it to IP4_ADDR_ANY. So an IPv6 address is never bound.
This fix checks the IP address passed to AsyncUDP::listenMulticast(). If
it is an IPv6 address, it constructs and passes the IPv6 any address
(::); otherwise (IPv4), it constructs and passes the IPv4 any address
(0.0.0.0).
* feat(zigbee): Support min max for Analog EP
* feat(zigbee): Use cfloat FLT_MAX
* ci(pre-commit): Apply automatic fixes
---------
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
* feat(ap): Add support for DHCP Captive Portal (opt 114)
* feat(ap): No need to guard the function
* ci(pre-commit): Apply automatic fixes
---------
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
HTTP 204 is a successful return code which indicates No Content. While it's appropriate to return a 304 if the server has content for a device but it hasn't change, it is more accurate for a server to return a 204 if it simply doesn't have any firmware files for a particular device.
Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>