Wifi/DWC Disconnecting with RRF3.5.2 on Duet2 Wifi Hardware
-
Ran a debug on wifi (P14)....
>>> M111 P14 S1 SENDING:M111 P14 S1 Debugging enabled for modules: WiFi(14 - 0xffffffff) Debugging disabled for modules: Platform(0) Network(1) Webserver(2) Gcodes(3) Move(4) Heat(5) Kinematics(6) InputShaping(7) unused(8) PrintMonitor(9) Storage(10) PortControl(11) DuetExpansion(12) FilamentSensors(13) Display(15) SbcInterface(16) CAN(17) Expansion(18) ResponseTimeout, pending=1 WiFi: /home/duet3d/WiFiSocketServerRTOS/src/Connection.cpp(572): refused conn on port 80 already 4 conns Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 WiFi: /home/duet3d/WiFiSocketServerRTOS/src/Connection.cpp(572): refused conn on port 80 already 4 conns ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 WiFi: /home/duet3/home/duet3d/WiFiSocketServerRTOS/src/Connection.cpp(572): refused conn on port 80 already 4 conns ESP reported status change ResponseTimeout, pending=1 WiFi: /home/duet3d/WiFiSocketServerRTOS/src/Connection.cpp(572): refused conn on port 80 already 4 conns Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 WiFi: /home/duet3d/WiFiSocketServerRTOS/src/Connection.cpp(572): refused conn on port 80 already 4 conns ESP reported status change ResponseTimeout, pending=1 WiFi: /home/duet3d/WiFiSocketServerRTOS/src/Connection.cpp(572): refused conn on port 80 already 4 conns Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 WiFi: /home/duet3d/WiFiSocketServerRTOS/src/Connection.cpp(572): refused conn on port 80 already 4 conns ESP reported status change ResponseTimeout, pending=1 WiFi: /home/duet3d/WiFiSocketServerRTOS/src/Connection.cpp(572): refused conn on port 80 already 4 conns Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 WiFi: /home/duet3TOS/src/Connection.cpp(572): refused conn on port 80 already 4 conns ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 ESP reported status change ResponseTimeout, pending=1 Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 WiFi: /home/duet3d/WiFiSocketServerRTOS/src/Connection.cpp(572): refused conn on port 80 already 4 conns ESP reported status change ResponseTimeout, pending=1 WiFi: /home/duet3d/WiFiSocketServerRTOS/src/Connection.cpp(572): refused conn on port 80 already 4 conns Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 WiFi: /home/duet3d/WiFiSocketServerRTOS/src/Connection.cpp(572): refused conn on port 80 already 4 conns ESP reported status change ResponseTimeout, pending=1 WiFi: /home/duet3d/WiFiSocketServerRTOS/src/Connection.cpp(572): refused conn on port 80 already 4 conns Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout ResponseTimeout, pending=1 WiFi: /home/duet3d/WiFiSocketServerRTOS/src/Connection.cpp(572): refused conn on port 80 already 4 conns ESP reported status change ResponseTimeout, pending=1 WiFi: /home/duet3p(572): refused conn on port 80 already 4 conns Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout >>> M111 P14 S0
and then network (P1)....
>>> M111 P1 S1 SENDING:M111 P1 S1 Debugging enabled for modules: Network(1 - 0xffffffff) Debugging disabled for modules: Platform(0) Webserver(2) Gcodes(3) Move(4) Heat(5) Kinematics(6) InputShaping(7) unused(8) PrintMonitor(9) Storage(10) PortControl(11) DuetExpansion(12) FilamentSensors(13) WiFi(14) Display(15) SbcInterface(16) CAN(17) Expansion(18) Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size Error: failed to retrieve WiFi status message: SPI timeout Error: failed to retrieve WiFi status message: SPI timeout Bad recv status size >>> M111 P1 S0
Issuing another M122....
- Now MAIN is running 99%
- "noresp" continues to increase
- Socket states are the same>>> m122 SENDING:M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.5.2 (2024-06-11 17:13:43) running on Duet WiFi 1.02 or later Board ID: 08DAM-9K9K2-NGNSN-6J9DJ-3S86S-17T3J Used output buffers: 1 of 26 (14 max) === RTOS === Static ram: 23384 Dynamic ram: 73040 of which 208 recycled Never used RAM 16512, free system stack 186 words Tasks: NETWORK(1,nWait 6,0.1%,222) HEAT(3,nWait 5,0.0%,328) Move(4,nWait 5,0.0%,359) MAIN(1,running,99.8%,370) IDLE(0,ready,0.1%,29), total 100.0% Owned mutexes: WiFi(NETWORK) USB(MAIN) === Platform === Last reset 03:14:35 ago, cause: power up Last software reset details not available Error status: 0x00 Error status: 0x00 MCU temperature: min 27.7, current 28.3, max 30.1 Supply voltage: min 1.3, current 1.4, max 1.4, under voltage events: 0, over voltage events: 0, power good: no Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Events: 0 queued, 0 completed Driver 0: ok, SG min n/a Driver 1: ok, SG min n/a Driver 2: ok, SG min n/a Driver 3: ok, SG min n/a Driver 4: ok, SG min n/a Driver 5: Driver 6: Driver 7: Driver 8: Driver 9: Driver 10: Driver 11: Date/time: 2024-07-08 23:39:20 Cache data hit count 4294967295 Slowest loop: 508.89ms; fastest: 0.14ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 10 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest read time 1.2ms, write time 0.0ms, max retries 0 === Move === DMs created 83, segments created 0, maxWait 0ms, bed compensation in use: none, height map offset 0.000, max steps late 0, min interval 0, bad calcs 0, ebfmin 0.00, ebfmax 0.00 no step interrupt scheduled Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0 === DDARing 0 === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 Heater 1 is on, I-accum = 0.0 === GCodes === Movement locks held by null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is ready with "M122" in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Q0 segments left 0 Code queue 0 is empty === Network === Slowest loop: 600.01ms; fastest: 99.61ms Responder states: HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) HTTP sessions: 0 of 8 === WiFi === Interface state: active Module is connected to access point Failed messages: pending 0, notrdy 34996, noresp 75827 Failed to get WiFi status Socket states: 6 6 0 0 0 0 0 0
Turned off the duet and went to sleep
-
"Day 2"
Had a thought after browsing the forums, nothing specific I was reading but thought, "what happens if I turn on the duet but not immediately connect to the DWC?"
So the journey continues
Start ping
Turn on duet
Connect USB
Turn on debugging for P1 (Network) and P14 (Wifi)
Issue M122 for start, all seems good>>> M111 P14 S1 SENDING:M111 P14 S1 Debugging enabled for modules: WiFi(14 - 0xffffffff) Debugging disabled for modules: Platform(0) Network(1) Webserver(2) Gcodes(3) Move(4) Heat(5) Kinematics(6) InputShaping(7) unused(8) PrintMonitor(9) Storage(10) PortControl(11) DuetExpansion(12) FilamentSensors(13) Display(15) SbcInterface(16) CAN(17) Expansion(18) >>> M111 P1 S1 SENDING:M111 P1 S1 Debugging enabled for modules: Network(1 - 0xffffffff) WiFi(14 - 0xffffffff) Debugging disabled for modules: Platform(0) Webserver(2) Gcodes(3) Move(4) Heat(5) Kinematics(6) InputShaping(7) unused(8) PrintMonitor(9) Storage(10) PortControl(11) DuetExpansion(12) FilamentSensors(13) Display(15) SbcInterface(16) CAN(17) Expansion(18) >>> M122 SENDING:M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.5.2 (2024-06-11 17:13:43) running on Duet WiFi 1.02 or later Board ID: 08DAM-9K9K2-NGNSN-6J9DJ-3S86S-17T3J Used output buffers: 1 of 26 (2 max) === RTOS === Static ram: 23384 Dynamic ram: 73040 of which 0 recycled Never used RAM 16720, free system stack 194 words Tasks: NETWORK(1,ready,13.3%,416) HEAT(3,nWait 5,0.0%,330) Move(4,nWait 5,0.0%,359) MAIN(1,running,85.8%,766) IDLE(0,ready,0.8%,29), total 100.0% Owned mutexes: WiFi(NETWORK) USB(MAIN) === Platform === Last reset 00:01:54 ago, cause: power up Last software reset details not available Error status: 0x00 Error status: 0x00 MCU temperature: min 19.2, current 24.6, max 25.0 Supply voltage: min 0.4, current 1.3, max 1.4, under voltage events: 0, over voltage events: 0, power good: no Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Events: 0 queued, 0 completed Driver 0: ok, SG min n/a Driver 1: ok, SG min n/a Driver 2: ok, SG min n/a Driver 3: ok, SG min n/a Driver 4: ok, SG min n/a Driver 5: Driver 6: Driver 7: Driver 8: Driver 9: Driver 10: Driver 11: Date/time: 1970-01-01 00:00:00 Cache data hit count 4294967295 Slowest loop: 8.22ms; fastest: 0.14ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 10 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest read time 1.3ms, write time 0.0ms, max retries 0 === Move === DMs created 83, segments created 0, maxWait 0ms, bed compensation in use: none, height map offset 0.000, max steps late 0, min interval 0, bad calcs 0, ebfmin 0.00, ebfmax 0.00 no step interrupt scheduled Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0 === DDARing 0 === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 Heater 1 is on, I-accum = 0.0 === GCodes === Movement locks held by null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is ready with "M122" in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Q0 segments left 0 Code queue 0 is empty === Network === Slowest loop: 2.81ms; fastest: 0.00ms Responder states: HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) HTTP sessions: 0 of 8 === WiFi === Interface state: active Module is connected to access point Failed messages: pending 0, notrdy 0, noresp 0 Firmware version 2.1.0 MAC address a0:20:a6:19:27:48 Module reset reason: Turned on by main processor, Vcc 3.27, flash size 4194304, free heap 46324 WiFi IP address xxx.xxx.xxx.254 Signal strength -33dBm, channel 6, mode 802.11n, reconnections 0 Clock register 00002002 Socket states: 0 0 0 0 0 0 0 0 WiFi: Conns: 0:free, 1:free, 2:free, 3:free, 4:free, 5:free, 6:free, 7:free
At this point, duet is pinging, usb responding
Issue another M122 to see if anything changed..... nothing noticed>>> M122 SENDING:M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.5.2 (2024-06-11 17:13:43) running on Duet WiFi 1.02 or later Board ID: 08DAM-9K9K2-NGNSN-6J9DJ-3S86S-17T3J Used output buffers: 1 of 26 (12 max) === RTOS === Static ram: 23384 Dynamic ram: 73040 of which 0 recycled Never used RAM 16720, free system stack 186 words Tasks: NETWORK(1,ready,13.9%,416) HEAT(3,nWait 5,0.0%,328) Move(4,nWait 5,0.0%,359) MAIN(1,running,86.0%,766) IDLE(0,ready,0.0%,29), total 100.0% Owned mutexes: USB(MAIN) === Platform === Last reset 00:13:50 ago, cause: power up Last software reset details not available Error status: 0x00 Error status: 0x00 MCU temperature: min 24.4, current 26.9, max 28.1 Supply voltage: min 1.3, current 1.4, max 1.4, under voltage events: 0, over voltage events: 0, power good: no Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Events: 0 queued, 0 completed Driver 0: ok, SG min n/a Driver 1: ok, SG min n/a Driver 2: ok, SG min n/a Driver 3: ok, SG min n/a Driver 4: ok, SG min n/a Driver 5: Driver 6: Driver 7: Driver 8: Driver 9: Driver 10: Driver 11: Date/time: 1970-01-01 00:00:00 Cache data hit count 4294967295 Slowest loop: 8.35ms; fastest: 0.14ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 10 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest read time 1.2ms, write time 0.0ms, max retries 0 === Move === DMs created 83, segments created 0, maxWait 0ms, bed compensation in use: none, height map offset 0.000, max steps late 0, min interval 0, bad calcs 0, ebfmin 0.00, ebfmax 0.00 no step interrupt scheduled Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0 === DDARing 0 === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 Heater 1 is on, I-accum = 0.0 === GCodes === Movement locks held by null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is ready with "M122" in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Q0 segments left 0 Code queue 0 is empty === Network === Slowest loop: 20.70ms; fastest: 0.07ms Responder states: HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) HTTP sessions: 0 of 8 === WiFi === Interface state: active Module is connected to access point Failed messages: pending 0, notrdy 0, noresp 0 Firmware version 2.1.0 MAC address a0:20:a6:19:27:48 Module reset reason: Turned on by main processor, Vcc 3.27, flash size 4194304, free heap 46324 WiFi IP address xxx.xxx.xxx.254 Signal strength -32dBm, channel 6, mode 802.11n, reconnections 0 Clock register 00002002 Socket states: 0 0 0 0 0 0 0 0 WiFi: Conns: 0:free, 1:free, 2:free, 3:free, 4:free, 5:free, 6:free, 7:free
Duet is pinging but noticed (again) that it is erratic in its ping times to an AP that is in the same room. At cyclic times, noticed that there is a string a ping timeouts for 5 pings (essentially 5 seconds) then immediately recovers.
There is consistently in this pattern.64 bytes from xxx.xxx.xxx.254: icmp_seq=12379 ttl=255 time=33.616 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=12380 ttl=255 time=60.506 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=12381 ttl=255 time=82.247 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=12382 ttl=255 time=41.152 ms Request timeout for icmp_seq 12383 Request timeout for icmp_seq 12384 Request timeout for icmp_seq 12385 Request timeout for icmp_seq 12386 Request timeout for icmp_seq 12387 64 bytes from xxx.xxx.xxx.254: icmp_seq=12388 ttl=255 time=180.845 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=12389 ttl=255 time=68.944 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=12
After 4+ hours, I go to the DWC
Network debugs start throwing this outNew conn on socket 0 for local port 80 Found responder Received 352 bytes New conn on socket 0 for local port 80 Found responder New conn on socket 1 for local port 80 Found responder Received 352 bytes
I take it this is normal
About 5 minutes into just browsing the DWCNew conn on socket 0 for local port 80 Found responder Received 352 bytes New conn on socket 0 for local port 80 Found responder New conn on socket 1 for local port 80 Found responder Received 352 bytes ResponseTimeout, pending=1 Send failed, terminating ResponseBusy ResponseBusy Bad recv status size ResponseBusy Bad recv status size ResponseBusy Bad recv status size ResponseBusy Bad recv status size ResponseBusy Bad recv status size ResponseBusy
Some observations: Remember the erratic pings and it timing out every now and then?
So when the ping drop happened, DWC dropped (and never came back like the day before)Issued M122 again
- Network is running 99% but in "ready" state
- "noresp" increasing
- Socket states back at "6 6 0 0 0 0 0 0">>> M122 SENDING:M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.5.2 (2024-06-11 17:13:43) running on Duet WiFi 1.02 or later Board ID: 08DAM-9K9K2-NGNSN-6J9DJ-3S86S-17T3J Used output buffers: 1 of 26 (16 max) === RTOS === Static ram: 23384 Dynamic ram: 73040 of which 0 recycled Never used RAM 16720, free system stack 186 words Tasks: NETWORK(1,ready,98.9%,217) HEAT(3,nWait 5,0.0%,328) Move(4,nWait 5,0.0%,359) MAIN(1,running,1.1%,766) IDLE(0,ready,0.0%,29), total 100.0% Owned mutexes: USB(MAIN) === Platform === Last reset 04:29:12 ago, cause: power up Last software reset details not available Error status: 0x00 Error status: 0x00 MCU temperature: min 27.6, current 27.8, max 28.2 Supply voltage: min 1.3, current 1.3, max 1.4, under voltage events: 0, over voltage events: 0, power good: no Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Events: 0 queued, 0 completed Driver 0: ok, SG min n/a Driver 1: ok, SG min n/a Driver 2: ok, SG min n/a Driver 3: ok, SG min n/a Driver 4: ok, SG min n/a Driver 5: Driver 6: Driver 7: Driver 8: Driver 9: Driver 10: Driver 11: Date/time: 2024-07-10 17:20:47 Cache data hit count 4294967295 Slowest loop: 735.13ms; fastest: 0.14ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 10 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest read time 101.0ms, write time 0.0ms, max retries 0 === Move === DMs created 83, segments created 0, maxWait 0ms, bed compensation in use: none, height map offset 0.000, max steps late 0, min interval 0, bad calcs 0, ebfmin 0.00, ebfmax 0.00 no step interrupt scheduled Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0 === DDARing 0 === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 Heater 1 is on, I-accum = 0.0 === GCodes === Movement locks held by null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is ready with "M122" in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Q0 segments left 0 Code queue 0 is empty === Network === Slowest loop: 3303.34ms; fastest: 100.30ms Responder states: HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) HTTP sessions: 0 of 8 === WiFi === Interface state: active Module is connected to access point Failed messages: pending 0, notrdy 620, noresp 1 Failed to get WiFi status Socket states: 6 6 0 0 0 0 0 0
So I let it sit in this state for hours
Pings never came back either.Other noteworthy things
- Have not tried resetting the wireless with M552 commands yet. Just wanted to gather information to try to be helpful data gathering.
- Wifi blue light has been steady the whole time, never was it ever blinking (tells me it stayed connected to the AP, M122 commands confirm this)Don't know what to do next, so thought I'd post since I'm at the latest (stable) version of all firmware.
This is not a production printer, I'm just a hobbyist, so I can try things out. Will take me a couple days at a time to respond if I need to try something.
-
@trd87t Thanks for the extensive report. Could you please:
- send
M586
and post the response, to see what network protocols are enabled? Disable any you are not using, eg FTP, Telnet - check the list of stored WiFi networks, by sending
M587
, looking particularly if there are any duplicate entries, with different capitalisation. - post your config.g.
- have a look through the WiFi Troubleshooting page, to see if any of it is relevant.
- is the SD card the same vintage as the printer? It may be worth trying a new SD card (we recommend using at least a Class 10 card now); see https://docs.duet3d.com/en/User_manual/RepRapFirmware/SD_card
If nothing helps, @rechrtb will need to take a look at it.
Ian
- send
-
- send M586 and post the response, to see what network protocols are enabled? Disable any you are not using, eg FTP, Telnet
>>> M586 SENDING:M586 CORS disabled HTTP is enabled on port 80 FTP is disabled TELNET is disabled
- check the list of stored WiFi networks, by sending M587, looking particularly if there are any duplicate entries, with different capitalisation.
>>> M587 SENDING:M587 Remembered networks: DUET IP=0.0.0.0 GW=0.0.0.0 NM=0.0.0.0 esperville IP=0.0.0.0 GW=0.0.0.0 NM=0.0.0.0
-
post your config.g.
Below is the config.g -
have a look through the WiFi Troubleshooting page, to see if any of it is relevant.
I have read through this initially. AP is in same room as Duet with a -35dbm signal strength. The room in which it is in, is not near typical interference appliances, etc. The duet does stay online and pinging until the DWC is accessed. -
is the SD card the same vintage as the printer? It may be worth trying a new SD card (we recommend using at least a Class 10 card now); see https://docs.duet3d.com/en/User_manual/RepRapFirmware/SD_card
The SD card is of the same vintage. I can try a new card but will take a few to get it going, I will attempt this weekend.
config.g file
; Configuration file for Duet WiFi (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.1.4 on Tue Jul 21 2020 23:14:27 GMT-0500 (Central Daylight Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Graber" ; set printer name ; Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P0 S1 ; physical drive 0 goes forwards M569 P1 S0 ; physical drive 1 goes backwards M569 P2 S1 ; physical drive 2 goes forwards M569 P3 S1 ; physical drive 3 goes forwards M569 P4 S1 ; physical drive 4 goes forwards M584 X0 Y1 Z2:4 E3 ; set drive mapping M671 X-70:263 Y95:95 S1 ; set leadscrew pivot point with max correction ; Motor Configuration M350 X16 Y16 Z16 E16 I0 ; configure microstepping without interpolation M92 X80.00 Y80.00 Z400 E847.76118 ; set steps per mm M566 X900.00 Y900.00 Z60.00 E120.00 ; set maximum instantaneous speed changes (mm/min) M203 X6000.00 Y6000.00 Z180.00 E1200.00 ; set maximum speeds (mm/min) M201 X500.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2) M906 X1000 Y1000 Z850 E800 I30 ; set motor currents (mA) and motor idle factor in percent M84 S10 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X198 Y190 Z190 S0 ; set axis maxima ; Endstops M574 X1 S1 P"!xstop" ; configure active-low endstop for low end on X via pin xstop M574 Y1 S1 P"!ystop" ; configure active-low endstop for low end on Y via pin ystop M574 Z1 S1 P"nil" ; configure active-low endstop for low end on Z via pin null ; Z-Probe M950 S0 C"exp.heater3" ; create servo pin 0 for BLTouch M558 P9 C"^zprobe.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds G31 P25 X29.7 Y0 Z0 ; set Z probe trigger value, offset and trigger height, higher is lower M557 X35:188 Y5:185 P7:7 ; define mesh grid ; Heaters M308 S0 P"bedtemp" Y"thermistor" T51000 B3950 ; configure sensor 0 as thermistor on pin bedtemp M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0 M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S130 ; set temperature limit for heater 0 to 130C M308 S1 P"e0temp" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 1 as thermistor on pin e0temp M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S295 ; Set temperature limit for heater 1 (hot end) to 295C ; Extra Sensors M308 S10 Y"mcu-temp" A"MCU" ; defines sensor 10 as MCU temperature sensor M308 S11 Y"drivers" A"Duet Stepper Drivers" ; defines sensor 11 as stepper driver temerature sensor ; Fans M950 F0 C"fan0" Q100 ; create fan 0 on pin fan0 and set its frequency M106 P0 S0 H-1 C"Part Fan" ; set fan 0 value. Thermostatic control is turned off M950 F1 C"fan1" Q100 ; create fan 1 on pin fan1 and set its frequency M106 P1 S1 H1 T45 C"Hotend Fan" ; set fan 1 value. Thermostatic control is turned on M950 F2 C"fan2" Q100 ; create fan 2 on pin fan1 and set its frequency M106 P2 H10:11 T30:70 C"Board Fan" ; set fan 2 value. Thermostatic control is turned on ; Tools M563 P1 D0 H1 ; define tool 1 G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C ; Custom settings are not defined ; Miscellaneous M912 P0 S-18 ; MCU temperature calibration M501 ; run config-override.g T1 ; select first tool
-
FWW
>>> M39 SENDING:M39 SD card in slot 0: capacity 7.74GB, partition size 7.74GB, free space 7.65GB, speed 20.00MBytes/sec, cluster size 32kB
-
Got a new SD card over the weekend (SanDisk Ultra A1 HC).
Formatted according to the instructions on https://docs.duet3d.com/en/User_manual/RepRapFirmware/SD_card
Still seeing the issues.
Going to test out a couple things (that are probably not going to do anything but I'm trying anything at this point).
- Going to boot the duet and connect to DWC and let it sit on the Dashboard, see if it loses access just sitting there.
- Going to clean up the SD card. It has old firmware from RFF-1.18 days
- Since I have multiple SD cards now, going to install RFF3.3 with the older Wifi Firmware (prior to 2.01)
- If stable, keep upgrading stable releases until it breaks?
-
@droftarts I didn't read all of the original posts, but it sounds like what I've been seeing. WiFi suddenly disconnects unexpectedly. It usually reconnects about 15 seconds later, but I've been dumped out of whatever macro folder I was looking at, and if I was editing, I'm dumped out of the editor. Everything functions fine until the next time it happens. M122 is below. I have replaced the SD card recently and this problem predates it (it's been happening for months). I also occasionally get WiFi failures at power on, but not frequently. Cycling the power fixes that.
When this happens I sometimes wish I had a wired ethernet connection to fall back on (or just use most of the time, but still have WiFi available). I've been considering replacing the Duet2 WiFi with a pair of Duet3 Minis, and I was wondering if one can have WiFi and the other ethernet and thus give me the choice.
7/16/2024, 11:38:19 AM M122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 3.5.2 (2024-06-11 17:13:43) running on Duet WiFi 1.02 or later + DueX5
Board ID: 08DGM-9T6BU-FG3SN-6JKD0-3S06Q-9AY7D
Used output buffers: 3 of 26 (21 max)
=== RTOS ===
Static ram: 23384
Dynamic ram: 80968 of which 0 recycled
Never used RAM 2208, free system stack 120 words
Tasks: NETWORK(2,nWait 6,18.7%,217) HEAT(3,nWait 5,0.1%,328) Move(4,nWait 5,0.0%,274) DUEX(5,nWait 5,0.0%,23) MAIN(1,running,79.7%,659) IDLE(0,ready,1.5%,29), total 100.0%
Owned mutexes:
=== Platform ===
Last reset 00:16:12 ago, cause: power up
Last software reset at 2024-07-16 11:06, reason: OutOfMemory, Gcodes spinning, available RAM 160, slot 1
Software reset code 0x41c3 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x20002578 Task MAIN Freestk 1150 ok
Stack: 20019868 0041079f 00000000 00400247 00000000 00000000 000000d0 00400299 200025d8 20002690 00473bec 20012464 00000001 0040018d 200025d8 00435295 200025d8 00000001 ffffffff 00435499 20002690 00000001 00000019 0043706b 00000004 ffffffff 2000a70c
Error status: 0x00
Aux0 errors 0,0,0
MCU temperature: min 43.1, current 46.3, max 47.7
Supply voltage: min 23.6, current 23.9, max 24.4, under voltage events: 0, over voltage events: 0, power good: yes
Heap OK, handles allocated/used 297/69, heap memory allocated/used/recyclable 4096/4036/2208, gc cycles 332
Events: 0 queued, 0 completed
Driver 0: standstill, SG min 0
Driver 1: standstill, SG min 0
Driver 2: standstill, SG min n/a
Driver 3: standstill, SG min n/a
Driver 4: standstill, SG min n/a
Driver 5: standstill, SG min 0
Driver 6: standstill, SG min 0
Driver 7: standstill, SG min 0
Driver 8: standstill, SG min n/a
Driver 9: standstill, SG min n/a
Driver 10:
Driver 11:
Date/time: 2024-07-16 11:38:15
Cache data hit count 4294967295
Slowest loop: 50.79ms; fastest: 0.10ms
I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
=== Storage ===
Free file entries: 9
SD card 0 detected, interface speed: 20.0MBytes/sec
SD card longest read time 11.3ms, write time 3.3ms, max retries 0
=== Move ===
DMs created 83, segments created 3, maxWait 46129ms, bed compensation in use: mesh, height map offset 0.000, max steps late 0, min interval 0, bad calcs 0, ebfmin 0.00, ebfmax 0.00
no step interrupt scheduled
Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0
=== DDARing 0 ===
Scheduled moves 16, completed 16, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== Heat ===
Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0
Heater 0 is on, I-accum = 0.1
=== GCodes ===
Movement locks held by null
HTTP is idle in state(s) 0
Telnet is idle in state(s) 0
File is idle in state(s) 0
USB is idle in state(s) 0
Aux is idle in state(s) 0
Trigger is idle in state(s) 0
Queue is idle in state(s) 0
LCD is idle in state(s) 0
Daemon is doing "G4 P{var.DaemonPeriod}" in state(s) 0 0, running macro
Autopause is idle in state(s) 0
Q0 segments left 0
Code queue 0 is empty
=== Filament sensors ===
check 0 clear 4594439
Extruder 0 sensor: no data received
Extruder 1 sensor: no data received
=== DueX ===
Read count 1, 0.06 reads/min
=== Network ===
Slowest loop: 44.20ms; fastest: 0.00ms
Responder states: HTTP(0) HTTP(1) HTTP(0) FTP(0) Telnet(0)
HTTP sessions: 1 of 8
=== WiFi ===
Interface state: active
Module is connected to access point
Failed messages: pending 0, notrdy 0, noresp 0
Firmware version 2.1.0
MAC address 84:f3:eb:83:47:be
Module reset reason: Power up, Vcc 3.36, flash size 4194304, free heap 39068
WiFi IP address 192.168.1.130
Signal strength -35dBm, channel 11, mode 802.11n, reconnections 0
Clock register 00002002
Socket states: 5 3 0 0 0 0 0 0 -
RRF3.4.6 WF2.1.0 - still dropped
RRF3.4.6 WF1.27 - good
- Much better ping times and consistent
- When connected to DWC, pings do drop but at least DWC never disconnects
64 bytes from xxx.xxx.xxx.254: icmp_seq=844 ttl=255 time=6.689 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=845 ttl=255 time=9.533 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=846 ttl=255 time=4.322 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=847 ttl=255 time=5.767 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=848 ttl=255 time=3.885 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=849 ttl=255 time=3.560 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=850 ttl=255 time=23.067 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=851 ttl=255 time=19.400 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=852 ttl=255 time=5.826 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=853 ttl=255 time=16.080 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=854 ttl=255 time=5.848 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=855 ttl=255 time=10.788 ms 64 bytes from xxx.xxx.xxx.254: icmp_seq=856 ttl=255 time=4.342 ms
RRF3.4.6 WF2.1.0d - still dropped
So at this point, I guess I will stay on RRF3.4.6 and WF1.27 for now.
-
Hi, I've been looking into some improvements to the WiFi firmware in terms of connection stability. Below is my initial build with those changes. If possible, please do try it out and let me know if you still encounter issues.
Note: After firmware update, please confirm M122 outputs wifi firmware version as 2.1.1beta1.
-
@rechrtb I'll try it! Just installed RRF 3.6 alpha 2, which seems to work fine.
-
@rechrtb I have it installed. I'll let you know if I have any disconnects.
-
@DonStauffer Thank you!
-
@DonStauffer By the way, is the disconnect something you can sort of 'induce'? Because, if you can, please do try it on this new firmware.
-
@rechrtb I haven't seen any way to make it happen. It may be my imagination, but I think it happens more in the afternoons than mornings, if that makes any sense.
No trouble since last night's update to RFF & WiFi.
-
@DonStauffer @trd87t Hi, I just wanted to ask if you encountered issues with the beta firmware build so far...
-
@rechrtb The WiFi still disconnects unpredictably. Alpha firmware and beta WiFi didn't make it better or worse. I don't see any pattern except it seems more in the afternoon. I was assuming it was an interference problem, although other houses are at least 100 feet away here, and the Duet is about 10 feet from my router. But with increasing bandwidth use for WiFi I figured interference.
The biggest problem is if I'm editing a macro or something it drops me out and unsaved changes are lost. If I had the ethernet board I'd just have gone with a wired connection.
-
@DonStauffer I see. Sorry to hear you're still encountering issues. When the issue occurs, is DWC open in multiple tabs (same or different device). Or perhaps a transfer is going on? Also, this doesn't happen on 1.27x wifi firmware?
-
@rechrtb Nothing is necessarily happening, and no, not multiple tabs. Sometimes I even go out of the room briefly and come back and I see in the console log it disconnected then reconnected. Sometimes I see it happen. Usually it's out for anywhere from 20 seconds to a minute or so.
I don't remember the firmware version for sure but I'm pretty sure I was on the latest released version, and now 2.1.1beta1.
-
console log it disconnected then reconnected.
Oh, do you have what that log says? Also, do you happen to have a mesh/multi-AP setup, and the router you mentioned just happened to be the closest one?
-
@rechrtb said in Wifi/DWC Disconnecting with RRF3.5.2 on Duet2 Wifi Hardware:
mesh/multi-AP
Only one router in my house. I think the log entry just said it lost connection. Next time it happens I'll copy the log entry and post it here.