Duet randomly rebooting



  • My machine is randomly rebooting when I home-z. This is in the log...

    I cancelled a print, started to home-Z

    2018-10-14 11:24:08 Event logging stopped
    2018-10-14 11:24:08 Event logging started
    2018-10-14 11:25:24 Started printing file rail assembly.gcode
    2018-10-14 11:38:13 Resume-after-power-fail state saved
    2018-10-14 11:38:14 Printing paused at X88.2 Y213.8 Z1.1
    2018-10-14 11:38:14 Cancelled printing file rail assembly.gcode, print time was 0h 13m
    power up + 00:00:01 Event logging started
    power up + 00:00:01 Network running, IP address = 192.168.1.200


  • administrators

    If you send M122 after it has rebooted, the report will include the reset reason and the software reset data.



  • OK, will do it next time. Has been power cycled since.



  • Doesn't look like anything logged...

    10:26:56 PMM122
    === Diagnostics ===
    RepRapFirmware for Duet 2 Maestro version 2.02RC2(RTOS) running on Duet Maestro 1.0
    Board ID: 08DGM-95762-FD3TD-6J1F2-3SW6M-T9AHG
    Used output buffers: 1 of 20 (9 max)
    === RTOS ===
    Static ram: 22452
    Dynamic ram: 94812 of which 0 recycled
    Exception stack ram used: 228
    Never used ram: 13580
    Tasks: NETWORK(ready,540) HEAT(blocked,1320) MAIN(running,3636)
    Owned mutexes:
    === Platform ===
    Last reset 00:01:19 ago, cause: watchdog
    Last software reset time unknown, reason: User, spinning module GCodes, available RAM 13580 bytes (slot 1)
    Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0400f000 BFAR 0xe000ed38 SP 0xffffffff Task 0x4e49414d
    Error status: 0
    Free file entries: 9
    SD card 0 detected, interface speed: 15.0MBytes/sec
    SD card longest block write time: 471.8ms, max retries 0
    MCU temperature: min 39.9, current 40.7, max 41.0
    Supply voltage: min 24.0, current 24.0, max 24.1, under voltage events: 0, over voltage events: 0
    Driver 0: standstill, read errors 0, write errors 1, ifcount 31, reads 3102, timeouts 0
    Driver 1: standstill, read errors 0, write errors 1, ifcount 31, reads 3102, timeouts 0
    Driver 2: standstill, read errors 0, write errors 1, ifcount 34, reads 3102, timeouts 0
    Driver 3: standstill, read errors 0, write errors 1, ifcount 16, reads 3102, timeouts 0
    Driver 4: standstill, read errors 0, write errors 1, ifcount 16, reads 3102, timeouts 0
    Driver 5: ok, read errors 0, write errors 0, ifcount 0, reads 0, timeouts 3110
    Driver 6: ok, read errors 0, write errors 0, ifcount 0, reads 0, timeouts 3109
    Date/time: 1970-01-01 00:00:00
    Slowest loop: 70.28ms; fastest: 0.06ms
    === Move ===
    Hiccups: 0, StepErrors: 0, LaErrors: 0, FreeDm: 240, MinFreeDm: 240, MaxWait: 0ms, Underruns: 0, 0
    Scheduled moves: 0, completed moves: 0
    Bed compensation in use: mesh
    Bed probe heights: 0.000 0.000 0.000 0.000 0.000
    === Heat ===
    Bed heaters = 0, chamberHeaters = -1 -1
    Heater 1 is on, I-accum = 0.0
    === GCodes ===
    Segments left: 0
    Stack records: 2 allocated, 0 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
    serial is idle in state(s) 0
    aux is idle in state(s) 0
    daemon is idle in state(s) 0
    queue is idle in state(s) 0
    lcd is idle in state(s) 0
    autopause is idle in state(s) 0
    Code queue is empty.
    === Network ===
    Slowest loop: 472.37ms; fastest: 0.02ms
    Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
    HTTP sessions: 1 of 8
    Interface state 5, link 100Mbps full duplex


  • administrators

    That's the first time I have seen a watchdog reset on a Maestro. Some questions:

    • What are you using to home Z: an endstop switch, or a Z probe? What type of switch or probe?
    • Does it finish the homing or bed probing move (so that the endstop switch or Z probe has triggered) and then reset, or reset before the homing move is complete?
    • Please share your config.g, homez.g and homeall.g files.


  • I use an optical switch. It doesn't finish. It will start to move and after .25sec just reboot. Also, I'm getting random slackness in the Z. I just was moving the axis and the bed fell. After that happens, all axis un-home. It's bizarre.

    4:38:25 PMM122
    === Diagnostics ===
    RepRapFirmware for Duet 2 Maestro version 2.02RC2(RTOS) running on Duet Maestro 1.0
    Board ID: 08DGM-95762-FD3TD-6J1F2-3SW6M-T9AHG
    Used output buffers: 3 of 20 (16 max)
    === RTOS ===
    Static ram: 22452
    Dynamic ram: 94812 of which 0 recycled
    Exception stack ram used: 228
    Never used ram: 13580
    Tasks: NETWORK(ready,532) HEAT(blocked,1320) MAIN(running,3636)
    Owned mutexes:
    === Platform ===
    Last reset 00:00:10 ago, cause: watchdog
    Last software reset time unknown, reason: User, spinning module GCodes, available RAM 13580 bytes (slot 1)
    Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0400f000 BFAR 0xe000ed38 SP 0xffffffff Task 0x4e49414d
    Error status: 0
    Free file entries: 9
    SD card 0 detected, interface speed: 15.0MBytes/sec
    SD card longest block write time: 2.8ms, max retries 0
    MCU temperature: min 41.6, current 41.7, max 42.1
    Supply voltage: min 24.0, current 24.0, max 24.1, under voltage events: 0, over voltage events: 0
    Driver 0: standstill, read errors 0, write errors 1, ifcount 60, reads 372, timeouts 0
    Driver 1: standstill, read errors 0, write errors 1, ifcount 60, reads 372, timeouts 0
    Driver 2: standstill, read errors 0, write errors 1, ifcount 71, reads 372, timeouts 0
    Driver 3: standstill, read errors 0, write errors 1, ifcount 45, reads 372, timeouts 0
    Driver 4: standstill, read errors 0, write errors 1, ifcount 34, reads 372, timeouts 0
    Driver 5: ok, read errors 0, write errors 0, ifcount 0, reads 0, timeouts 380
    Driver 6: ok, read errors 0, write errors 0, ifcount 0, reads 0, timeouts 379
    Date/time: 1970-01-01 00:00:00
    Slowest loop: 4.98ms; fastest: 0.06ms
    === Move ===
    Hiccups: 0, StepErrors: 0, LaErrors: 0, FreeDm: 240, MinFreeDm: 240, MaxWait: 0ms, Underruns: 0, 0
    Scheduled moves: 0, completed moves: 0
    Bed compensation in use: mesh
    Bed probe heights: 0.000 0.000 0.000 0.000 0.000
    === Heat ===
    Bed heaters = 0, chamberHeaters = -1 -1
    Heater 1 is on, I-accum = 0.0
    === GCodes ===
    Segments left: 0
    Stack records: 2 allocated, 0 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
    serial is idle in state(s) 0
    aux is idle in state(s) 0
    daemon is idle in state(s) 0
    queue is idle in state(s) 0
    lcd is idle in state(s) 0
    autopause is idle in state(s) 0
    Code queue is empty.
    === Network ===
    Slowest loop: 8.15ms; fastest: 0.02ms
    Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
    HTTP sessions: 1 of 8
    Interface state 5, link 100Mbps full duplex


    M929 S1 P"log.txt"

    ; CONFIGURATION FILE for Duet Maestro
    ; K'Tana Nozzle

    ; Executed by the firmware on start-up

    ; Headers within parenthesis are headings in Duet3D documentation=https://duet3d.com/wiki/Configuring_RepRapFirmware_for_a_Cartesian_printer
    ; Visit https://reprap.org/wiki/G-code for an explanation of G-code commands

    ; --- SECTION: GENERAL PREFERENCES ( ) ---

    M564 S1 H1 ; Enables Homing Requirement For Motor Activation and set axes limits

    ; --- SECTION: Z-PROBE & MESH COMPENSATION ---

    M98 Pmachine_zprobe.g ; configure the z probe

    M98 Pmachine_bedmesh.g ; configure the bed mesh

    G29 S1 ; Load heightmap after power cycle

    ; --- SECTION: DRIVES (MOVEMENT SECTION) & ENDSTOPS ---

    M667 S1 ; Enable coreXY mode
    M569 P0 D3 S0 V15000; Drive 0 stealthchop, goes forwards, CoreXY_1
    M569 P1 D3 S1 V15000; Drive 1 stealthchop, goes forwards, CoreXY_2
    M569 P2 D3 S0 V1500; Drive 2 stealthchop, goes forwards, Z Moto
    M569 P3 D3 S0 V1; Drive 3 stealthchop, goes forward, Left Extruder
    M569 P4 D3 S1 V4500; Drive 4 stealthchop, goes reverse, Right Extruder

    M98 Pmachine_endstoptypes.g ; set endstop types
    M98 Pmachine_steppercurrent.g ; set stepper currents
    M98 Pmachine_stepperspeed.g ; set stepper speeds
    M98 Pmachine_axisdimension.g ; configure the axes dimensions
    M98 Pmachine_axissteps.g ; configure the axes steps per mm
    M98 Pmachine_extruderstep.g ; configure the extruder steps
    G21 ; Work in millimetres
    G90 ; Set to absolute coordinates...
    M84 S1 ; Set idle timeout

    ; --- SECTION: HEATERS, BED & THERMISTOR ---
    ; H0 is bed
    ; H1 is left heater
    ; H2 is right heater

    M570 H0 P25 T30 ; Allow heater to be off by as much as 30C for 25 seconds
    M570 H1 P15 T30 ; Allow heater to be off by as much as 30C for 15 seconds
    M570 H2 P15 T30 ; Allow heater to be off by as much as 30C for 15 seconds
    M305 P0 T100000 B4138 C0 R2200 ; Set thermistor + ADC parameters for heater 0, For heated Bed thermistor
    ;M305 P1 X501 R2200 ; Define left side extruder PT1000
    M305 P1 T100000 B4725 C7.06e-8 ; Define left side extruder PT1000
    ;M305 P2 X502 R2200 ; Define right side extruder PT1000
    M305 P2 T100000 B4725 C7.06e-8 ; Define left side extruder PT1000

    M307 H0 A73 C548.9 D8.3 S1.00 V23.7 B0 ; Forcing heated bed PID control after power-cycle. Basic bed heating auto-tune
    M307 H1 A296.6 C199.4 D9.1 S1 V23.8 B0 ; Set PID values use M303 auto-tune calibration settings
    M307 H2 A352.8 C93.5 D4.9 S1 V24.1 B0 ; Set PID values use M303 auto-tune calibration settings
    M302 P1 ; Allow Cold extrudes
    M98 Pmachine_maxtemp.g ; set bed and extruder max temperatures

    ; --- SECTION: FANS ( ) ---

    M106 P0 S0.0 I0 H-1 L0.3 Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off, Minimum fan value 0.3, Speed 100%
    M106 P1 S0 I0 F250 H-1 L0.3 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off, Minimum fan value 0.3, Speed 100%
    M106 P2 S0 I0 2504 H-1 L0.3 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off, Minimum fan value 0.3, Speed 100%

    ; --- SECTION: TOOLS ( ) ---

    ; Comment: Remember! H0 is the heated bed!
    ; Comment: D0 is the first driver after movement (X, Y and Z) drives, which is left extruder
    ; D1 is right extruder

    M98 Pmachine_ktana_tools.g ; Define ktana tools

    T0 ; Automatic tool select

    ; --- SECTION: NETWORKS (PROLOGUE & COMMUNCATIONS SECTION) ---
    M98 Pmachine_access.g ; set machine name and IP
    M586 P0 S1 ; Enable HTTP
    M586 P1 S0 ; Disable FTP
    M586 P2 S0 ; Disable Telnet

    ; --- SECTION: MISCELLANEOUS ---

    M572 D0:1 S0.03 ; Extruder Pressure Advance



  • Also, FWIW, I just added a 1mm move to all of the homing routines that runs very slowly. I'd like to try going back to all stealthchop for the quietness.



  • Also, seems like 1/256 microstepping causes this, if I change it to 1/32, seems to work better.



  • Scratch that. 1/32 stepping didn't help. just lost another print


  • administrators

    Two known issues may be relevant:

    • In Stealthchop mode, if the Z axis stalls then the bed may drop if it uses a belt-driven Z axis. Solutions are to set the Z motor to spread cycle mode, or to use a very low V value (e.g. V1) in the M569 command for the Z motor.

    • If you use the 12864 display to show the files on the SD card, and you also use the network interface or list SD card files over the USB interface, then a deadlock occurs. This causes the network to keep disconnecting, and might cause other symptoms such as the watchdog timeout that occurred to you. For now, don't use the 12864 display to show the SD files if you will be using the network interface or sending M20 from USB. This is fixed in 2.02RC3 which I hope to release later today.



  • @dc42

    I'm using dual motors on linear rails and lead screws.

    Seems like setting the microsteps to 1/256 was the culprit. Had to go down to 1/32 to solidify everything.


 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.