- 02 Nov, 2020 11 commits
-
-
Ernst Sikora authored
* Fix for issue #4158: Crash with stack trace originating in Bluedroid Improved configuration of scan response data in 'BLEAdvertising' avoids the crash: - Added member variable 'm_scanRespData' to configure scan response differently from advertising data - Initialization of 'm_scanRespData' in BLEAdvertising constructor - Use of 'm_scanRespData' within BLEAdvertising::start() to configure the scan response - 'Flags' and 'Appearance' are cleared in the scan response data - With this fix, device names of up to 29 characters can be used without causing a crash.
-
Niklas Mollenhauer authored
The web server currently lacks the ability to send a buffer. Only strings are supported. This PR adds an overload to sendContent.
-
Hristo Kapanakov authored
-
lbernstone authored
Make options list into a table
-
Ivan Golubic authored
Fixes: #3460 This code has been run in production for 1 month and it looks stable, no data dropped and it definitely fixes the issue described. I think that this can be merged to avoid using custom package referencing in PlatformIO that has been used in quite a few projects for now. Co-authored-by: Ivan Golubic <ivan@mvt-solutions.com>
-
Me No Dev authored
Add flash helper constructor to Uri
-
thewavelength authored
Add partition label argument to Update and ArduinoOTA classThe UpdateClass in the Updater component has the ability to update data toa SPIFFS partition. It selects the first available partition using theESP-IDF esp_partition_find_first() function.That behaviour is problematic if one has multiple SPIFFS partitions.This change allows a user to pass the label argument (defaults to NULL)to UpdateClass::begin() so a specific SPIFFS partition can be updated.Additionally, ArduinoOTA can set this partition label using thenew method ArduinoOTAClass::setPartitionLabel which is optional.This change does not break compatibility. (#4442) The UpdateClass in the Updater component has the ability to update data to a SPIFFS partition. It selects the first available partition using the ESP-IDF esp_partition_find_first() function. That behaviour is problematic if one has multiple SPIFFS partitions. This change allows a user to pass the label argument (defaults to NULL) to UpdateClass::begin() so a specific SPIFFS partition can be updated. Additionally, ArduinoOTA can set this partition label using the new method ArduinoOTAClass::setPartitionLabel which is optional. This change does not break compatibility.
-
thewavelength authored
* Add partition label argument to SPIFFSSPIFFS currently assumes there is only ever one partition.This change allows a user to pass the label argument (defaults to NULL)to SPIFFS::begin() so a specific SPIFFS partition can be referenced.This change does not break compatibility.
-
Jimmy Durand Wesolowski authored
* BLERemoteChar: fix descriptor 2902 write for characteristic notifications When registering a notification on a characteristic, the 2902 descriptor (CCCD) value is set to 1 (or 2 for indication). According to the BLUETOOTH CORE SPECIFICATION Version 5.2, Revision Date 2019-12-31, section 4.12.3 "Write Characteristic Descriptors" (page 1588), the characteristic descriptor write must expect a response. Currently, the descriptor write is performed without expecting a reponse, which prevents the notification to be functional with some BLE stacks. This commit modify the write to expect the response. Signed-off-by: Jimmy Durand Wesolowski <jimmy.durand.wesolowski@commsolid.com> * BLERemoteChar: forward GATT client event to characteristic descriptors This commits prevents a permanent wait when calling BLERemoteDescriptor readValue function, on the m_semaphoreReadDescrEvt semaphore. ESP32 BLE stack calls to remote characteristic - notification, - value read - value write and remote characteristic descriptor - value read are asynchronous. When such a call is performed by this library, a semaphore is taken prior to the BLE stack read or write operation, and waited on after it. Releasing the semaphore is done by the characteristic event handling function (gattClientEventHandler), when the appropriate event is received. However, the characteristic descriptor events are discarded, and the value read semaphore is never released. This commits forwards the GATT client events from the remote characteristic down to their remote characteristic descriptor, and implements their event handling. Adding a semaphore for the remote characteristic descriptor value write will be done in a separate commit. Signed-off-by: Jimmy Durand Wesolowski <jimmy.durand.wesolowski@commsolid.com> * BLERemoteDescriptor: add semaphore to characteristic descriptor write This adds a semaphore to characteristic descriptor value write, to mimic the value read function, and to ensure completion of the operation before we carry on. Signed-off-by: Jimmy Durand Wesolowski <jimmy.durand.wesolowski@commsolid.com> Co-authored-by: Jimmy Durand Wesolowski <jimmy.durand.wesolowski@commsolid.com>
-
Muhammad Mobashir authored
esp8266 --> esp32
-
snosrap authored
fixes: #4472
-
- 27 Oct, 2020 2 commits
- 19 Oct, 2020 1 commit
-
-
Bob Mooij authored
-
- 16 Oct, 2020 1 commit
-
-
Valerii Koval authored
Fixes possible issues with assembly files in external libraries
-
- 14 Oct, 2020 9 commits
-
-
Alexandre Trevizoli authored
* Corrections of Find, FindUntil and FindMulti Find has some bug that is not working with Ethernet.find() so, I copied code from Stream.h and Stream.cpp in AVR-CORE library and now it's working perfectly. I don't know where was the error, but an Ethernet.find compiled to MEGA2560 was working but not working when compiled to esp32, after corrections of code (copy of AVR-Core libraries) it's working perfect. So probably has some error on original ESP32-Core library. Below is part of code that was working with MEGA2560 and not with ESP32 libraries. client.find never return TRUE with ESP32 original library and with AVR it's works. boolean esp32_fw_update(EthernetClient &client, DecodedHeader &header, const String &field_filename, const String &field_crc) { char bound[header.boundary.length()+3]; char term[]="\r\n"; strcpy(bound,header.boundary.c_str()); strcat(bound,term); while (client.find(bound)) { String line=client.readStringUntil('\r'); * Update Stream.h * Update Stream.cpp Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
-
Dirk-Willem van Gulik authored
* Add an aditional (void *) arg to the RMT callback - to allow more flexible handling of the callback (e.g. by passing a private struct or a class pointer). Same pattern as used by the Ticker() and many others. Example updated & new example with a trapoline added. * Fix example for new API * Fix lint warnings * Add a second missed example. * Correct timeout & improve socket error handling.
-
Marco Sirabella authored
This is in line with the [arduino platform specification](https://arduino.github.io/arduino-cli/platform-specification/#recipes-for-extraction-of-executable-files-and-other-binary-data) specifying that the file extension after recipe.objcopy is arbitrary and that the AVR platform uses `eep` & `hex`, while the esp32 platform seems to have file extensions `partition.bin` & `bin`
-
Dan Oprescu authored
Fix support for following redirects added by ee88c42c (#4240) (#4385)
-
Andrey authored
-
programminghoch10 authored
-
programminghoch10 authored
* fix typos * made return value description a bit more helpful
-
Saptarsi Saha authored
* Updated Readme.md Added links to latest release. Made it look a lot cleaner. * Update README.md
-
Vo Linh Truc authored
I met problem while I was working with the WiFiClientSecure. I tried to found the source of the problem, and I found it in the sll_client.cpp. Please check my contribution. I've open this problem in #4335 but received no response.
-
- 03 Oct, 2020 2 commits
-
-
TANAKA Masayuki authored
-
Alex authored
-
- 02 Oct, 2020 6 commits
-
-
Shawn A authored
-
Pakpoom Eiamsouyngam authored
Please add OpenKB Board Product from INEX Co. Ltd. https://inex.co.th/shop/openkb.html
-
sasodoma authored
I spent quite a while today figuring out how to get an OTA update over HTTPS on a custom port working. A part of my problem was not putting a slash before the .bin filename, since it wasn't there in the example. This produced invalid HTTP requests. Adding the slash would make it clear that it needs to be there. Given that the URL in line 53 contains the same words "server" and "file.bin", one might assume that in line 55, the slash after the port number would get added automatically, however I have found out that without a slash you get an invalid request. Adding the slash removes any doubt.
-
Christoph Schultz authored
-
i3water authored
-
SPELEC authored
Add a new Dev Board S.ODI Ultra v1 in esp32 library
-
- 01 Oct, 2020 8 commits
-
-
h2zero authored
* HttpsOTAUpdate introduced new IDF component requirements. These have been added to CMakeLists.txt to correct compilation errors when using Cmake.
-
thebigpotatoe authored
I was playing with the mDNS service and noticed the method MDNSResponder::addService could return a Boolean with the way it is implemented just like other functions in this library. This would be handy to know at a higher level weather or not the service was added correctly to the mDNS server of the ESP32.
-
Jens Hauke authored
This is a fix for missing scan responses after a first successfull scan. While running the BLE_scan.ino sketch with wantDuplicates=false, i got only one result with correct advertising and scan response length (31,26): pBLEScan->setAdvertisedDeviceCallbacks(new MyAdvertisedDeviceCallbacks(), false); pBLEScan->start(scanTime, false); ... [W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 31 + 26, addr type: 1 All following calls to start() just returned the advertising data without scan response data: pBLEScan->start(scanTime, false); [W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 31 + 0, addr type: 1 With "wantDuplicates=true" i got: pBLEScan->setAdvertisedDeviceCallbacks(new MyAdvertisedDeviceCallbacks(), true); pBLEScan->start(scanTime, false); [W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 31 + 26, addr type: 1 [W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 31 + 26, addr type: 1 [W][BLEScan.cpp:73] handleGAPEvent(): ESP_GAP_SEARCH_INQ_CMPL_EVT Devices found: 1 Scan done! pBLEScan->start(scanTime, false); [W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 31 + 0, addr type: 1 [W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 0 + 26, addr type: 1 [W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 31 + 0, addr type: 1 [W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 0 + 26, addr type: 1 Explicitly initializing m_scan_params.scan_duplicate of BLEScan solves this issue (In my case the un-initialized value was m_scan_params.scan_duplicate == 1073599044). Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
-
lbernstone authored
* If WebServer.handleClient is run in a tight loop, it will starve other processes. So, if there is no connection, throw in a delay(1). Fixes #4348 * Made a variable to control the delay behavior
-
lienbacher authored
Fixes crash on ESP32 when I2C FiFo overflows and interrupt function is unable to handle crash and throws this error: [E][esp32-hal-i2c.c:1013] i2c_isr_handler_default(): unknown int=4 Co-authored-by: 0xDEADBEEF <0xde4dbeef@gmail.com>
-
Tom Davis authored
-
wadim authored
-
lbernstone authored
-