DWC not accessible, M122 causes timeout
-
I tried updating the firmware using the first fallback method mentioned here:
https://duet3d.dozuki.com/Wiki/Installing_and_Updating_Firmware_(Legacy)#Section_Fallback_procedure_Num_1
It didn't work but fallback #2 did by commenting out M552 in config.g.
Now im on 2.05.1, DWC still isn't working but the controller no longer crashes on M552 Pn.n.n.n S1 commands. -
Are you able to connect the Duet to a router and use DHCP as a test?
Do you have a different computer/browser to test with as well?
The Duet appears to be responding as it should, the DWC is just not loading on the PC. There could be external network reasons for that as well.
The ethernet port lights are showing activity. The SD card is being read and showing the DWC files there. It's responding to pings. It responds over USB terminal and took a firmware update.
Which reminds me, when you updated the firmware to 2.05.1 did you also update the DWC files in the /www folder?
https://github.com/Duet3D/RepRapFirmware/releases/download/2.05.1/DuetWebControl-SD-2.0.7.zip
-
I've revisited my duet2 ethernet machine and the error still persists. Things that changed since last time are:
-updated to RRF3.0 and DWC 3.x
-m122 works now as long as networking is disabled (m552 s0)Below is an orderly list demonstrating what my problem looks like. I want to know if there is a possible mismatch of Firmware/DWC or some low level firmware is bricked. Basically is this fixable or will I need a new board and could I potentially get away with a new ethernet daughter board?
networking section of config.g
; Network M552 P192.168.1.117 ; (0 = DHCP) M554 P192.168.1.1 ; Gateway M553 P255.255.255.0 ; Netmask
and config in win10
ipv4 configured via controlpanel IP address 192.168.1.1 subnet mask 255.255.255.0
-
USB serial with YAT
M115FIRMWARE_NAME: RepRapFirmware for Duet 2 WiFi/Ethernet FIRMWARE_VERSION: 3.0 ELECTRONICS: Duet Ethernet 1.02 or later + DueX5 FIRMWARE_DATE: 2020-01-03b3 ok
M122
=== Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.0 running on Duet Ethernet 1.02 or later + DueX5 Board ID: i removed that for this post Used output buffers: 1 of 24 (1 max) === RTOS === Static ram: 30516 Dynamic ram: 91800 of which 108 recycled Exception stack ram used: 256 Never used ram: 8392 Tasks: NETWORK(ready,2048) HEAT(blocked,1240) DUEX(suspended,160) MAIN(running,3764) IDLE(ready,156) Owned mutexes: === Platform === Last reset 00:03:19 ago, cause: software Last software reset time unknown, reason: Stuck in spin loop, spinning module GCodes, available RAM 7984 bytes (slot 1) Software reset code 0x0083 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0040080f BFAR 0xe000ed38 SP 0x200031dc Task 0x5754454e Stack: 00404899 0040489a 0100f000 00000108 0040459d 00000108 00404abd 00000008 00404ad7 00000000 00000000 00000000 00404b81 00000006 ffffffff 200184b8 00000000 00000001 00000000 00000006 00405f7d 200183f8 200029dc Error status: 0 Free file entries: 10
-
latter half of M122
Free file entries: 10 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest block write time: 0.0ms, max retries 0 MCU temperature: min 31.3, current 32.0, max 32.3 Supply voltage: min 0.5, current 0.5, max 0.5, under voltage events: 0, over voltage events: 0, power good: no Driver 0: ok, SG min/max not available Driver 1: ok, SG min/max not available Driver 2: ok, SG min/max not available Driver 3: ok, SG min/max not available Driver 4: ok, SG min/max not available Driver 5: ok, SG min/max not available Driver 6: ok, SG min/max not available Driver 7: ok, SG min/max not available Driver 8: ok, SG min/max not available Driver 9: ok, SG min/max not available Date/time: 1970-01-01 00:00:00 Cache data hit count 268624066 Slowest loop: 0.23ms; fastest: 0.07ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
-
The last part of the M122 debug output I'm unfortunately not allowed to post as it gets caught in the spam filter. But basically all looks good, network is offline and no one is connected to the duet
then enabling networking via USB serial
m552 Network is disabled, configured IP address: 192.168.1.117, actual IP address: 192.168.1.117 ok m552 s1 ok m552 Network is enabled, configured IP address: 192.168.1.117, actual IP address: 192.168.1.117 ok
pinging IP address on my connected PC
C:\>ping 192.168.1.117 Pinging 192.168.1.117 with 32 bytes of data: Reply from 192.168.1.117: bytes=32 time<1ms TTL=128 Reply from 192.168.1.117: bytes=32 time<1ms TTL=128 Reply from 192.168.1.117: bytes=32 time<1ms TTL=128 Reply from 192.168.1.117: bytes=32 time<1ms TTL=128 Ping statistics for 192.168.1.117: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 0ms, Maximum = 0ms, Average = 0ms
M122 via USB serial in YAT again
*no response*, serial connection terminated *windows unplug sound* .... 10s later *windows plug in sound* (board crashed and rebooted)
and then we start at the top again. M122 works again and M552 reports networking disabled.
What could be the issue here?
-
@stretchy said in DWC not accessible, M122 causes timeout:
Last software reset time unknown, reason: Stuck in spin loop, spinning module GCodes
this obviously sticks out but i dont know what to make of it nor how to fix it.
Any help is greatly appreciated. Apologies for the multiple posts but akismet.com would not allow a post that long and sections of the M122 response. -
@stretchy said in DWC not accessible, M122 causes timeout:
I've revisited my duet2 ethernet machine and the error still persists. Things that changed since last time are:
-updated to RRF3.0 and DWC 3.x
-m122 works now as long as networking is disabled (m552 s0)Below is an orderly list demonstrating what my problem looks like. I want to know if there is a possible mismatch of Firmware/DWC or some low level firmware is bricked. Basically is this fixable or will I need a new board and could I potentially get away with a new ethernet daughter board?
networking section of config.g
; Network M552 P192.168.1.117 ; (0 = DHCP) M554 P192.168.1.1 ; Gateway M553 P255.255.255.0 ; Netmask
and config in win10
ipv4 configured via controlpanel IP address 192.168.1.1 subnet mask 255.255.255.0
this shows you're setting the gateway on the duet to the same IP address as you're setting the win10 IP address. Is that correct?
Can you set the Win10 IP address to a different IP?This is a direct ethernet connection between the duet and win10 pc?
-
When and where did you purchase the Duet?
-
@phaedrux yes the Duet2 Ethernet board is directly connected to a dedicated PC for that single machine.
-
@phaedrux the duet 2 board was purchased on duet3d.com, I believe in mid 2020 to early 2021.
-
@stretchy RepRapFirmware 3.0 is outdated, please upgrade to RRF+DWC v3.3 or newer - see here. If the board still fails to serve the web interface after that, please try to access it from another device (e.g. smartphone or tablet) and check if that works. If it still resets at some point, please share the output from
M122
again. -
@chrishamm I've updated to RRF3.3 using these steps:
- copy Duet2CombinedFirmware.bin to /sys
- copy the folders /js, /css, /fonts, /img into /sys (not documented what they do but to be safe I copied these too)
- copy the Duet2CombinedIAP.bin to the SD card (can only be found in the old RRF 3.0 release, iap4e.bin does not work anymore)
- insert SD and M997 S0 to start update
- M115 to verify update
- M122 to gather new log
M115 FIRMWARE_NAME: RepRapFirmware for Duet 2 WiFi/Ethernet FIRMWARE_VERSION: 3.3 ELECTRONICS: Duet Ethernet 1.02 or later + DueX5 FIRMWARE_DATE: 2021-06-15 21:45:03 ok M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.3 (2021-06-15 21:44:54) running on Duet Ethernet 1.02 or later + DueX5 Board ID: XXX Used output buffers: 1 of 24 (1 max) === RTOS === Static ram: 23876 Dynamic ram: 70988 of which 24 recycled Never used RAM 19528, free system stack 205 words Tasks: NETWORK(ready,6.1%,565) HEAT(delaying,0.0%,341) Move(notifyWait,0.1%,364) DUEX(notifyWait,0.0%,24) MAIN(running,92.8%,467) IDLE(ready,1.0%,29), total 100.0% Owned mutexes: USB(MAIN) === Platform === Last reset 00:01:04 ago, cause: software Last software reset time unknown, reason: StuckInSpinLoop, GCodes spinning, available RAM 19528, slot 1 Software reset code 0x0083 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0040080f BFAR 0xe000ed38 SP 0x200034dc Task NETW Freestk 541 ok Stack: 00411ff3 00411eb8 01000000 00000108 00411c57 00000108 00000108 0000000b 0041217d 00000000 0041218f 00000000 00412225 00000000 ffffffff 20011800 00000000 00000001 00000000 00000006 004133cf 00000000 0045a465 20011744 00000000 20011744 0045a701 Error status: 0x00 Step timer max interval 0 MCU temperature: min 31.9, current 32.4, max 32.9 Supply voltage: min 0.5, current 0.5, max 0.6, 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 Driver 0: position 0, ok, SG min/max not available Driver 1: position 0, ok, SG min/max not available Driver 2: position 0, ok, SG min/max not available Driver 3: position 0, ok, SG min/max not available Driver 4: position 0, ok, SG min/max not available Driver 5: position 0, ok, SG min/max not available Driver 6: position 0, ok, SG min/max not available Driver 7: position 0, ok, SG min/max not available Driver 8: position 0, ok, SG min/max not available Driver 9: position 0, ok, SG min/max not available Driver 10: position 0 Driver 11: position 0 Date/time: 1970-01-01 00:00:00 Cache data hit count 2530716960 Slowest loop: 4.10ms; fastest: 0.13ms 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 0.4ms, write time 0.0ms, max retries 0 === Move === DMs created 83, maxWait 0ms, bed compensation in use: none, comp offset 0.000 === MainDDARing === Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === AuxDDARing === Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1 -1 -1 === GCodes === Segments left: 0 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 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 Code queue is empty. === DueX === Read count 1, 0.94 reads/min === Network === Slowest loop: 0.22ms; fastest: 0.00ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions HTTP sessions: 0 of 8 Interface state disabled, link down ok
-
@stretchy
the issue still persists; DWC is not accessible through a browser while pinging the IP is possible.
M122 works but only before I enable networking (M552 S1), after I've done so M122 crashes the board, it's rebooted ~15s later and the config.g is loaded again with networking disabled. Therefore M122 works again. -
@stretchy said in DWC not accessible, M122 causes timeout:
copy the folders /js, /css, /fonts, /img into /sys (not documented what they do but to be safe I copied these too)
These must be in the /www folder. Do you also have them there?
Can you show a screen shot of your folder structure? -
-
@stretchy if sending M552 S1 followed by sending M122 causes timeout, then it sounds to me that the Ethernet module has failed. Is the chip on it getting hot?
If the board was less than one year old from when you purchased it to when you first reported this problem, then we will replace the board under warranty. If not, then the Ethernet module is available separately, and a new one may fix the problem.
-
@phaedrux you're right, I removed the www folders from /sys.
Here's the file structure on the SD cardD:. ├───sys │ iap4e.bin │ config.json │ bed.g │ config.g │ homeall.g │ homex.g │ homey.g │ homez.g │ pause.g │ resume.g │ sleep.g │ stop.g │ tfree0.g │ tpre0.g │ tpost0.g │ Duet2CombinedFirmware.bin │ favicon.ico.gz │ index.html.gz │ manifest.json.gz │ precache-manifest.a4ab8f573fcc203b798fa7d11eee39d5.js.gz │ service-worker.js.gz │ Duet2CombinedIAP.bin │ └───www │ favicon.ico.gz │ manifest.json.gz │ precache-manifest.a4ab8f573fcc203b798fa7d11eee39d5.js.gz │ service-worker.js.gz │ index.html.gz │ DuetAPI.xml │ ├───css │ Accelerometer.5c60999b.css.gz │ app.ce075a4e.css.gz │ GCodeViewer.9597b317.css.gz │ HeightMap.4d390d72.css.gz │ ObjectModelBrowser.c5e13b42.css.gz │ OnScreenKeyboard.7f43fe4b.css.gz │ ├───fonts │ materialdesignicons-webfont.147e3378.woff │ materialdesignicons-webfont.147e3378.woff.gz │ materialdesignicons-webfont.174c02fc.ttf.gz │ materialdesignicons-webfont.64d4cf64.eot.gz │ materialdesignicons-webfont.7a44ea19.woff2 │ materialdesignicons-webfont.7a44ea19.woff2.gz │ ├───img │ └───icons │ android-chrome-192x192.png.gz │ android-chrome-512x512.png.gz │ android-chrome-maskable-192x192.png.gz │ android-chrome-maskable-512x512.png.gz │ apple-touch-icon-120x120.png.gz │ apple-touch-icon-152x152.png.gz │ apple-touch-icon-180x180.png.gz │ apple-touch-icon-60x60.png.gz │ apple-touch-icon-76x76.png.gz │ apple-touch-icon.png.gz │ favicon-16x16.png.gz │ favicon-32x32.png.gz │ msapplication-icon-144x144.png.gz │ mstile-150x150.png.gz │ safari-pinned-tab.svg.gz │ └───js Accelerometer.4a8a402b.js.gz Accelerometer.4a8a402b.js.map.gz app.24acd1b2.js.gz app.24acd1b2.js.map.gz GCodeViewer.95d3cd80.js.gz GCodeViewer.95d3cd80.js.map.gz HeightMap.a082b8e6.js.gz HeightMap.a082b8e6.js.map.gz ObjectModelBrowser.0b9b2798.js.gz ObjectModelBrowser.0b9b2798.js.map.gz OnScreenKeyboard.a880bca8.js.gz OnScreenKeyboard.a880bca8.js.map.gz
-
is there also a firmware folder in the root of the sd card?
-
@phaedrux there is not. It's running the latest stable RRF 3.3. AFAIK 3.3 introduces the /firmware directory but that has not been automatically created upon updating the firmware. I know the board is alive and responds to M115 and M122 (again as long as networking is disabled) and G28 work as well.