Skip to content

SDK3.x: Fix OTA includes, bump Async version#2306

Merged
liamcottle merged 2 commits into
meshcore-dev:devfrom
petrkr:otaupdate2
Apr 18, 2026
Merged

SDK3.x: Fix OTA includes, bump Async version#2306
liamcottle merged 2 commits into
meshcore-dev:devfrom
petrkr:otaupdate2

Conversation

@petrkr

@petrkr petrkr commented Apr 14, 2026

Copy link
Copy Markdown
Contributor

Fix build issues with SDK 3.x,

Removed dead code includes in old ElegantOTA

This may replace #2264 update. It will stay on old version, but it works with SDK 3.x aswell

@recrof

recrof commented Apr 18, 2026

Copy link
Copy Markdown
Member

@ripplebiz this seems as good addition - esp32c6 boards were cut-off from OTAs because of incompatibility with Arduino 3.x

@liamcottle

Copy link
Copy Markdown
Member

Tests we have done:

  • @liamcottle tested building Heltec_v2_repeater to ensure it didn't cause any issues with ram overflow.
  • @oltaco tested an OTA update with Heltec_v3_repeater to ensure the library change works as expected.

Will merge, thanks! :)

@liamcottle liamcottle merged commit 54a48da into meshcore-dev:dev Apr 18, 2026
@petrkr petrkr deleted the otaupdate2 branch April 18, 2026 14:33
@fizzyfuzzle

Copy link
Copy Markdown

@liamcottle was it also tested on this new firmware to update over OTA to another new firmware?

Currently I am running the Dev branch from May 11th and trying to do an OTA to the current Dev branch which does not seem to work.

Device: Heltec V4.3

  • 'start ota' works
  • uploading firmware.bin through the access point webpage also works
  • device reboots
  • still previous firmware version

So basically everything works, except that it stays on the previous firmware version.

@petrkr

petrkr commented May 20, 2026

Copy link
Copy Markdown
Contributor Author

@liamcottle was it also tested on this new firmware to update over OTA to another new firmware?

Currently I am running the Dev branch from May 11th and trying to do an OTA to the current Dev branch which does not seem to work.

Device: Heltec V4.3

  • 'start ota' works
  • uploading firmware.bin through the access point webpage also works
  • device reboots
  • still previous firmware version

So basically everything works, except that it stays on the previous firmware version.

This is something what I saw on different project.

Maybe there is meanwhile something what is initialized before setup() so it will 'eats' bootup routine, which calls 'ota succesfully'.

richonguzman/LoRa_APRS_iGate#405

@recrof

recrof commented May 20, 2026

Copy link
Copy Markdown
Member

So basically everything works, except that it stays on the previous firmware version.

are you sure you're not uploading the merged version of firmware? that's the most common problem when it refuses to update

@fizzyfuzzle

fizzyfuzzle commented May 20, 2026

Copy link
Copy Markdown

@recrof 100% sure ;)

I did some troubleshooting tests and it seems that code before this PR does still work, so if I upload the official v1.15.0 firmware it will update again.
But when I then want to upload the latest Dev code it will NOT update again.

So I guess @petrkr might be onto something with this 'setup()' not being called in latest code?

It seems uploading the firmware works, but actually updating fails after this PR. But running the latest Dev still allows to update to code BEFORE this PR it seems.

  • Running code BEFORE this PR -> Upgrade -> Code AFTER this PR = ❌
  • Running code AFTER this PR -> Upgrade -> Code BEFORE this PR = ✔️

@petrkr

petrkr commented May 20, 2026

Copy link
Copy Markdown
Contributor Author

@recrof 100% sure ;)

I did some troubleshooting tests and it seems that code before this PR does still work, so if I upload the official v1.15.0 firmware it will update again. But when I then want to upload the latest Dev code it will NOT update again.

So I guess @petrkr might be onto something with this 'setup()' not being called in latest code?

I seems uploading the firmware works, but actually updating fails after this PR. But running the latest Dev still allows to update to code BEFORE this PR it seems.

  • Running code BEFORE this PR -> Upgrade -> Code AFTER this PR = 🔴
  • Running code AFTER this PR -> Upgrade -> Code BEFORE this PR = ✔️

Then try return

#include "esp_int_wdt.h"
#include "esp_task_wdt.h"

lines. But those are not compatible with SDK3.x+ So it must be solved somehow differently in iGate, because there they are using official latest Elegant OTA, so they may solved it by different way.

Then we must also test if it affects only SDK 2.x, if so, then FIX will be put this ti #ifdef version block

@fizzyfuzzle

Copy link
Copy Markdown

Hmm it seems like it was because of my patched Dev branch for some reason.

Firmware v1.15.0 already got this PR merged, so I dont think this PR has anything to do with the problem after all 😅

So for now you can just ignore my comments 🤓

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants