Enable hostedMCU file load for early versions

This commit is contained in:
Theo Arends 2025-10-24 16:06:47 +02:00
parent 1460f685ff
commit 9fae98982e

View File

@ -110,7 +110,6 @@ void HostedMCUStatus(void) {
void HostedMCUEverySecond(void) { void HostedMCUEverySecond(void) {
if (!CommandsReady()) { return; } if (!CommandsReady()) { return; }
#ifdef ESP_HOSTED_NEW_OTA
if (Hosted.ota_file_state_flag) { if (Hosted.ota_file_state_flag) {
Hosted.ota_file_state_flag--; Hosted.ota_file_state_flag--;
if (Hosted.ota_file_state_flag <= 0) { if (Hosted.ota_file_state_flag <= 0) {
@ -179,8 +178,7 @@ void HostedMCUEverySecond(void) {
MqttPublishPrefixTopicRulesProcess_P(STAT, PSTR(D_CMND_HOSTEDLOAD)); MqttPublishPrefixTopicRulesProcess_P(STAT, PSTR(D_CMND_HOSTEDLOAD));
} }
} }
#endif // ESP_HOSTED_NEW_OTA else if (Hosted.ota_http_state_flag) {
if (Hosted.ota_http_state_flag) {
Hosted.ota_http_state_flag--; Hosted.ota_http_state_flag--;
/* /*
if (2 == Hosted.ota_http_state_flag) { if (2 == Hosted.ota_http_state_flag) {
@ -242,6 +240,7 @@ void HostedMCUEverySecond(void) {
if ((ret = esp_hosted_slave_ota_end()) != ESP_OK) { if ((ret = esp_hosted_slave_ota_end()) != ESP_OK) {
AddLog(LOG_LEVEL_DEBUG_MORE, PSTR("HST: ota_end failed %d"), ret); AddLog(LOG_LEVEL_DEBUG_MORE, PSTR("HST: ota_end failed %d"), ret);
} else { } else {
if (GetHostedMCUFwVersion() >= 0x00020600) {
// Activate will likely reboot the slave // Activate will likely reboot the slave
ret = esp_hosted_slave_ota_activate(); ret = esp_hosted_slave_ota_activate();
} }
@ -250,6 +249,7 @@ void HostedMCUEverySecond(void) {
} }
} }
} }
}
#else // OLD_OTA #else // OLD_OTA
AddLog(LOG_LEVEL_DEBUG_MORE, PSTR("HST: Using legacy OTA API")); AddLog(LOG_LEVEL_DEBUG_MORE, PSTR("HST: Using legacy OTA API"));
ret = esp_hosted_slave_ota(Hosted.ota_url); ret = esp_hosted_slave_ota(Hosted.ota_url);
@ -277,18 +277,10 @@ void HostedMCUEverySecond(void) {
\*********************************************************************************************/ \*********************************************************************************************/
const char kHostedCommands[] PROGMEM = "Hosted|" // Prefix const char kHostedCommands[] PROGMEM = "Hosted|" // Prefix
"|" "|Load|Ota";
#ifdef ESP_HOSTED_NEW_OTA
"Load|"
#endif // ESP_HOSTED_NEW_OTA
"Ota";
void (* const HostedCommand[])(void) PROGMEM = { void (* const HostedCommand[])(void) PROGMEM = {
&CmndHosted, &CmndHosted, &CmndHostedLoad, &CmndHostedOta };
#ifdef ESP_HOSTED_NEW_OTA
&CmndHostedLoad,
#endif // ESP_HOSTED_NEW_OTA
&CmndHostedOta };
void CmndHosted(void) { void CmndHosted(void) {
Response_P(PSTR("{\"Hosted\":{\"Host\":\"%s\",\"Hosted\":\"%s\",\"MCU\":\"%s\"}}"), Response_P(PSTR("{\"Hosted\":{\"Host\":\"%s\",\"Hosted\":\"%s\",\"MCU\":\"%s\"}}"),
@ -296,7 +288,6 @@ void CmndHosted(void) {
); );
} }
#ifdef ESP_HOSTED_NEW_OTA
void CmndHostedLoad(void) { void CmndHostedLoad(void) {
/* /*
Expect files in folder /coprocessor/v2.0.17/network_adapter_esp32c6.bin Expect files in folder /coprocessor/v2.0.17/network_adapter_esp32c6.bin
@ -305,8 +296,6 @@ void CmndHostedLoad(void) {
Or allow user to enter required version like: Or allow user to enter required version like:
HostedLoad v2.0.17 HostedLoad v2.0.17
*/ */
if (GetHostedMCUFwVersion() < 0x00020600) { return; }
Hosted.ota_url = (char*)calloc(200, sizeof(char)); Hosted.ota_url = (char*)calloc(200, sizeof(char));
if (!Hosted.ota_url) { return; } // Unable to allocate memory if (!Hosted.ota_url) { return; } // Unable to allocate memory
if (XdrvMailbox.data_len > 15) { if (XdrvMailbox.data_len > 15) {
@ -323,7 +312,6 @@ void CmndHostedLoad(void) {
Response_P(PSTR("{\"%s\":\"" D_JSON_VERSION " %s " D_JSON_FROM " %s\"}"), Response_P(PSTR("{\"%s\":\"" D_JSON_VERSION " %s " D_JSON_FROM " %s\"}"),
XdrvMailbox.command, GetHostedFwVersion(ESP_HOSTED).c_str(), Hosted.ota_url); XdrvMailbox.command, GetHostedFwVersion(ESP_HOSTED).c_str(), Hosted.ota_url);
} }
#endif // ESP_HOSTED_NEW_OTA
void CmndHostedOta(void) { void CmndHostedOta(void) {
/* /*