Skip to content

Conversation

@me-no-dev
Copy link
Member

This pull request introduces the new ESP_HostedOTA library for ESP32 Arduino platforms, enabling over-the-air (OTA) updates for the ESP-Hosted co-processor. It adds a complete implementation, example usage, and improves reliability and error handling in the underlying hosted update functions.

New ESP_HostedOTA Library:

  • Added the ESP_HostedOTA library with metadata (library.properties), keyword highlighting (keywords.txt), and implementation files (ESP_HostedOTA.cpp, ESP_HostedOTA.h). The core function updateEspHostedSlave() manages the OTA update process, including network checks, error handling, and update activation. [1] [2] [3] [4]

  • Included a usage example (ESP_HostedOTA.ino) demonstrating WiFi connection and triggering the OTA update, with instructions for user configuration.

Reliability and Error Handling Improvements:

  • Updated esp32-hal-hosted.c to check initialization before performing update operations, logging errors and returning false if not initialized. This prevents invalid update attempts and improves robustness. [1] [2] [3] [4] [5]

  • Enhanced initialization and connection logic in hostedInit() to provide detailed error messages and ensure proper state management during setup and reinitialization.

Minor Codebase Updates:

  • Added missing header include for esp32-hal.h to ensure proper compilation.

  • Declared hostedInit() and hostedDeinit() functions for better code organization.

@me-no-dev me-no-dev requested a review from a team as a code owner November 25, 2025 13:25
@me-no-dev me-no-dev requested a review from Copilot November 25, 2025 13:25
@github-actions
Copy link
Contributor

github-actions bot commented Nov 25, 2025

Messages
📖 🎉 Good Job! All checks are passing!

👋 Hello me-no-dev, we appreciate your contribution to this project!


📘 Please review the project's Contributions Guide for key guidelines on code, documentation, testing, and more.

🖊️ Please also make sure you have read and signed the Contributor License Agreement for this project.

Click to see more instructions ...


This automated output is generated by the PR linter DangerJS, which checks if your Pull Request meets the project's requirements and helps you fix potential issues.

DangerJS is triggered with each push event to a Pull Request and modify the contents of this comment.

Please consider the following:
- Danger mainly focuses on the PR structure and formatting and can't understand the meaning behind your code or changes.
- Danger is not a substitute for human code reviews; it's still important to request a code review from your colleagues.
- To manually retry these Danger checks, please navigate to the Actions tab and re-run last Danger workflow.

Review and merge process you can expect ...


We do welcome contributions in the form of bug reports, feature requests and pull requests.

1. An internal issue has been created for the PR, we assign it to the relevant engineer.
2. They review the PR and either approve it or ask you for changes or clarifications.
3. Once the GitHub PR is approved we do the final review, collect approvals from core owners and make sure all the automated tests are passing.
- At this point we may do some adjustments to the proposed change, or extend it by adding tests or documentation.
4. If the change is approved and passes the tests it is merged into the default branch.

Generated by 🚫 dangerJS against 5ebe76d

Copilot finished reviewing on behalf of me-no-dev November 25, 2025 13:27
@me-no-dev me-no-dev requested a review from SuGlider as a code owner November 25, 2025 13:29
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a new ESP_HostedOTA library that enables over-the-air firmware updates for ESP-Hosted co-processors on ESP32 Arduino platforms. The implementation includes HTTP-based firmware download, robust error handling, and improved initialization checks in the underlying hosted update functions.

Key changes:

  • New ESP_HostedOTA library with the updateEspHostedSlave() function for managing OTA updates
  • Enhanced error handling with initialization checks across all update-related functions
  • Improved logging and state management in hostedInit() and hostedActivateUpdate()

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
libraries/ESP_HostedOTA/src/ESP_HostedOTA.h Declares the main OTA update function
libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp Implements OTA update logic with HTTP download and firmware write operations
libraries/ESP_HostedOTA/library.properties Library metadata and configuration
libraries/ESP_HostedOTA/keywords.txt Syntax highlighting definitions
libraries/ESP_HostedOTA/examples/ESP_HostedOTA/ESP_HostedOTA.ino Example demonstrating WiFi connection and OTA update
cores/esp32/esp32-hal-hosted.c Adds initialization checks, improves error handling, and version-aware activation logic
Comments suppressed due to low confidence (1)

