Issues with pause resume and cancel



  • This started with just pause and cancel.

    When I pause a print, XY movement stops fairly quickly but then about 5 seconds later another XY move happens on its own and the printer was then left in a "Busy" state.

    Pause just issues a simple M25.

    ; pause.g
    ; called when a print from SD card is paused
    M83            ; relative extruder moves
    G1 E-5 F3600   ; retract 5mm of filament
    G91            ; relative positioning
    G1 Z5 F600     ; lift Z by 5mm
    

    Do we need to add M400's in these macros as well?

    It seems that "start" and "end" macros called from gcode files aren't being run either. The print I just finished left the printer in "Processing" state with the following dump. Note the state of "file* "

    17:08:19 M122: === Diagnostics ===
    RepRapFirmware for Duet 3 v0.6 version 3.0beta11 running on Duet 3 version v0.6
    Board ID: 08DGM-9T66A-G63SJ-6J9F4-3SD6S-1U03B
    Used output buffers: 1 of 32 (13 max)
    === RTOS ===
    Static ram: 68792
    Dynamic ram: 172592 of which 0 recycled
    Exception stack ram used: 568
    Never used ram: 151264
    Tasks: NETWORK(ready,2044) HEAT(blocked,1204) CanReceiv(suspended,3808) CanSender(suspended,1424) CanClock(blocked,1412) TMC(blocked,80) MAIN(running,1808) IDLE(ready,156)
    Owned mutexes:
    === Platform ===
    Last reset 05:39:17 ago, cause: software
    Last software reset at 2019-10-14 11:29, reason: Unknown, spinning module Platform, available RAM 151316 bytes (slot 3)
    Software reset code 0x0010 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0444a000 BFAR 0x00000000 SP 0xffffffff Task 0x4e49414d
    Error status: 0
    Free file entries: 10
    SD card 0 not detected, interface speed: 37.5MBytes/sec
    SD card longest block write time: 0.0ms, max retries 0
    MCU temperature: min 38.4, current 38.6, max 38.8
    Supply voltage: min 23.6, current 23.8, max 23.9, under voltage events: 0, over voltage events: 0, power good: yes
    12V rail voltage: min 12.1, current 12.2, max 12.2, under voltage events: 0
    Driver 0: standstill, reads 24120, writes 0 timeouts 0, SG min/max not available
    Driver 1: standstill, reads 24120, writes 0 timeouts 0, SG min/max not available
    Driver 2: standstill, reads 24119, writes 0 timeouts 0, SG min/max not available
    Driver 3: standstill, reads 24119, writes 0 timeouts 0, SG min/max not available
    Driver 4: standstill, reads 24120, writes 0 timeouts 0, SG min/max not available
    Driver 5: standstill, reads 24120, writes 0 timeouts 0, SG min/max not available
    Date/time: 2019-10-14 17:08:18
    Slowest loop: 6.66ms; fastest: 0.28ms
    === Move ===
    Hiccups: 0, FreeDm: 375, MinFreeDm: 375, MaxWait: 0ms
    Bed compensation in use: none, comp offset 0.000
    === MainDDARing ===
    Scheduled moves: 27356, completed moves: 27356, StepErrors: 0, LaErrors: 0, Underruns: 0, 0
    === AuxDDARing ===
    Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0
    === Heat ===
    Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1
    Heater 0 is on, I-accum = 0.1
    Heater 1 is on, I-accum = 0.4
    === GCodes ===
    Segments left: 0
    Stack records: 4 allocated, 4 in use
    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 54 54, running macro
    serial is idle in state(s) 0
    aux is assembling a command in state(s) 0
    daemon* is ready with "M122" in state(s) 0
    queue* is idle in state(s) 0
    lcd is idle in state(s) 0
    spi is idle in state(s) 0
    autopause is idle in state(s) 0
    Code queue is empty.
    === Network ===
    Slowest loop: 0.77ms; fastest: 0.01ms
    Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
    HTTP sessions: 0 of 8
    - Ethernet -
    State: 0
    Socket states: 0 0 0 0 0 0 0 0
    === CAN ===
    Messages sent 1224, longest wait 0ms for type 0
    === Linux interface ===
    State: 0, failed transfers: 0
    Last transfer: 31ms ago
    RX/TX seq numbers: 40908/21407
    SPI underruns 0, overruns 0
    Number of disconnects: 0
    Buffer RX/TX: 0/0-0
    === Duet Control Server ===
    Duet Control Server v1.1.0.3
    Code buffer space: 4096
    Configured SPI speed: 2000000 Hz
    Full transfers per second: 36.94
    


  • Bumping this up a bit...

    M25 (pause) doesn't even attempt to run pause.g but leaves the printer in "Pausing" state.
    Running M0 H1 (cancel) in this state, runs stop.g and leaves the printer in "Busy" state.
    cancel.g never seems to be run (maybe because the printer is still in "Pausing" state and not "Paused"?)

    M24 (resume) after a pause doesn't even attempt to run resume.g, restarts the print from the beginning (which causes much carnage!), and leaves the printer still in the "pausing" state (which leaves the DWC showing the resume and cancel buttons with no way to pause again).


Log in to reply