-
-
Notifications
You must be signed in to change notification settings - Fork 7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable OTA Update mechanism for any mDNS enabled platform #4107
Conversation
pull master
pull master
Adds ability to update the firmware of non-SSH boards using TXT parameters from mDNS Three new TXT keys are added (defaults are capital): ssh_upload=YES/no tcp_check=YES/no auth_upload=yes/NO "ssh_upload" controls which Uploader should be used. Defaults to SSHUploader "tcp_check" controls wether TCP reachability test should be performed. Defaults to "yes". Boards that have few TCP ports available, can use "no" to skip the check and update over UDP (ESP8266 for example). "auth_upload" controls wether authentication is required (only for "ssh_upload=no"). One new pattern and two new variables are available. Var "network.port" resolves to the advertised by mDNS device port. Var "network.password" resolves to the entered device password if upload authentication is used, else it's empty string. Pattern "upload.network_pattern" is usable if the platform is using different tool/command to do network updates. If not defined, "upload.pattern" will be used instead.
Would really like to see this merged. Network upload stopped working for the esp8266 core since 88e8019 when |
👌🏻 |
@ArduinoBot build this please |
OS X test went fine on both Yun and ESP8266 |
Tested also on Windows XP 32, Windows 8.1 64 and Windows 10 Pro with success on all 3 OS's and both Arduino Yun and ESP8266 |
@me-no-dev On OSX testing the binaries generated above with ESP8266 (NodeMCU 0.9), I get a prompt asking "Type board password to upload a new sketch", any idea how to get around this? |
@AdySan Have you set a password ArduinoOTA.setPassword()? |
@ArduinoBot - windows version on win10pro works perfectly for me! |
Win 10 Edu x64 with NodeMCU 1.0 works flawlessly. Thanks @me-no-dev |
@ffissore is there something wrong with the code? Or a reason to hold/reject this pull request? |
Lack of thorough testing on our side. Plus, @facchinm tried it for a few hours and it broke his dev env, so there are unhandled corner cases |
Really the bug I experienced was my fault, I've being testing this PR + my code for two weeks now and I haven't found any misbehaviour with original "upload using ssh" flow |
we had a similar case when the current IDE was not closed prior to installing/starting the PR Build, but I doubt any of that could be related as the code itself does not really touch anything that could cause a trouble. |
BTW, I'm 👍 for merging this 😉 |
👍 |
[NTS] |
👍 |
Please merge! |
No problem so far with this PR, had no time to test it directly but surely it doesn't harm the normal flow (ssh powered), so I'm going to merge it at last 😄 |
Enable OTA Update mechanism for any mDNS enabled platform
Hi Martino, This is great! If I were a woman I would give you a kiss Thank you for merging this pull request 😄 👍 Krzysztof |
👍 |
Thanks for merging 😄 |
Hallelujah. |
I just tried with today's build and I've got this: [ERROR]: No response from device Device is listed in the Network ports of Arduino IDE. I'm trying the "OTA-mDNS-SPIFFS.ino" example. Any ideas? P.S. This is on OSX 10.11.2 |
Hi mishoboss - try this one - esp8266/Arduino#1196 (comment) and check what is shown on serial terminal |
kinda sad it did not make it into 1.6.7 :( |
It made it into 1.6.7 at the end 😉 |
Oh my god! Thanks! Did not mean to rant, but was so not looking forward troubleshooting users another release cycle :) |
It was broken after merging #4107
It was broken after merging arduino#4107
@ArduinoBot build this please |
@g0ro, the patch is already included in IDE 1.6.7+, no need to trigger a bot build |
@ArduinoBot build this again, or give new link. I have several reasons to stay on the old version. Please. |
hello @facchinm would you mind writing the exact syntax to customise the boards.txt file ? plese be more specific.... I have tried so far :
these four combinations without any result...I would really appreciate your help.... |
@artynet properties are given through mDNS, not through boards config. |
Adds ability to update the firmware of non-SSH boards using TXT
parameters from mDNS
Three new TXT keys are added (defaults are capital):
SSHUploader
Defaults to "yes". Boards that have few TCP ports available, can use
"no" to skip the check and update over UDP (ESP8266 for example).
"ssh_upload=no").
One new pattern and two new variables are available.
upload authentication is used, else it's empty string.
different tool/command to do network updates. If not defined,
"upload.pattern" will be used instead.
Changes are inspired by the need of the ESP8266 Arduino project to utilize it's wireless for simple updates, it does not interfere with any other previous configuration or official Arduino boards and can be applied to basically any networked MCU.