cores/esp32/esp32-hal-hosted.c:191

  • The hosted_initialized flag is set to true before any initialization steps are attempted. If esp_hosted_sdio_set_config() fails at line 200-203 or esp_hosted_init() fails at line 205-209, the function returns false but doesn't reset hosted_initialized back to false, leaving it in an inconsistent state. Move this assignment after all initialization steps succeed, or ensure it's set to false on all error paths.
 hosted_initialized = true; 

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review for a chance to win a $100 gift card. Take the survey.

@github-actions
Copy link
Contributor

github-actions bot commented Nov 25, 2025

Test Results

 76 files   76 suites   16m 13s ⏱️
 38 tests  37 ✅ 0 💤 1 ❌
241 runs  240 ✅ 0 💤 1 ❌

For more details on these failures, see this check.

Results for commit 5ebe76d.

♻️ This comment has been updated with latest results.

@me-no-dev me-no-dev added the Status: Review needed Issue or PR is awaiting review label Nov 25, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Nov 25, 2025

Memory usage test (comparing PR against master branch)

The table below shows the summary of memory usage change (decrease - increase) in bytes and percentage for each target.

MemoryFLASH [bytes]FLASH [%]RAM [bytes]RAM [%]
TargetDECINCDECINCDECINCDECINC
ESP32C5000.000.00000.000.00
ESP32P40⚠️ +180.000.00000.000.00
ESP32S3000.000.00000.000.00
ESP32S2000.000.00000.000.00
ESP32C3000.000.00000.000.00
ESP32C6000.000.00000.000.00
ESP32H2000.000.00000.000.00
ESP32000.000.00000.000.00
Click to expand the detailed deltas report [usage change in BYTES]
TargetESP32C5ESP32P4ESP32S3ESP32S2ESP32C3ESP32C6ESP32H2ESP32
ExampleFLASHRAMFLASHRAMFLASHRAMFLASHRAMFLASHRAMFLASHRAMFLASHRAMFLASHRAM
libraries/ArduinoOTA/examples/BasicOTA00⚠️ +18000000000--00
libraries/AsyncUDP/examples/AsyncUDPClient00⚠️ +18000000000--00
libraries/AsyncUDP/examples/AsyncUDPMulticastServer00⚠️ +18000000000--00
libraries/AsyncUDP/examples/AsyncUDPServer00⚠️ +18000000000--00
libraries/BLE/examples/Beacon_Scanner00⚠️ +18000--00000000
libraries/BLE/examples/Client00⚠️ +18000--00000000
libraries/BLE/examples/Client_multiconnect00⚠️ +18000--00000000
libraries/BLE/examples/Client_secure_static_passkey00⚠️ +18000--00000000
libraries/BLE/examples/EddystoneTLM_Beacon00⚠️ +18000--00000000
libraries/BLE/examples/EddystoneURL_Beacon00⚠️ +18000--00000000
libraries/BLE/examples/Notify00⚠️ +18000--00000000
libraries/BLE/examples/Scan00⚠️ +18000--00000000
libraries/BLE/examples/Server00⚠️ +18000--00000000
libraries/BLE/examples/Server_multiconnect00⚠️ +18000--00000000
libraries/BLE/examples/Server_secure_authorization00--00--000000--
libraries/BLE/examples/Server_secure_static_passkey00⚠️ +18000--00000000
libraries/BLE/examples/UART00⚠️ +18000--00000000
libraries/BLE/examples/Write00⚠️ +18000--00000000
libraries/BLE/examples/iBeacon00⚠️ +18000--00000000
libraries/DNSServer/examples/CaptivePortal00⚠️ +18000000000--00
libraries/EEPROM/examples/eeprom_class0000000000000000
libraries/EEPROM/examples/eeprom_extra0000000000000000
libraries/EEPROM/examples/eeprom_write0000000000000000
libraries/ESP32/examples/AnalogOut/LEDCFade0000000000000000
libraries/ESP32/examples/AnalogOut/LEDCGammaFade0000------0000--
libraries/ESP32/examples/AnalogOut/LEDCSingleChannel0000000000000000
libraries/ESP32/examples/AnalogOut/LEDCSoftwareFade0000000000000000
libraries/ESP32/examples/AnalogOut/SigmaDelta0000000000000000
libraries/ESP32/examples/AnalogOut/ledcFrequency0000000000000000
libraries/ESP32/examples/AnalogOut/ledcWrite_RGB0000000000000000
libraries/ESP32/examples/AnalogRead0000000000000000
libraries/ESP32/examples/AnalogReadContinuous0000000000000000
libraries/ESP32/examples/ArduinoStackSize0000000000000000
libraries/ESP32/examples/ArduinoWaitTimeBeforeStartingSketch0000000000000000
libraries/ESP32/examples/CI/CIBoardsTest0000000000000000
libraries/ESP32/examples/ChipID/GetChipID0000000000000000
libraries/ESP32/examples/DeepSleep/TimerWakeUp000000000000--00
libraries/ESP32/examples/FreeRTOS/BasicMultiThreading0000000000000000
libraries/ESP32/examples/FreeRTOS/Mutex0000000000000000
libraries/ESP32/examples/FreeRTOS/Queue0000000000000000
libraries/ESP32/examples/FreeRTOS/Semaphore0000000000000000
libraries/ESP32/examples/GPIO/BlinkRGB0000000000000000
libraries/ESP32/examples/GPIO/FunctionalInterrupt0000000000000000
libraries/ESP32/examples/GPIO/FunctionalInterruptLambda0000000000000000
libraries/ESP32/examples/GPIO/FunctionalInterruptStruct0000000000000000
libraries/ESP32/examples/GPIO/GPIOInterrupt0000000000000000
libraries/ESP32/examples/HWCDC_Events000000--000000--
libraries/ESP32/examples/MacAddress/GetMacAddress0000000000000000
libraries/ESP32/examples/RMT/Legacy_RMT_Driver_Compatible0000000000000000
libraries/ESP32/examples/RMT/RMTCallback0000000000000000
libraries/ESP32/examples/RMT/RMTLoopback0000000000000000
libraries/ESP32/examples/RMT/RMTReadXJT0000000000000000
libraries/ESP32/examples/RMT/RMTWrite_RGB_LED0000000000000000
libraries/ESP32/examples/RMT/RMT_CPUFreq_Test0000000000000000
libraries/ESP32/examples/RMT/RMT_EndOfTransmissionState0000000000000000
libraries/ESP32/examples/RMT/RMT_LED_Blink0000000000000000
libraries/ESP32/examples/ResetReason/ResetReason0000000000000000
libraries/ESP32/examples/ResetReason/ResetReason20000000000000000
libraries/ESP32/examples/Serial/BaudRateDetect_Demo0000000000000000
libraries/ESP32/examples/Serial/OnReceiveError_BREAK_Demo0000000000000000
libraries/ESP32/examples/Serial/OnReceive_Demo0000000000000000
libraries/ESP32/examples/Serial/RS485_Echo_Demo0000000000000000
libraries/ESP32/examples/Serial/RxFIFOFull_Demo0000000000000000
libraries/ESP32/examples/Serial/RxTimeout_Demo0000000000000000
libraries/ESP32/examples/Serial/Serial_All_CPU_Freqs0000000000000000
libraries/ESP32/examples/Serial/Serial_STD_Func_OnReceive0000000000000000
libraries/ESP32/examples/Serial/onReceiveExample0000000000000000
libraries/ESP32/examples/Template/ExampleTemplate0000000000000000
libraries/ESP32/examples/Time/SimpleTime00⚠️ +18000000000--00
libraries/ESP32/examples/Timer/RepeatTimer0000000000000000
libraries/ESP32/examples/Timer/WatchdogTimer0000000000000000
libraries/ESP_I2S/examples/ES8388_loopback0000000000000000
libraries/ESP_I2S/examples/Simple_tone0000000000000000
libraries/ESP_NOW/examples/ESP_NOW_Broadcast_Master00--00000000--00
libraries/ESP_NOW/examples/ESP_NOW_Broadcast_Slave00--00000000--00
libraries/ESP_NOW/examples/ESP_NOW_Network00--00000000--00
libraries/ESP_NOW/examples/ESP_NOW_Serial00--00000000--00
libraries/ESPmDNS/examples/mDNS-SD_Extended00⚠️ +18000000000--00
libraries/ESPmDNS/examples/mDNS_Web_Server00⚠️ +18000000000--00
libraries/Ethernet/examples/ETH_W5500_Arduino_SPI0000000000000000
libraries/Ethernet/examples/ETH_W5500_IDF_SPI0000000000000000
libraries/Ethernet/examples/ETH_WIFI_BRIDGE00⚠️ +18000000000--00
libraries/FFat/examples/FFat_Test0000000000000000
libraries/FFat/examples/FFat_time00⚠️ +18000000000--00
libraries/HTTPClient/examples/Authorization00⚠️ +18000000000--00
libraries/HTTPClient/examples/BasicHttpClient00⚠️ +18000000000--00
libraries/HTTPClient/examples/BasicHttpsClient00⚠️ +18000000000--00
libraries/HTTPClient/examples/CustomHeaders00⚠️ +18000000000--00
libraries/HTTPClient/examples/HTTPClientEnterprise00--00000000--00
libraries/HTTPClient/examples/ReuseConnection00⚠️ +18000000000--00
libraries/HTTPClient/examples/StreamHttpClient00⚠️ +18000000000--00
libraries/HTTPUpdate/examples/httpUpdate00⚠️ +18000000000--00
libraries/HTTPUpdate/examples/httpUpdateSPIFFS00⚠️ +18000000000--00
libraries/HTTPUpdate/examples/httpUpdateSecure00⚠️ +18000000000--00
libraries/HTTPUpdateServer/examples/WebUpdater00⚠️ +18000000000--00
libraries/Hash/examples/HEX0000000000000000
libraries/Hash/examples/MD50000000000000000
libraries/Hash/examples/PBKDF2_HMAC0000000000000000
libraries/Hash/examples/SHA10000000000000000
libraries/Hash/examples/SHA20000000000000000
libraries/Hash/examples/SHA30000000000000000
libraries/Hash/examples/SHA3Stream0000000000000000
libraries/Insights/examples/DiagnosticsSmokeTest00--00000000--00
libraries/Insights/examples/MinimalDiagnostics00--00000000--00
libraries/LittleFS/examples/LITTLEFS_test0000000000000000
libraries/LittleFS/examples/LITTLEFS_time00⚠️ +18000000000--00
libraries/Matter/examples/MatterColorLight00--000000000000
libraries/Matter/examples/MatterCommissionTest00--000000000000
libraries/Matter/examples/MatterComposedLights00--000000000000
libraries/Matter/examples/MatterContactSensor00--000000000000
libraries/Matter/examples/MatterDimmableLight00--000000000000
libraries/Matter/examples/MatterEnhancedColorLight00--000000000000
libraries/Matter/examples/MatterEvents00--000000000000
libraries/Matter/examples/MatterFan00--000000000000
libraries/Matter/examples/MatterHumiditySensor00--000000000000
libraries/Matter/examples/MatterLambdaSingleCallbackManyEPs00--000000000000
libraries/Matter/examples/MatterMinimum00--000000000000
libraries/Matter/examples/MatterOccupancySensor00--000000000000
libraries/Matter/examples/MatterOnIdentify00--000000000000
libraries/Matter/examples/MatterOnOffLight00--000000000000
libraries/Matter/examples/MatterOnOffPlugin00--000000000000
libraries/Matter/examples/MatterPressureSensor00--000000000000
libraries/Matter/examples/MatterSmartButton00--000000000000
libraries/Matter/examples/MatterTemperatureLight00--000000000000
libraries/Matter/examples/MatterTemperatureSensor00--000000000000
libraries/Matter/examples/MatterThermostat00--000000000000
libraries/NetBIOS/examples/ESP_NBNST00⚠️ +18000000000--00
libraries/NetworkClientSecure/examples/WiFiClientInsecure00⚠️ +18000000000--00
libraries/NetworkClientSecure/examples/WiFiClientPSK00⚠️ +18000000000--00
libraries/NetworkClientSecure/examples/WiFiClientSecure00⚠️ +18000000000--00
libraries/NetworkClientSecure/examples/WiFiClientSecureEnterprise00--00000000--00
libraries/NetworkClientSecure/examples/WiFiClientSecureProtocolUpgrade00⚠️ +18000000000--00
libraries/NetworkClientSecure/examples/WiFiClientShowPeerCredentials00⚠️ +18000000000--00
libraries/NetworkClientSecure/examples/WiFiClientTrustOnFirstUse00⚠️ +18000000000--00
libraries/OpenThread/examples/CLI/COAP/coap_lamp00--------0000--
libraries/OpenThread/examples/CLI/COAP/coap_switch00--------0000--
libraries/OpenThread/examples/CLI/SimpleCLI00--------0000--
libraries/OpenThread/examples/CLI/SimpleNode00--------0000--
libraries/OpenThread/examples/CLI/SimpleThreadNetwork/ExtendedRouterNode00--------0000--
libraries/OpenThread/examples/CLI/SimpleThreadNetwork/LeaderNode00--------0000--
libraries/OpenThread/examples/CLI/SimpleThreadNetwork/RouterNode00--------0000--
libraries/OpenThread/examples/CLI/ThreadScan00--------0000--
libraries/OpenThread/examples/CLI/onReceive00--------0000--
libraries/OpenThread/examples/Native/SimpleThreadNetwork/LeaderNode00--------0000--
libraries/OpenThread/examples/Native/SimpleThreadNetwork/RouterNode00--------0000--
libraries/PPP/examples/PPP_Basic0000000000000000
libraries/PPP/examples/PPP_WIFI_BRIDGE00⚠️ +18000000000--00
libraries/Preferences/examples/Prefs2Struct0000000000000000
libraries/Preferences/examples/StartCounter0000000000000000
libraries/RainMaker/examples/RMakerCustom00--00000000----
libraries/RainMaker/examples/RMakerCustomAirCooler00--00000000----
libraries/RainMaker/examples/RMakerSonoffDualR300--00000000----
libraries/RainMaker/examples/RMakerSwitch00--00000000----
libraries/SD/examples/SD_Test0000000000000000
libraries/SD/examples/SD_time00⚠️ +18000000000--00
libraries/SPI/examples/SPI_Multiple_Buses0000000000000000
libraries/SPIFFS/examples/SPIFFS_Test0000000000000000
libraries/SPIFFS/examples/SPIFFS_time00⚠️ +18000000000--00
libraries/TFLiteMicro/examples/hello_world0000000000000000
libraries/Ticker/examples/Blinker0000000000000000
libraries/Ticker/examples/TickerBasic0000000000000000
libraries/Ticker/examples/TickerParameter0000000000000000
libraries/Update/examples/AWS_S3_OTA_Update00⚠️ +18000000000--00
libraries/Update/examples/HTTPS_OTA_Update00⚠️ +18000000000--00
libraries/Update/examples/HTTP_Client_AES_OTA_Update00⚠️ +18000000000--00
libraries/Update/examples/HTTP_Server_AES_OTA_Update00⚠️ +18000000000--00
libraries/Update/examples/OTAWebUpdater00⚠️ +18000000000--00
libraries/Update/examples/SD_Update0000000000000000
libraries/WebServer/examples/AdvancedWebServer00⚠️ +18000000000--00
libraries/WebServer/examples/ChunkWriting00⚠️ +18000000000--00
libraries/WebServer/examples/FSBrowser00⚠️ +18000000000--00
libraries/WebServer/examples/Filters00⚠️ +18000000000--00
libraries/WebServer/examples/HelloServer00⚠️ +18000000000--00
libraries/WebServer/examples/HttpAdvancedAuth00⚠️ +18000000000--00
libraries/WebServer/examples/HttpAuthCallback00⚠️ +18000000000--00
libraries/WebServer/examples/HttpAuthCallbackInline00⚠️ +18000000000--00
libraries/WebServer/examples/HttpBasicAuth00⚠️ +18000000000--00
libraries/WebServer/examples/HttpBasicAuthSHA100⚠️ +18000000000--00
libraries/WebServer/examples/HttpBasicAuthSHA1orBearerToken00⚠️ +18000000000--00
libraries/WebServer/examples/Middleware00--00000000--00
libraries/WebServer/examples/MultiHomedServers00⚠️ +18000000000--00
libraries/WebServer/examples/PathArgServer00⚠️ +18000000000--00
libraries/WebServer/examples/SDWebServer00⚠️ +18000000000--00
libraries/WebServer/examples/SimpleAuthentification00⚠️ +18000000000--00
libraries/WebServer/examples/UploadHugeFile00⚠️ +18000000000--00
libraries/WebServer/examples/WebServer00⚠️ +18000000000--00
libraries/WebServer/examples/WebUpdate00⚠️ +18000000000--00
libraries/WiFi/examples/FTM/FTM_Initiator00⚠️ +18000000000--00
libraries/WiFi/examples/FTM/FTM_Responder00⚠️ +18000000000--00
libraries/WiFi/examples/SimpleWiFiServer00⚠️ +18000000000--00
libraries/WiFi/examples/WPS00--00000000--00
libraries/WiFi/examples/WiFiAccessPoint00⚠️ +18000000000--00
libraries/WiFi/examples/WiFiBlueToothSwitch00--00--0000--00
libraries/WiFi/examples/WiFiClient00⚠️ +18000000000--00
libraries/WiFi/examples/WiFiClientBasic00⚠️ +18000000000--00
libraries/WiFi/examples/WiFiClientConnect00⚠️ +18000000000--00
libraries/WiFi/examples/WiFiClientEnterprise00--00000000--00
libraries/WiFi/examples/WiFiClientEvents00⚠️ +18000000000--00
libraries/WiFi/examples/WiFiClientStaticIP00⚠️ +18000000000--00
libraries/WiFi/examples/WiFiExtender00⚠️ +18000000000--00
libraries/WiFi/examples/WiFiIPv600⚠️ +18000000000--00
libraries/WiFi/examples/WiFiMulti00⚠️ +18000000000--00
libraries/WiFi/examples/WiFiMultiAdvanced00⚠️ +18000000000--00
libraries/WiFi/examples/WiFiScan00⚠️ +18000000000--00
libraries/WiFi/examples/WiFiScanAsync00⚠️ +18000000000--00
libraries/WiFi/examples/WiFiScanDualAntenna00⚠️ +18000000000--00
libraries/WiFi/examples/WiFiScanTime00⚠️ +18000000000--00
libraries/WiFi/examples/WiFiSmartConfig00--00000000--00
libraries/WiFi/examples/WiFiTelnetToSerial00⚠️ +18000000000--00
libraries/WiFi/examples/WiFiUDPClient00⚠️ +18000000000--00
libraries/WiFiProv/examples/WiFiProv00--00000000--00
libraries/Wire/examples/WireMaster0000000000000000
libraries/Wire/examples/WireScan0000000000000000
libraries/Wire/examples/WireSlave0000000000000000
libraries/Wire/examples/WireSlaveFunctionalCallback0000000000000000
libraries/Zigbee/examples/Zigbee_Analog_Input_Output00--000000000000
libraries/Zigbee/examples/Zigbee_Binary_Input_Output00--------0000--
libraries/Zigbee/examples/Zigbee_CarbonDioxide_Sensor00--------0000--
libraries/Zigbee/examples/Zigbee_Color_Dimmable_Light00--------0000--
libraries/Zigbee/examples/Zigbee_Color_Dimmer_Switch00--000000000000
libraries/Zigbee/examples/Zigbee_Contact_Switch00--------0000--
libraries/Zigbee/examples/Zigbee_Dimmable_Light00--------0000--
libraries/Zigbee/examples/Zigbee_Electrical_AC_Sensor00--000000000000
libraries/Zigbee/examples/Zigbee_Electrical_AC_Sensor_MultiPhase00--000000000000
libraries/Zigbee/examples/Zigbee_Electrical_DC_Sensor00--------0000--
libraries/Zigbee/examples/Zigbee_Fan_Control00--000000000000
libraries/Zigbee/examples/Zigbee_Gateway00--000000----00
libraries/Zigbee/examples/Zigbee_Illuminance_Sensor00--------0000--
libraries/Zigbee/examples/Zigbee_Multistate_Input_Output00--000000000000
libraries/Zigbee/examples/Zigbee_OTA_Client00--------0000--
libraries/Zigbee/examples/Zigbee_Occupancy_Sensor00--------0000--
libraries/Zigbee/examples/Zigbee_On_Off_Light00--------0000--
libraries/Zigbee/examples/Zigbee_On_Off_MultiSwitch00--000000000000
libraries/Zigbee/examples/Zigbee_On_Off_Switch00--000000000000
libraries/Zigbee/examples/Zigbee_PM25_Sensor00--------0000--
libraries/Zigbee/examples/Zigbee_Power_Outlet00--000000000000
libraries/Zigbee/examples/Zigbee_Pressure_Flow_Sensor00--------0000--
libraries/Zigbee/examples/Zigbee_Range_Extender00--000000000000
libraries/Zigbee/examples/Zigbee_Scan_Networks00--------0000--
libraries/Zigbee/examples/Zigbee_Temp_Hum_Sensor_Sleepy00--------0000--
libraries/Zigbee/examples/Zigbee_Temperature_Sensor00--------0000--
libraries/Zigbee/examples/Zigbee_Thermostat00--000000000000
libraries/Zigbee/examples/Zigbee_Vibration_Sensor00--------0000--
libraries/Zigbee/examples/Zigbee_Wind_Speed_Sensor00--------0000--
libraries/Zigbee/examples/Zigbee_Window_Covering00--------0000--
libraries/ESP32/examples/DeepSleep/TouchWakeUp--000000------00
libraries/ESP32/examples/TWAI/TWAIreceive--00000000000000
libraries/ESP32/examples/TWAI/TWAItransmit--00000000000000
libraries/ESP32/examples/Touch/TouchButton--000000------00
libraries/ESP32/examples/Touch/TouchInterrupt--000000------00
libraries/ESP32/examples/Touch/TouchRead--000000------00
libraries/ESP_HostedOTA/examples/ESP_HostedOTA----------------
libraries/ESP_I2S/examples/Record_to_WAV--0000--------00
libraries/ESP_SR/examples/Basic--0000----------
libraries/Ethernet/examples/ETH_TLK110--00----------00
libraries/SD_MMC/examples/SD2USBMSC--0000----------
libraries/SD_MMC/examples/SDMMC_Test--0000--------00
libraries/SD_MMC/examples/SDMMC_time--⚠️ +18000--------00
libraries/USB/examples/CompositeDevice--000000--------
libraries/USB/examples/ConsumerControl--000000--------
libraries/USB/examples/CustomHIDDevice--000000--------
libraries/USB/examples/FirmwareMSC--000000--------
libraries/USB/examples/Gamepad--000000--------
libraries/USB/examples/HIDVendor--000000--------
libraries/USB/examples/Keyboard/KeyboardLogout--000000--------
libraries/USB/examples/Keyboard/KeyboardMessage--000000--------
libraries/USB/examples/Keyboard/KeyboardReprogram--000000--------
libraries/USB/examples/Keyboard/KeyboardSerial--000000--------
libraries/USB/examples/KeyboardAndMouseControl--000000--------
libraries/USB/examples/MIDI/MidiController--000000--------
libraries/USB/examples/MIDI/MidiInterface--000000--------
libraries/USB/examples/MIDI/MidiMusicBox--000000--------
libraries/USB/examples/MIDI/ReceiveMidi--000000--------
libraries/USB/examples/Mouse/ButtonMouseControl--000000--------
libraries/USB/examples/SystemControl--000000--------
libraries/USB/examples/USBMSC--000000--------
libraries/USB/examples/USBSerial--000000--------
libraries/USB/examples/USBVendor--000000--------
libraries/ESP32/examples/Camera/CameraWebServer----0000------00
ESP32/examples/Camera/CameraWebServer (2)----0000------00
ESP32/examples/Camera/CameraWebServer (3)----00----------
libraries/ESP32/examples/DeepSleep/ExternalWakeUp----0000------00
libraries/BluetoothSerial/examples/DiscoverConnect--------------00
libraries/BluetoothSerial/examples/GetLocalMAC--------------00
libraries/BluetoothSerial/examples/SerialToSerialBT--------------00
libraries/BluetoothSerial/examples/SerialToSerialBTM--------------00
libraries/BluetoothSerial/examples/SerialToSerialBT_Legacy--------------00
libraries/BluetoothSerial/examples/SerialToSerialBT_SSP--------------00
libraries/BluetoothSerial/examples/bt_classic_device_discovery--------------00
libraries/BluetoothSerial/examples/bt_remove_paired_devices--------------00
libraries/ESP32/examples/DeepSleep/SmoothBlink_ULP_Code--------------00
libraries/Ethernet/examples/ETH_LAN8720--------------00
libraries/SimpleBLE/examples/SimpleBleDevice--------------00
@lbernstone
Copy link
Contributor

Does hosted require a specific partition layout, or is this something that should happen at every boot?

@me-no-dev
Copy link
Member Author

Does hosted require a specific partition layout, or is this something that should happen at every boot?

The co-processor already has the proper partition layout flashed to it. Code only updates the app.
Update will happen only once if the versions do not match. It is safe to be called every boot

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Status: Review needed Issue or PR is awaiting review

3 participants