@dc42 That makes sense. PrusaSlicer can put it in at the beginning using custom g-code (which is what I was doing), but it doesn't by default. So I agree it's better to check just the end. Thanks for your reply!
Posts made by vcapra1
-
RE: NUM_LAYERS in G-code
-
RE: NUM_LAYERS in G-code
Actually, after looking at https://github.com/Duet3D/RepRapFirmware/blob/51e5b27066627850a8c9d55bf14c6fe656c7af70/src/Storage/FileInfoParser.cpp, it looks like the NUM_LAYERS comment is only checked in the file footer, and I was including this at the top of the file.
-
NUM_LAYERS in G-code
I've seen some posts here about the number of layers being incorrect, and I'm having the same problem. It seems that if there is a comment in the G-code file like the following:
;NUM_LAYERS:120
then it will use that for the total number of layers. Though in testing, that does not seem to be a thing. I've tried with firmware 3.3.0 and also 3.4.0-rc1. In general, it simply takes the last Z move, divides it by the layer height that it thinks is being used, and uses that as the number of layers. This does not work because I move the head up by a bit at the end of the print to avoid crashing into the print, and also some prints have variable layer sizes.
Another issue is that when running a second print, it will not update the total layer count. So if I print one file with 100 layers, and then a second file with 200 layers, during the entirety of the second print, it will read "Layer X of 100".
Here's a simple file demonstrating the problems: Shape-Box.gcode. This file specifies the number of layers as 50, yet it says 53 layers the entire time. Additionally, if I then print a cube that is twice as bit (with 100 layers), it will still say there are 53 layers until I refresh the interface, then it will update to 103.
-
RE: Uploads not working
@droftarts Here's M39:
SD card in slot 0: capacity 7.95Gb, free space 7.70Gb, speed 20.00MBytes/sec, cluster size 4kb
I've upgraded to the 3.3 release, I'll post again here if the issue comes back
-
Uploads not working
I sometimes can't get a file to upload to my printer over the network anymore. It will quickly get to like 10%, then get slower and slower until it almost stops (dropping to about 10 KiB/s and then apparently stopping). This is not a particularly large file, and there is plenty of space on the SD card.
I've tried multiple resets without luck, but then suddenly it will start working again. This has happened a few times now, and it's beginning to get annoying because I usually don't realize the problem is back until I've spend 10 minutes heating everything up and homing the axes, only to have to power it down and remove the SD card to transfer files manually.
It seems loosely tied to file size, as files less than 200KB will upload almost instantly, but anything above 500KB will start to drag on after 10-20% and eventually stop around 25%.
Again, the issue isn't persistent, but usually lasts several hours. I've also tried things like rebooting my computer, my router, without any change. During these issues my computer can communicate with other devices on my network at or above gigabit speeds, so the issue is certainly isolated to the printer.
M122:
M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.3beta3+1 (2021-04-28 21:24:54) running on Duet Ethernet 1.02 or later + DueX5 Board ID: 08DGM-9T6BU-FG3SJ-6JTDJ-3SN6P-9SYZG Used output buffers: 4 of 24 (17 max) === RTOS === Static ram: 23876 Dynamic ram: 73944 of which 0 recycled Never used RAM 16596, free system stack 118 words Tasks: NETWORK(ready,27.9%,205) HEAT(delaying,0.1%,330) Move(notifyWait,0.1%,303) DUEX(notifyWait,0.0%,24) MAIN(running,71.9%,278) IDLE(ready,0.1%,29), total 100.0% Owned mutexes: === Platform === Last reset 00:09:06 ago, cause: power up Last software reset at 2022-02-14 16:12, reason: User, GCodes spinning, available RAM 16420, slot 1 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x00 Aux0 errors 0,0,0 Step timer max interval 0 MCU temperature: min 24.7, current 36.2, max 36.7 Supply voltage: min 24.2, current 24.4, max 24.5, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Driver 0: position -9800, standstill, SG min/max 0/266 Driver 1: position 7000, standstill, SG min/max 0/243 Driver 2: position 4386, standstill, SG min/max not available Driver 3: position 0, standstill, SG min/max not available Driver 4: position 0, standstill, SG min/max not available Driver 5: position 0, standstill, SG min/max 0/206 Driver 6: position 0, standstill, SG min/max 0/111 Driver 7: position 0, standstill, SG min/max 0/158 Driver 8: position 0, standstill, SG min/max 0/167 Driver 9: position 0, standstill, SG min/max 0/176 Driver 10: position 0 Driver 11: position 0 Date/time: 2022-02-19 08:53:53 Cache data hit count 4294967295 Slowest loop: 81.25ms; fastest: 0.17ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 8 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest read time 3.7ms, write time 30.9ms, max retries 0 === Move === DMs created 83, maxWait 238605ms, bed compensation in use: mesh, comp offset 0.000 === MainDDARing === Scheduled moves 41, completed moves 41, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 2], 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 Heater 0 is on, I-accum = 0.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 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 idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty. === DueX === Read count 1, 0.11 reads/min === Network === Slowest loop: 212.43ms; fastest: 0.02ms Responder states: HTTP(3) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions HTTP sessions: 1 of 8 Interface state active, link 100Mbps full duplex
-
RE: Stack overflow after heater tuning
Ok with the latest updates it seems to be working, thanks!
-
RE: Stack overflow after heater tuning
@vcapra1 Actually I just realized the stack size change was committed after 3.3beta3 was released, I'll try compiling the latest version and see if it helps
-
RE: Stack overflow after heater tuning
@dc42 Thanks for your reply. It still seems to be an issue in 3.3beta3:
M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.3beta3 (2021-04-22 16:27:28) running on Duet Ethernet 1.02 or later + DueX5 Board ID: 08DGM-9T6BU-FG3SJ-6JTDJ-3SN6P-9SYZG Used output buffers: 1 of 24 (16 max) === RTOS === Static ram: 23156 Dynamic ram: 73736 of which 0 recycled Never used RAM 17524, free system stack 204 words Tasks: NETWORK(ready,24.1%,216) HEAT(delaying,0.0%,310) Move(notifyWait,0.1%,214) DUEX(notifyWait,0.0%,24) MAIN(running,74.0%,441) IDLE(ready,1.8%,19), total 100.0% Owned mutexes: === Platform === Last reset 00:00:11 ago, cause: software Last software reset at 2021-04-28 19:56, reason: StackOverflow, GCodes spinning, available RAM 17524, slot 0 Software reset code 0x4103 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f80e BFAR 0xe000ed38 SP 0x2001ffbc Task HEAT Freestk 28713 ok Stack: 20003ebc 20003ef0 0045acf9 00000000 20005958 000000c8 0045a385 20003f1c 20005958 00000000 00f00000 e000e000 c0000000 00000002 0045a4c1 0045a238 21000000 ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff Error status: 0x00 Aux0 errors 0,0,0 Step timer max interval 0 MCU temperature: min 32.9, current 33.4, max 33.8 Supply voltage: min 24.3, current 24.4, max 24.4, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Driver 0: position 0, standstill, SG min/max not available Driver 1: position 0, standstill, SG min/max not available Driver 2: position 0, standstill, SG min/max not available Driver 3: position 0, standstill, SG min/max not available Driver 4: position 0, standstill, SG min/max not available Driver 5: position 0, standstill, SG min/max not available Driver 6: position 0, standstill, SG min/max not available Driver 7: position 0, standstill, SG min/max not available Driver 8: position 0, standstill, SG min/max not available Driver 9: position 0, standstill, SG min/max not available Driver 10: position 0 Driver 11: position 0 Date/time: 2021-04-28 19:57:09 Cache data hit count 455436309 Slowest loop: 5.58ms; fastest: 0.17ms 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 3.3ms, write time 30.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 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 idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty. === DueX === Read count 1, 5.10 reads/min === Network === Slowest loop: 13.08ms; fastest: 0.02ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions HTTP sessions: 1 of 8 Interface state active, link 100Mbps full duplex
-
Stack overflow after heater tuning
I cannot tune my heaters as every time I do, I get a stack overflow error (except on some rare occasions when it just works, which is odd).
This occurs right at the end of the last cycle:
No heater config is printed for me to put in config-override.g so the entire tuning was a waste of like 15 minutes.
Here is the full M122 dump after the reset caused by the error:
M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.2.2 running on Duet Ethernet 1.02 or later + DueX5 Board ID: 08DGM-9T6BU-FG3SJ-6JTDJ-3SN6P-9SYZG Used output buffers: 3 of 24 (15 max) === RTOS === Static ram: 23460 Dynamic ram: 71864 of which 24 recycled Never used RAM 16732, free system stack 195 words Tasks: NETWORK(ready,167) HEAT(blocked,308) DUEX(blocked,31) MAIN(running,449) IDLE(ready,20) Owned mutexes: === Platform === Last reset 00:00:10 ago, cause: software Last software reset at 2021-04-27 21:09, reason: StackOverflow, Move spinning, available RAM 16732, slot 2 Software reset code 0x4104 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f80e BFAR 0xe000ed38 SP 0x2001ffc4 Task HEAT Freestk 30309 bad marker Stack: 200025d0 20002604 004554a5 2000460c 00454ad5 2000262c 2000460c 00000000 00f00000 e000ef34 c0000000 2000468c 00454c13 00454984 61000000 ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff Error status: 0x00 Aux0 errors 0,0,0 MCU temperature: min 36.6, current 37.2, max 37.4 Supply voltage: min 24.3, current 24.3, max 24.4, under voltage events: 0, over voltage events: 0, power good: yes Driver 0: position 0, standstill, SG min/max not available Driver 1: position 0, standstill, SG min/max not available Driver 2: position 0, standstill, SG min/max not available Driver 3: position 0, standstill, SG min/max not available Driver 4: position 0, standstill, SG min/max not available Driver 5: position 0, standstill, SG min/max not available Driver 6: position 0, standstill, SG min/max not available Driver 7: position 0, standstill, SG min/max not available Driver 8: position 0, standstill, SG min/max not available Driver 9: position 0, standstill, SG min/max not available Driver 10: position 0 Driver 11: position 0 Date/time: 2021-04-27 21:09:13 Cache data hit count 14053254 Slowest loop: 6.19ms; fastest: 0.22ms 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 3.3ms, write time 3.8ms, 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 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 idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty. === Network === Slowest loop: 11.32ms; fastest: 0.02ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions HTTP sessions: 1 of 8 Interface state active, link 100Mbps full duplex === DueX === Read count 1, 5.53 reads/min