1. 03 11月, 2020 15 次提交
    • I
      Add sdkconfig option CONFIG_ARDUINO_UDP_TASK_PRIORITY, which sets the task... · 0e341a61
      Ivorius 提交于
      Add sdkconfig option CONFIG_ARDUINO_UDP_TASK_PRIORITY, which sets the task priority for the UDP vtask." (#4131)
      
      0e341a61
    • B
      Fix BLE connection handling (#4137) · 76cd2e23
      buxtronix 提交于
      Remove device from Peer list if connection fails.
      
      Only call onConnect callback if connection was successful.
      
      Only call onDisconnect callback if the connection was previously connected (ESP_GATTC_DISCONNECT_EVT is fired on a unsuccessful connection attempt also).
      
      Resolves a number of issues with phantom events and callbacks being fired.
      76cd2e23
    • B
      Fix parameter to BLEDevice::updatePeerDevice (#4133) · 9f7ff009
      buxtronix 提交于
      ::addPeerDevice and ::removePeerDevice are called with m_appId, so should ::updatePeerDevice as all use the same parameter for the underlying map's key.
      9f7ff009
    • M
      Fix header parsing · 704b71da
      Me No Dev 提交于
      fixes #4454
      
      closes #4455
      704b71da
    • E
      Fix for issue #4158: BLEAdvertising - Crash with stack trace originating in Bluedroid (#4182) · 7c057217
      Ernst Sikora 提交于
      * 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.
      7c057217
    • N
      Add sendContent overload that takes a const char* and a length (#4276) · f57c3678
      Niklas Mollenhauer 提交于
      The web server currently lacks the ability to send a buffer. Only strings are supported.
      
      This PR adds an overload to sendContent.
      f57c3678
    • H
      HTTPUpdateServer library (#4244) · 3054bdf5
      Hristo Kapanakov 提交于
      3054bdf5
    • L
      Update ISSUE_TEMPLATE.md (#4416) · 1014ba40
      lbernstone 提交于
      Make options list into a table
      1014ba40
    • I
      Fix for espressif#3460 issue (#4424) · d6b91872
      Ivan Golubic 提交于
      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: NIvan Golubic <ivan@mvt-solutions.com>
      d6b91872
    • M
      Merge pull request #4429 from Bmooij/feature/Add_flash_helper_constructor_to_Uri · d6b383f8
      Me No Dev 提交于
      Add flash helper constructor to Uri
      d6b383f8
    • T
      Add partition label argument to Update and ArduinoOTA classThe UpdateClass in... · cadbad88
      thewavelength 提交于
      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.
      cadbad88
    • T
      Add partition label argument to SPIFFS (#4443) · 3cbfa2ff
      thewavelength 提交于
      * 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.
      3cbfa2ff
    • J
      Fixing BLE GATT Characteristic notification and Characteristic Descriptor read (#4464) · 360e04fa
      Jimmy Durand Wesolowski 提交于
      * 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: NJimmy 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: NJimmy 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: NJimmy Durand Wesolowski <jimmy.durand.wesolowski@commsolid.com>
      Co-authored-by: NJimmy Durand Wesolowski <jimmy.durand.wesolowski@commsolid.com>
      360e04fa
    • M
      Small description comment correction (#4471) · 57145ade
      Muhammad Mobashir 提交于
      esp8266 --> esp32
      57145ade
    • S
      Don't convert to null-terminated string prior to writeValue (#4473) · f3902467
      snosrap 提交于
      fixes: #4472
      f3902467
  2. 27 10月, 2020 2 次提交
  3. 19 10月, 2020 1 次提交
  4. 17 10月, 2020 1 次提交
  5. 14 10月, 2020 9 次提交
  6. 03 10月, 2020 8 次提交
  7. 01 10月, 2020 4 次提交
    • H
      Fix missing headers when compiling as IDF component with Cmake (#4377) · 82112384
      h2zero 提交于
      * HttpsOTAUpdate introduced new IDF component requirements.
      These have been added to CMakeLists.txt to correct compilation errors when using Cmake.
      82112384
    • T
      Update MDNSResponder::addService to return a boolean (#4365) · 99aa8664
      thebigpotatoe 提交于
      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.
      99aa8664
    • J
      Fix for missed scan response data (BLEScan). (#4358) · 82670b96
      Jens Hauke 提交于
      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: NMe No Dev <me-no-dev@users.noreply.github.com>
      82670b96
    • L
      WebServer.handleClient delay (#4350) · 9e7b13e4
      lbernstone 提交于
      * 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
      9e7b13e4