-
Notifications
You must be signed in to change notification settings - Fork 13.3k
OTA port not seen (2.6.3) #6975
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
Comments
Do you call |
Yes, i tried that and it had no effect. |
To get reliable mDNS in my apps, I copied |
doesn't ArduinoOTA or MDNS library do this? |
I have added this,.. in 2.5.2 it works.. Full text of serial monitor for 2.5.2 and 2.6.3 below.. Note: I can successfully ping the IP address directly, but cannot get a ping response using the expected names of WIO33 or esp8266 -------------------SERIAL OUTPUT using debug ..-------------------- options 80 connected with linksys-25, channel 11 -------2.6.3-------------- options 80 connected with linksys-25, channel 11 |
You are using both STA and AP interface. If you need also mDNS on AP side, you need to start another instance. |
Please also do enable MDNS debug option |
Debug now set.. loads of output.. ! (I will try some stuff and post the debug if that helps) |
Debug text attached.. before I try to add the MDNS.begin(name, WiFi.localIP()) Could one problem be that both the AP and OTA have similar names? |
Feeling very ignorant.. Added to my code by its-self it gives cheers and thanks |
Did you include the library? |
if you are using OTA and not specifically mDNS, it's in the OTA library that you'll need to modify to test if that's the issue: https://github.com/esp8266/Arduino/blob/master/libraries/ArduinoOTA/ArduinoOTA.cpp#L138 If it works, something has to be fixed in the API. |
ArduinoOTA.begin() calls MDNS.begin() with provided hostname. try to call ArduinoOTA.begin(false);. then you can setup MDNS in sketch like ArduinoOTA does, but with the IP address of the STA |
Since it was no issue with version 2.5.2, the 2.6.3 is in this context IMHO not an improvement. |
(edited) @rocrail Before discussing of what is an improvement and what is not, we need to know if issue is fixed by specifically starting mDNS on STA interface by one of the two ways described above. Then we will have to think of the best improvement path. |
Many thanks all.
I now see the board as a network port "APname" in the Arduino ports list. !! (jandrassy) Just starting OTA with So to me it looks as though the OTA library now affects any previous MDNS setup? I think rocrail is correct and something in the API has been broken between 2.5.2 and 2.6.3 .. Dagnall |
Many thanks all for the help.. But writing a simple version of ArduinoOTA that demonstrates this (and triggers the bug) is not something I can manage now.. Perhaps someone else with better skills could modify the example to demonstrate the bug? |
Running the example with MDNS debug enabled will display on which interface mDNS is started, This issue is marked for release 2.7.0 (or will be pushed to 3.0.0) so we will eventually come back to it and see how we should update the API, the documentation, or both (comments and PRs are welcome). On top of that, a new version of LEA mDNS will come up anytime, updated by its original author @LaborEtArs (with a similar interface-aware API update - because mDNS cannot work reliably on more than one interface at the same time, and this interface-aware API change is a fix regarding previous versions). |
you didn't read carefully. |
FWIW, in case it's a help, as I found an easy fix/workaround (N.B. My code isn't also in AP mode, just STA): Regarding the status() call; I had been doing the status call so I could light a LED to indicate loss of WiFi, should it occur. |
I also have the same problem. Arduino IDE cannot see OTA port when use esp8266 in WIFI_AP_STA. I try with BasicOTA.no. WIFI_STA mode has no problem. At the end, I goto ESP8266mDNS.h and use legacy mDNS instead of new one. Everything works like charm. Wait for the permanent fixed in next release. |
That is expected. |
i'm using STA_AP mode. AP side is using espnow while STA side is used to connect to the router. With my specific setup, using MDNS.begin("name", WiFi.localIP()) after connected to the router, won't solve the problem. OTA port still disappear. |
@d-a-v users keep getting tripped by this. Let's change it now and announce it as breaking for 2.7.0. |
back to confirm that with lastast git version, problem resolved. |
-Sorry to open a subject that seems to have been solved previously.. But I have read the other issues threads and nothing suggested worked.
I am hoping someone can assist me to track down an issue that started only with an update from 2.5.2 to 2.6.3
In summary:
Some esp8266 Code I am working with worked fine with 2.5.2, but a recent update to 2.6.3 has stopped the OTA working. I cannot see the esp WiFi port in bonjour browser, or through ping or in a restarted Arduino. Rebooting the router has no effect.
If I upload the code using 2.5.2, it works fine, the OTA port appears in Arduino etc..
If I update to 2.6.2 the OTA port (in the esp programmed with 2.5.2) is still visible , (and I can upload using the OTA) but as soon as I do, the port disappears again when Arduino is reloaded.
With 2.6.3 I can use the ArduinoOTA example and it works - I have even added things like SPIFFs and ftp to the example and it still works.
The code I am working with is very complex and uses AP, Webserver, SPIFFs and OTA.
From two days worth of experiments I can say definitely that It is just the (very complex) code I am working with that has the incompatibility between 2.5.2 and 2.6.3 and also that I have not managed to make the ArduinoOTA example break by adding SPIFFs or ftp. (but I have not tried adding a webserver or AP. ) .. SO I am asking for help tracking down the incompatibility.. I have tried setting OTA debug via serial, and got these messages: To me it looks like the OTA should be working, but nothing sees the port..
Perhaps the debug messages may assist? Obviously there is OTA debug stuff interspersed with my own serial print comments..
They look VERY similar to me, but perhaps they may hint at the problem ..
Are there other debug settings that can give me more information?
Many thanks
Dagnall
(with non OTA working 2.6.3 )
SDK:2.2.2-dev(38a443e)/Core:2.6.3=20603000/lwIP:STABLE-2_1_2_RELEASE/glue:1.2-16-ge23a07e/BearSSL:89454af
scandone
Connecting to [linksys-25]
WiFi waiting to connect...
scandone
state: 0 -> 2 (b0)
state: 2 -> 3 (0)
state: 3 -> 5 (10)
add 0
aid 6
cnt
WiFi waiting to connect...
WiFi waiting to connect...
connected with linksys-25, channel 11
dhcp client start...
WiFi waiting to connect...
WiFi waiting to connect...
WiFi waiting to connect...
ip:192.168.0.75,mask:255.255.255.0,gw:192.168.0.1
WiFi connected RSSI=-35
-----Starting OTA------
My ip:192.168.0.75
My OTA name:WIO33
OTA server at: WIO33.local:8266
-----OTA started------
options 80
I2C device found at address 0x20
I2C device found at address 0x3C
I2C found 2 devices (4,5)
BMP280 status: 0x76=not found 0x77=not found
SSD1306 status: 0x3C=OK 0x3D=not found
bcn 0
del if1
pm open,type:2 0
add if1
pm close 7
dhcp server start:(ip:192.168.4.1,mask:255.255.255.0,gw:192.168.4.1)
bcn 100
AP IP address: 192.168.4.1
Connecting to [192.168.0.25]...
server connected
input status retry :33:0 1
With the working 2.5.2 version..
<SDK:2.2.1(cfd48f3)/Core:2.5.2=20502000/lwIP:STABLE-2_1_2_RELEASE/glue:1.1-7-g82abda3/BearSSL:a143020
scandone
Connecting to [linksys-25]
WiFi waiting to connect...
WiFi waiting to connect...
scandone
state: 0 -> 2 (b0)
WiFi waiting to connect...
state: 2 -> 3 (0)
state: 3 -> 5 (10)
add 0
aid 6
cnt
WiFi waiting to connect...
WiFi waiting to connect...
connected with linksys-25, channel 11
dhcp client start...
WiFi waiting to connect...
WiFi waiting to connect...
WiFi waiting to connect...
WiFi waiting to connect...
ip:192.168.0.75,mask:255.255.255.0,gw:192.168.0.1
WiFi connected RSSI=-36
-----Starting OTA------
My ip:192.168.0.75
My OTA name:WIO33
OTA server at: WIO33.local:8266
-----OTA started------
options 80
I2C device found at address 0x20
I2C device found at address 0x3C
I2C found 2 devices (4,5)
BMP280 status: 0x76=not found 0x77=not found
SSD1306 status: 0x3C=OK 0x3D=not found
bcn 0
del if1
pm open,type:2 0
add if1
pm close 7
dhcp server start:(ip:192.168.4.1,mask:255.255.255.0,gw:192.168.4.1)
bcn 100
AP IP address: 192.168.4.1
Connecting to [192.168.0.25]...
server connected
input status retry :33:0 1
The text was updated successfully, but these errors were encountered: