WiFi disconnect errors
-
Loaded the no sleep version of 1.20 beta 8
Now I cannot get the wifi module to connect.
Using panel due:
M552 alone says "Wifi Module Starting" then nothing ever happens
M552 S0 no response on screen
M552 S-1 "Wifi Module Stopped"
M552 S1 "Turn Off the Current Wifi mode before selecting a new one"….... -
Loaded the no sleep version of 1.20 beta 8
Now I cannot get the wifi module to connect.
Using panel due:
M552 alone says "Wifi Module Starting" then nothing ever happens
M552 S0 no response on screen
M552 S-1 "Wifi Module Stopped"
M552 S1 "Turn Off the Current Wifi mode before selecting a new one"…....I had that problem on two of my test boards. It appears that the new DuetWiFiServer didn't install properly the first time. I checked the SD card and the DuetWiFiServer.bin file was correct. So I just ran M997 S1 from PanelDue to re-install it, and it worked after that.
-
Interesting. I had already done that, since had posted about it in your other post with the links.
Repeating it a second time it seems to work.
Thanks for the reminder to try again. -
Ok Got the new 1.20 Beta 8 no sleep wifi server firmware up and loaded…
12 min into a print it disconnected Ajax error.
Unable to reconnect in DCW with connect button4:34:04 PMDisconnected.
4:24:30 PMM200 D1.77
4:22:04 PMM32 Standing_Target_Spinner.gcode
PING 192.168.2.34 (192.168.2.34): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
ping: sendto: No route to host
Request timeout for icmp_seq 2
ping: sendto: Host is down
Request timeout for icmp_seq 3
ping: sendto: Host is down
Request timeout for icmp_seq 4My board is mounted in top triangle of Delta, so only the motors near, no power supply. I have my board removed and standing up on end such that the wifi module is about 200mm above the top triangle in the center, as far away from motors as I can get without re wiring.
Edit 1:
Instead of recycling the wifi module i let it sit. I didn't check non stop, but 20 min after the disconnect I could reconnect via Connect button.M122 after reconnect:
=== Move ===
MaxReps: 12, StepErrors: 1335, FreeDm: 214, MinFreeDm 120, MaxWait: 3587444210ms, Underruns: 0, 4
Scheduled moves: 9172, completed moves: 9164
Bed compensation in use: mesh
Bed probe heights: 0.023 -0.070 -0.063 0.030 0.009
=== Heat ===
Bed heater = 0, chamber heater = -1
Heater 0 is on, I-accum = 0.1
Heater 1 is on, I-accum = 0.5
=== GCodes ===
Segments left: 1
Stack records: 2 allocated, 0 in use
Movement lock held by file
http is idle in state(s) 0
telnet is idle in state(s) 0
file is doing "G1 X39.067 Y-34.939 E5.04276" in state(s) 0
serial is idle 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 is running
WiFi module is connected to access point
Failed messages: pending 0, notready 0, noresp 0
WiFi firmware version 1.20b8-nosleep
WiFi MAC address a0:20:a6:10:55:89
WiFi Vcc 3.45, reset reason Turned on by main processor
WiFi flash size 4194304, free heap 28256
WiFi IP address 192.168.2.34
WiFi signal strength -46dBm, reconnections 0, sleep mode none
HTTP sessions: 1 of 8
Socket states: 2 0 0 0 0 0 0 0
Responder states: HTTP(1) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0)Edit 2:
20 min after reconnecting via DWC, another disconnectedit 3:
Another disconnect, this time reset with recycling wifi module on off. But it disconnected 22 min later.
6:33:24 PMDisconnected.
6:01:03 PMWiFi module stopped
6:01:03 PMConnection established! -
Thanks for the info. I'll continue work on making more debugging info available.
Btw I notice that you have a lot of step errors in your M122 report. I'd like to find the cause of those. What were you printing, what microstepping do you have configured, and are you using pressure advance?
-
printing these for the kid…https://www.thingiverse.com/thing:2408692
Ive recently switched to a E3D volcano, using a 0.8mm nozzle. And have yet to dial it in correctly, perhaps that has some bearing on it ?
M350 E16 I0 ; Configure microstepping without interpolation
M350 X16 Y16 Z16 I1 ; Configure microstepping with interpolation
M92 X200 Y200 Z200 E2490 ; Set steps per mm
M566 X1000 Y1000 Z1000 E60 ; Set maximum instantaneous speed changes (mm/min)
M203 X16000 Y16000 Z16000 E900 ; Set maximum speeds (mm/min)
M201 X1000 Y1000 Z1000 E120 ; Set accelerations (mm/s^2)
M906 X1000 Y1000 Z1000 E600 I30 ; Set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeoutThe system is a 24V power, with 0.9 steppers for the delta X Y Z and 1.8 for the extruder, with a Zesty Nimble, on a smart effecter. The motors are the models you list in your Large Kossel BOM. Other items from Config below, yes i had pressure advance on.
; Firmware Retraction, called via G10/G11
M207 S1.45 F1800 T1500 Z0.2 ; Retract 1.45mm at 30mm/s (1800mm/min), unretract at 25mm/s (1500mm/min); Volumetric Extrusion
M200 D0 ; turn volumetric off for manual extrusion; Smart effector
M558 P5 R0.4 F1000 H5
G31 P100 X0 Y0 Z-0.275M572 D0 S0.04 ; pressure advance
M911 S19.8 R22.0 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000 // auto-pause at 19,8V, resume at 22then either stop at 12V or auto-resume at 22V
M912 P0 S4 ; set cpu calibration +4 degrees -
Made a big change. Switched my router system to an Netgear Orbi Mesh network.
Downloaded the newest firmware. Couldn't use the Newest wifi server 1.20B8 no sleep, any command I types into web console just said wifi server stopped, and repeated my calibration results….
Firmware Version: 1.20beta7 (2017-11-11)
WiFi Server Version: 1.20b8
Web Interface Version: 1.19.3Edit: any associated disconnections so far have been able to reconnect via connect button.
With the new router system, it seems to stay connected to router, just disconnects from browser, probably due to laptop sleep but router page always shows connected, and always able to ping.The router I replaced was an Asus Rt-AC3100 with merlin firmware, which somehow would drop the client and the only method of reconnection was :
- cycle wifi module on/off
- cycle printer on/off
- wait about 30 min and reconnect via connect button in browser. This was about 50/50 success rate.
-
David, testing DuetWifiServer 1.20b8:
- A M122 diagnostic report produced when WiFi was connected
[c]Connecting…
Printer is now online.
M122
SENDING:M122
=== Diagnostics ===
Used output buffers: 2 of 32 (9 max)
=== Platform ===
RepRapFirmware for Duet WiFi version 1.20beta7 running on Duet WiFi 1.0
Board ID: 08DDM-9FAM2-LW4SD-6JTF0-3S86N-TLWZX
Static ram used: 15472
Dynamic ram used: 99192
Recycled dynamic ram: 4120
Stack ram used: 3992 current, 9196 maximum
Never used ram: 3092
Last reset 00:54:35 ago, cause: reset button or watchdog
Last software reset reason: User, spinning module GCodes, available RAM 7296 bytes (slot 3)
Software reset code 0x0003, HFSR 0x00000000, CFSR 0x00000000, ICSR 0x00400000, BFAR 0xe000ed38, SP 0xffffffff
Error status: 0
[ERROR] Error status: 0Free file entries: 9
SD card 0 detected, interface speed: 20.0MBytes/sec
SD card longest block write time: 14.6ms
MCU temperature: min 29.0, current 33.5, max 34.6
Supply voltage: min 12.2, current 12.7, max 12.9, under voltage events: 0, over voltage events: 0
Driver 0: ok
Driver 1: ok
Driver 2: ok
Driver 3: ok
Driver 4: standstill
Date/time: 2017-11-14 20:25:36
Cache data hit count 4294967295
Slowest main loop (seconds): 2.192716; fastest: 0.000042
=== Move ===
MaxReps: 5, StepErrors: 0, FreeDm: 123, MinFreeDm 120, MaxWait: 4216772852ms, Underruns: 0, 0
Scheduled moves: 32211, completed moves: 32181
Bed compensation in use: none
Bed probe heights: -0.042 0.010 -0.062 -0.060 -0.063
=== Heat ===
Bed heater = 0, chamber heater = -1
Heater 0 is on, I-accum = 0.3
Heater 1 is on, I-accum = 0.5
=== GCodes ===
Segments left: 1
Stack records: 2 allocated, 0 in use
Movement lock held by file
http is idle in state(s) 0
telnet is idle in state(s) 0
file is doing "G1 X9.258 Y-3.758 F1839" 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 is running
WiFi module is connected to access point
Failed messages: pending 0, notready 0, noresp 0
WiFi firmware version 1.20b8
WiFi MAC address 5c:cf:7f:ef:51:6f
WiFi Vcc 3.38, reset reason Turned on by main processor
WiFi flash size 4194304, free heap 29096
WiFi IP address 10.0.1.161
WiFi signal strength -39dBm, reconnections 0, sleep mode modem
HTTP sessions: 1 of 8
Socket states: 0 0 0 0 0 0 0 0
Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0)
[/c]- The make and model of your WiFi router
Tenda AC18 - Does the problem occur mainly (or only) during printing, or does it occur equally frequently when the printer is idle?
Both (from past experience) - When the problem occurs, are you able to reconnect by pressing the Connect button in DWC?
Not this time - If you are unable to connect, are you still able to ping the IP address of the Duet WiFi?
Could not ping the IP address - Anything else that you think may be correlated with disconnections occurring
I had 24 hours of successful connection with DuetWifiServer 1.20b8-nosleep prior to this test. It took me 3 tries to upload the DuetWifiServer 1.20b8 firmware. I renamed the file, then uploaded via DWC. It "worked" but then via pronterface M552 only would report "wifi module starting." It took two consecutive runs of M997 S1 to get it fully working. I then started homing it, G32's and preheating. After about 15 minutes of that, I started a print. It disconnected 27 mins after the print started. This was a total connection time of about 40 mins.
- A M122 diagnostic report produced when WiFi was connected
-
Ok, a new problem….
I revert back to WifiServer 1.20b8-nosleep since it had previously been working great. It took 2 installs to get it to work. Since then I've had 3 discontents in the last 2 hours. These were different though.
The first was seems harmless, it disconnected and i just clicked connect in DWC and everything was up and running again. no problem.
The second two were different. Both times They reported a new AJAX error, that gave no reason. It didn't have the normal timeout. Image attached. Both times, I could not connect to the duet via USB with pronterface. It was like the whole board was locked out or frozen. A power cycle resolved it the first time, but then it disconnected again near immediately. The second time I just let it sit and after about 10mins I was able to simply click connect in DWC again.
UPDATE: APPARENTLY I HAVEN'T SLEPT ENOUGH. I WAS TRYING TO PRINT A .STL FILE. INTERESTINGLY THIS CREATES AN IMMEDIATE DISCONNECT AND LOCKS UP THE BOARD.
David, any way to adjust the firmware to prompt an error message rather than locking up the board for those times when we try to print an STL?
-
David, I'm not sure if that's the same problem or not, but here is what I'm observing:
WiFi connection works most of the time, signal strength looks ok (between -60dBm and -50dBm) but sometimes it just fails throwing AJAX error and doesn't come back until I reset the WiFi module by using M552 S0 followed by M552 S1.
It was always the case, and I thought it just a signal level issue. I tried using two different routers (one noname provided by my provider, the other one is Apple TimeCapsule). Now the strange part I noticed just recently, is that when it fails, it is till showing as connected in the WiFi router web UI. Even more, if I connect using the USB and issue M122, it is showing wifi as connected, with good signal strength and valid IP address. That makes me thinking that at least in some cases what looks like a WiFi connectivity issue is not related to connectivity. I believe it might be the web server firmware crashing or hanging.
It happens pretty often, and I'm happy to provide further diagnostic data - just tell me what exactly do I need to do. -
zlowred, please upgrade to the just-released DuetWiFiFirmware 1.20beta8 and DuetWiFiServer 1.20beta9. Connect a PC via USB and send M111 S1 P14 to enable the new WiFi debugging feature. You will get a few WiFi debug messages during startup and initial connection to your router, but there should be no more after that. If the disconnect occurs again, look at the console on the PC to see whether any more debug messages have been received, and report what you find.
-
That means to keep USB connected all the time, right? (no problems with that, just to confirm)
added: maybe it's better to keep debug log somewhere on the flash card so that nothing is lost in case when PC went to sleep for example. -
I think I've sent my Duet3D WiFi to England, because of symptoms very similar to those described …
I hope not....
-
I think I've sent my Duet3D WiFi to England, because of symptoms very similar to those described …
I hope not....
Yours was different, it wouldn't upload new wifi firmware.
-
i hope….
-
So I was able to reproduce the disconnect. Below is the full log. Note that I temporarily disabled M552 S1 in the config.g so that full log is captured.
I issued M122 after the disconnect in case it contains something useful.RepRapFirmware for Duet WiFi Version 1.20beta8 dated 2017-11-17 Executing config.g...HTTP is enabled on port 80 FTP is disabled TELNET is disabled Done! Network disabled. RepRapFirmware for Duet WiFi is up and running. M111 S1 P14 Debugging enabled for modules: WiFi(14) Debugging disabled for modules: Platform(0) Network(1) Webserver(2) GCodes(3) Move(4) Heat(5) DDA(6) Roland(7) Scanner(8) PrintMonitor(9) Storage(10) PortControl(11) DuetExpansion(12) FilamentSensors(13) ok M552 S1 ok WiFi: WiFi: ets Jan 8 2013,rst cause:2, boot mode:(3,7) WiFi: WiFi: load 0x4010f000, len 1384, room 16 WiFi: tail 8 WiFi: chksum 0x2d WiFi: csum 0x2d WiFi: v00007fff WiFi: ~ld WiFi module started WiFi: mode : sta(ec:fa:bc:02:1e:41) WiFi: add if0 WiFi: scandone WiFi: sleep enable,type: 2 WiFi: scandone WiFi: state: 0 -> 2 (b0) WiFi: state: 2 -> 3 (0) WiFi: state: 3 -> 5 (10) WiFi: add 0 WiFi: aid 3 WiFi: cnt WiFi: WiFi: connected with Lrrr, channel 1 WiFi: dhcp client start... Wifi module is connected to access point Lrrr, IP address 192.168.1.102 WiFi: ip:192.168.1.102,mask:255.255.255.0,gw:192.168.1.1 WiFi: pm open,type:2 0 WiFi: p->ref == 1 WiFi: p->ref == 1 WiFi: p->ref == 1 WiFi: p->ref == 1 WiFi: p->ref == 1 WiFi: p->ref == 1 WiFi: p->ref == 1 WiFi: p->ref == 1 WiFi: p->ref == 1 WiFi: p->ref == 1 M122 === Diagnostics === Used output buffers: 1 of 32 (8 max) === Platform === RepRapFirmware for Duet WiFi version 1.20beta8 running on Duet WiFi 1.0 Board ID: 08DDM-9FAM2-LW4S8-6JTDD-3SJ6P-9MXBY Static ram used: 15488 Dynamic ram used: 99624 Recycled dynamic WiFi: ram: 3672 Stack ram used: 4328 current, 5324 maximum NeveWiFi: LINK r used ram: 6964 Last reset 00:02:07 ago, cause: power up Last software reset reason: User, spinning module GCodes, available RAM 6960 bytes (slot 4) Software reset code 0x0003, HFSR 0x00000000, CFSRWiFi: xmit: 0 0x00000000, ICSR 0x00400000, BFAR 0xe000ed38, SP 0xffffffff Error status: 0 Free file entries:WiFi: recv: 0 10 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest block write time: 0.0ms MCU temperature: min 31.5, current 34.8, max 35.0 Supply voltage:WiFi: fw: 0 min 0.3, current 0.5, max 0.5, under voltage events: 0, over voltage events: 0 Driver 0: ok Driver 1: ok Driver 2: ok Driver 3: okWiFi: drop: 0 Driver 4: ok Date/time: 2017-11-18 11:55:08 Cache data hit count 436514026 Slowest main loop (seconds): 0.099160; fastest: 0WiFi: chkerr: 0 .000034 === Move === MaxReps: 0, StepErrors: 0, FreeDm: 240, MinFreeDm 240, MaxWait: 0ms, Underruns: 0, 0 Scheduled moves: 0, completed moves: 0 Bed compensation iWiFi: lenerr: 0 n use: none Bed probe heights: 0.000 0.000 0.000 0.000 0.000 === Heat === Bed heater = 0, chaWiFi: memerr: 0 mber heater = -1 Heater 1 is on, I-accum = 0.0 === GCodes === Segments left: 0 Stack records: 2 allocated, 0 in use Movement lock held by null http is idle in state(s) 0 telnet is idle in stateWiFi: rterr: 0 (s) 0 file is idle in state(s) 0 serial is ready with "M122" inWiFi: proterr: 0 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 is running WiFi module is connected to access point Failed mWiFi: opterr: 0 essages: pending 0, notready 0, nWiFi: err: 0 oresp 0 WiFi firmware version 1.20b9 WiFi MAC address ec:fa:bc:02:1e:41 WiFi Vcc 3.35, reset reason Turned on by main processor WiFi flash size 4194304, free heap 25224 WiFi IP address 192.168.1.102 WiFi signal strength -58dBm, reconnections 0, sleep mode WiFi: cachehit: 0 modem HTTP sessions: 1 of 8 Socket states: 0 0 0 0 0 0 0 0 Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) ok WiFi: WiFi: ETHARP WiFi: xmit: 4 WiFi: recv: 2 WiFi: fw: 0 WiFi: drop: 39 WiFi: chkerr: 0 WiFi: lenerr: 0 WiFi: memerr: 0 WiFi: rterr: 0 WiFi: proterr: 39 WiFi: opterr: 0 WiFi: err: 0 WiFi: cachehit: 1605 WiFi: WiFi: IP WiFi: xmit: 1614 WiFi: recv: 1892 WiFi: fw: 0 WiFi: drop: 1 WiFi: chkerr: 1 WiFi: lenerr: 0 WiFi: memerr: 0 WiFi: rterr: 0 WiFi: proterr: 0 WiFi: opterr: 0 WiFi: err: 0 WiFi: cachehit: 0 WiFi: WiFi: IGMP WiFi: xmit: 4 WiFi: recv: 1 WiFi: drop: 0 WiFi: chkerr: 0 WiFi: lenerr: 0 WiFi: memerr: 0 WiFi: proterr: 0 WiFi: rx_v1: 0 WiFi: rx_group: 0 WiFi: rx_general: 1 WiFi: rx_rmit: 1174 WiFi: recv: 1831 WiFi: fw: 0 WiFi: drop: 0 WiFi: chkerr: 0 WiFi: lenerr: 0 WiFi: memerr: 0 WiFi: rterr: 0 WiFi: proterr: 0 WiFi: opterr: 0 WiFi: err: 0 WiFi: cachehit: 0
The "WiFi: p->ref == 1" messages appeared around every few seconds or so, and the "AJAX error" appeared after the last "WiFi: p->ref == 1" message. I waited for another 10 minutes, but didn't see these messages after the "AJAX error"
-
Thanks. Did the p->ref==1 messages start appearing as soon as you connected, or not until shortly before the disconnection message?
-
First message is seconds after I connected. Others are at irregular intervals between few seconds and somewhere around a minute between each other.
In the meanwhile, I've replaced the wifi module with ESP-07S with external antenna, and it didn't change anything, e.g. behaviour is exactly the same. -
I've never seen those p->ref==1 messages on my test systems. I suspect they are related to the disconnections. Please do a few more tests, to establish how many p->ref messages you get, before they start appearing every few seconds and the disconnection occurs.
Edit: those p->ref == 1 messages indicate an assertion failure within the TCP/IP stack, so they are definitely indicative of something going wrong.
-
Sure, I'll collect more data and post it here
In the meanwhile – I can build the firmware myself, so if you need me to build it with maybe some additional debug flags, or quickly test some changes without releasing the new beta version – feel free to ask.