Duet Wifi Webserver not responding
-
OK, just lost the web interface again…
M552 issued from the PanelDue reports 'Network is enabled, configured IP address: 192.168.0.236, actual IP address: 192.168.0.236'
No response to ping.
No response to M552 S-1
No response to M552 S1
M552 no change in the response. Still no connection to web interface or ping response.Hooked up a USB connection, fired up minicom... M122 returns the following
=== Diagnostics === Used output buffers: 2 of 32 (12 max) === Platform === RepRapFirmware for Duet Ethernet version 1.20 running on Duet Ethernet 1.0 Board ID: 08DGM-95BNL-MGPSJ-6J1FA-3S06M-91YVW Static ram used: 11992 Dynamic ram used: 98688 Recycled dynamic ram: 4008 Stack ram used: 3576 current, 8400 maximum Never used ram: 7984 Last reset 00:22:46 ago, cause: power up Last software reset at 2018-03-03 12:55, reason: User, spinning module GCodes, available RAM 11880 bytes (slot 0) Software reset code 0x0003 HFSR 0x00000000, CFSR 0x00000000, ICSR 0x0441f000, BFAR 0xe000ed38, SP 0xffffffff Error status: 0 Free file entries: 10 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest block write time: 0.0ms MCU temperature: min 45.6, current 45.9, max 46.0 Supply voltage: min 21.9, current 22.0, max 22.1, under voltage events: 0, over voltage events: 0 Driver 0: standstill, SG min/max not available Driver 1: standstill, SG min/max not available Driver 2: standstill, SG min/max not available Driver 3: standstill, SG min/max not available Driver 4: standstill, SG min/max not available Date/time: 2018-03-03 21:54:20 Cache data hit count 2450058580 Slowest main loop (seconds): 0.003427; fastest: 0.000050 === Move === MaxReps: 0, StepErrors: 0, FreeDm: 240, MinFreeDm 240, MaxWait: 0ms, Underruns: 0, 0 Scheduled moves: 0, completed moves: 0 Bed compensation in use: none Bed probe heights: 0.000 0.000 0.000 0.000 0.000 === Heat === Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1 Heater 0 is on, I-accum = 0.3 === GCodes === Segments left: 0 Stack records: 1 allocated, 0 in use Movement lock held by null http is idle in state(s) 0 telnet is idle in state(s) 0 file is idle in state(s) 0 serial is ready with "M122" in state(s) 0 aux is idle in state(s) 0 daemon is idle in state(s) 0 queue is idle in state(s) 0 autopause is idle in state(s) 0 Code queue is empty. === Network === State: 5 HTTP sessions: 1 of 8 Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) ok ```Sent M552
Network is enabled, configured IP address: 192.168.0.236, actual IP address: 192.168.0.236
okok
ok
Network is enabled, configured IP address: 192.168.0.236, actual IP address: 192.168.0.236
ok(Supply voltage looks odd at 22.0V, but it is deliberate and does not indicate a problem)
-
Maybe you can use M583 (Wait for pin) to wait for the release of the external switch before continuing to the M552 S1. I just ran into this issue as well on my first print with the Duet. It was fine for about the first hour and I was able to tweak the extrusion,etc but I was unable connect for the the last couple hours of the print (the print did complete successfully, though). LED on the Wifi module was still steady illuminated but my router indicated that the connection was not present. Pressing reset after the job completed reestablished the the link.
-
Sorry. That was out of context - I just now noticed there was a second page of discussion.
-
There're multiple different issues being reported on this thread. The one I'm experiencing is where the web gui goes offline but I can still ping the device.
Do you still need more logs for that one?
I'm seeing this on FW 1.21RC3 (2018-02-28 build 4), WiFi server 1.21RC3 (28b1), web interface 1.21-RC4.
I have a few logs I pulled, which I can supply if you need more info. Of note, though, I'm seeing this on the serial console:
[[language]] HTTP req, command words { GET /rr_status HTTP/1.1 }, parameters { type=3 } New conn on socket 7 for local port 80 HTTP connection accepted Found responder Received 459 bytes Sending reply, file = no HTTP req, command words { GET /rr_status HTTP/1.1 }, parameters { type=3 } WiFi: ../src/Listener.cpp(62): refused conn on port 80 no free conn WiFi: ../src/Listener.cpp(62): refused conn on port 80 no free conn WiFi: ../src/Listener.cpp(62): refused conn on port 80 no free conn
An M586 P0 cycle (S0/S1) did not resolve it:
[[language]] HTTP is disabled WiFi: recv../src/Listener.cpp(118): stopped listening on port 80 HTTP is enabled on port 80 WiFi: ../src/Listener.cpp(174): listening on port 80 WiFi: ../src/Listener.cpp(62): refused conn on port 80 no free conn
I also have a full network trace. When I refresh the browser, the gist of it is:
[[language]] --> TCP SYN <-- TCP SYN ACK --> TCP ACK --> HTTP GET <-- TCP ACK RST <-- TCP ACK RST
-
@daveidmx, thanks for that, the "no free conn" is the source of the problem. Which main and wifi firmware versions are you running? Please try 1.21RC3 + DuetWiFiServer 1.21RC4 if you are not already running those, because they include some relevant fixes.
-
Thanks! I'm running these:
@daveidmx:I'm seeing this on FW 1.21RC3 (2018-02-28 build 4), WiFi server 1.21RC3 (28b1), web interface 1.21-RC4.
Is that what you were suggesting to use? Or is there an RC4 of DuetWiFiServer I should test also? I'm looking here:
https://github.com/dc42/RepRapFirmware/tree/dev/EdgeRelease/1.21RC3 -
Please try RC4 of DuetWiFiServer, by following this link https://github.com/dc42/DuetWiFiSocketServer/blob/dev/Release/DuetWiFiServer-1.21RC4.bin and then pressing Download.
-
Got it! I will report back tomorrow.
-
I didn't get as much testing in today as I'd hoped, but I haven't seen any connection resets so far. Yesterday it was as often as 10 minutes, or as rare as 6 hours. I've had about 2 hours of prints so far today, so… looking good so far?
-
Does the DuetEthernet still use this, or is there something else equivalent that we DuetEthernet folk should be trying out?
-
Duet Ethernet doesn't use the DuetWiFiServer.bin file. If you are getting disconnections on the Duet Ethernet and they only happen when you are homing the printer or when printing a file, run M122 after you reconnect and check the MaxReps figure in the report. Note: MaxReps gets reset back to zero after you run M122.
-
I think my disconnects have all been during print processes, but I'm not super confident in that statement. I will look into the maxreps thing. While I'm waiting for another disconnect event, can you explain what the maxreps means? And is any non-zero value bad, or…?
-
MaxReps figures above about 50 are bad. The value gives an indication of the interrupt load of the step pulse generator. If it gets too high then the http responder gets starved of CPU time.
-
Got it, thanks.
I just had an ethernet drop out, and when I did an M122 afterwards, I got a maxreps of 4. So I'm guessing that's not my problem…
-
Sad news on my front. I'm still seeing the web console stop responding on 1.21RC4. Looks like the same issue still. The packet trace shows the same pattern as before (HTTP GET followed immediately by a connection reset) and the console indicates the same message ("refused conn on port 80 no free conn").
I tried to do an [c]M586 P0 S0[/c]/[c]S1[/c] cycle and it looks like it might have crashed the WiFi module. My print froze and I got this on the console:
M586 P0 S0 HTTP is disabled ok WiFi: ESP reported status change WiFi: Soft WDT reset ESP reported status change WiFi: WiFi: ctx: cont WiFi: sp: 3fff2fc0 end: 3fff32c0 offset: 01b0 WiFi: WiFi: >>>stack>>> WiFi: 3fff3170: 40233576 00000030 0000001c 40225893 WiFi: 3fff3180: 40225d11 3fff6cac 3fff5b3c 40225a2b WiFi: 3fff3190: 00000003 3fff31d0 00000000 40105f8d WiFi: 3fff31a0: 00000050 000000ff 00000000 00000000 WiFi: 3fff31b0: 3fff2125 3fff2190 3fff2194 00000000 WiFi: 3fff31c0: 00000000 3fff211c 3fff1900 40106542 WiFi: 3fff31d0: 00000000 005000ff 20000000 00000000 WiFi: 3fff31e0: 00000000 3fffc6fc 00000001 3fff22a0 WiFi: 3fff31f0: 00000000 3fffdad
-
You could use M552 S0/S1 instead of M586, worked for me every time without problems during printing. (probably used 30+ times)
I'm still on 1.21.RC1 and had no wifi problems in the last 2 weeks.
I just installed my PanelDue and added two macros for disabling/enabling wifi, so i can restart it without connecting the usb. -
I'm sorry to hear you are still having problems. Have you confirmed that you are running version 1.21RC4 of both the main firmware and the wifi firmware? Look on the Settings->General page of DWC to check.
You could try downloading and installing DuetWiFiServer 1.21RC4 again, in case the file got corrupted somewhere.
-
Here's what DWC says I'm running right now:
Firmware Version: 1.21RC4 (2018-03-11 build 1) WiFi Server Version: 1.21RC4(08b3) Web Interface Version: 1.21-RC4
I will re-download and re-flash and report back.
-
Confirmed it still stops responding.
New conn on socket 7 for local port 80 HTTP connection accepted Found responder Received 459 bytes Sending reply, file = no HTTP req, command words { GET /rr_status HTTP/1.1 }, parameters { type=3 } WiFi: ../src/Listener.cpp(62): refused conn on port 80 no free conn WiFi: ../src/Listener.cpp(62): refused conn on port 80 no free conn WiFi: ../src/Listener.cpp(62): refused conn on port 80 no free conn WiFi: ../src/Listener.cpp(62): refused conn on port 80 no free conn WiFi: ../src/Listener.cpp(62): refused conn on port 80 no free conn WiFi: ../src/Listener.cpp(62): refused conn on port 80 no free conn WiFi: ../src/Listener.cpp(62): refused conn on port 80 no free conn WiFi: ../src/Listener.cpp(62): refused conn on port 80 no free conn
-
Thanks, that gives me an idea of where to look. Do you use either FTP or Telnet, or just the web interface?
I'll add more debugging in RC5 so that M122 dumps the state of all the connections.