Software assertion with 3.2 beta 2
-
Hi, I have a filament unload macro to unload PETG filament in a skinny dip-like fashion. This worked before on stable RRF 3.1, but now crashes the firmware. An
M122
yielded the following:M122 === Diagnostics === RepRapFirmware for Duet 2 Maestro version 3.2-beta2 running on Duet Maestro 1.0 Board ID: 08D8M-9T8A2-MQNS0-7J1FA-3SS6R-KRTAW Used output buffers: 3 of 24 (14 max) === RTOS === Static ram: 22684 Dynamic ram: 97168 of which 24 recycled Exception stack ram used: 192 Never used ram: 11004 Tasks: NETWORK(ready,168) HEAT(blocked,330) TMC(blocked,71) MAIN(running,482) IDLE(ready,20) Owned mutexes: === Platform === Last reset 00:10:10 ago, cause: software Last software reset at 2020-11-06 10:21, reason: AssertionFailed, GCodes spinning, available RAM 10940, slot 2 Software reset code 0x4123 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x04418000 BFAR 0xe000ed38 SP 0x2000444c Task MAIN Stack: 0000059e 0047887c 00457f91 ffffffff ffffffff 006d0065 006e006f 20003470 ffffffff 00000000 00000079 20003080 00458013 20004498 004663a0 20007400 00455947 200044b4 0044e90b 20003464 00000000 00000001 200044bc 00000000 0044e979 00456541 200044bc Error status: 0x00 MCU temperature: min 32.0, current 33.0, max 33.5 Supply voltage: min 0.0, current 24.0, max 24.1, under voltage events: 0, over voltage events: 0, power good: yes Driver 0: position 0, standstill, read errors 0, write errors 1, ifcnt 26, reads 36231, writes 8, timeouts 0, DMA errors 0 Driver 1: position 0, standstill, read errors 0, write errors 1, ifcnt 26, reads 36231, writes 8, timeouts 0, DMA errors 0 Driver 2: position 0, standstill, read errors 0, write errors 1, ifcnt 26, reads 36231, writes 8, timeouts 0, DMA errors 0 Driver 3: position 0, standstill, read errors 0, write errors 1, ifcnt 30, reads 36231, writes 8, timeouts 0, DMA errors 0 Driver 4: position 0, standstill, read errors 0, write errors 1, ifcnt 20, reads 36233, writes 6, timeouts 0, DMA errors 0 Driver 5: position 0, ok, read errors 0, write errors 0, ifcnt 0, reads 0, writes 0, timeouts 36239, DMA errors 0, failedOp 0x80 Driver 6: position 0, ok, read errors 0, write errors 0, ifcnt 0, reads 0, writes 0, timeouts 36239, DMA errors 0, failedOp 0x80 Date/time: 2020-11-06 10:31:32 Slowest loop: 6.06ms; 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: 15.0MBytes/sec SD card longest read time 1.1ms, write time 0.0ms, max retries 0 === Move === Hiccups: 0(0), FreeDm: 169, MinFreeDm: 169, MaxWait: 0ms Bed compensation in use: none, comp offset 0.000 === MainDDARing === Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0 CDDA state: -1 === AuxDDARing === Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0 CDDA state: -1 === Heat === Bed heaters = 0 -1, chamberHeaters = -1 -1 Heater 1 is on, I-accum = 0.0 === 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: 147.41ms; fastest: 0.01ms 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
The filament's
unload.g
macro is set up like this.M83 ; Set extruder to relative mode M109 S200 ; Wait for hotend to reach target temperature M104 S0 ; Disable hotend immediately so the temperature drops while skinny-dipping G1 E20 F120 ; Extrude 20mm with a speed of 2mm/s G1 E-2 F600 ; Retract 2mm with a speed of 10mm/s G4 P1000 ; Wait for 1s G1 E-5 F60 ; Retract 5mm more with a speed of 1mm/s G1 E4.8 F60 ; Dip tip back in slowly G1 E-5 F60 ; Pull it out again G1 E4.8 F60 ; Dip tip back in slowly G1 E-5 F60 ; Pull it out again G1 E4.8 F60 ; Dip tip back in slowly G1 E-5 F60 ; Pull it out again G1 E-50 F3600 ; Retract 50mm with a speed of 60mm/s
The macro doesn't seem to complete to the end. When the firmware resets, the temperature has dropped to 180℃. I'm not using
M302
in my config to set a different minimum extrusion temperature, so that should be still the default @ 160℃ according to the documentation. Hopefully this is sufficient information to clarify what's going on. -
This is a known issue in 3.2beta2 with M701 and M702 commands. I suggest you revert to beta1 until we release beta3.
-
@dc42 said in Software assertion with 3.2 beta 2:
M701
Apologies, I hadn't linked the issue to the M701/M702 commands. I thought it was something in the macro that triggered it. Thanks for the quick response!