Warning: Controller has been rest



  • This is a random recurring problem i have with my Duet 3 running in SBC mode with an 4gb RPI 4 and a sandisk extreme sd card..

    Luckily this time it happened right after i started the print, but sometimes it can take 2-3h and it resets the controller and the print is lost..

    I have tried with fw 3.1.1, fw 3.2-beta 2. i have reinstalled the duetpi on a new sd card.
    but still this problem persists.

    Some help here is greatly appreciated 🙂

    Error message at console in the web controller..
    11/3/2020, 2:46:52 AM Warning: Controller has been reset

    And from my DCS log on the rpi..

    DuetControlServer[20252]: [warn] Restarting transfer because a bad data response was received (0x00000004)
    DuetControlServer[20252]: [warn] Bad header checksum (expected 0x0000, got 0x1890)
    DuetControlServer[20252]: [warn] Bad header checksum (expected 0x0000, got 0x1890)
    DuetControlServer[20252]: [warn] Bad header checksum (expected 0x0000, got 0x1890)
    DuetControlServer[20252]: [warn] Restarting transfer because the number of maximum retries has been exceeded
    DuetControlServer[20252]: [warn] Controller has been reset
    DuetControlServer[20252]: [info] Aborted job file
    DuetControlServer[20252]: [warn] File: Out-of-order reply: ''
    DuetControlServer[20252]: [info] Cancelled printing file 0:/gcodes/Cable chain V-Cast/TBN3D_20x10_Lock_21_pieces.gcode, print time was 0h 4m

    m122
    === Diagnostics ===
    RepRapFirmware for Duet 3 MB6HC version 3.1.1 running on Duet 3 MB6HC v1.01 or later (SBC mode)
    Board ID: 08DJM-956BA-NA3TN-6JKDA-3SN6N-9A86U
    Used output buffers: 1 of 40 (12 max)
    === RTOS ===
    Static ram: 154604
    Dynamic ram: 163672 of which 44 recycled
    Exception stack ram used: 528
    Never used ram: 74368
    Tasks: NETWORK(ready,1972) HEAT(blocked,1188) CanReceiv(suspended,3820) CanSender(suspended,1420) CanClock(blocked,1436) TMC(blocked,68) MAIN(running,4928) IDLE(ready,76)
    Owned mutexes:
    === Platform ===
    Last reset 06:12:33 ago, cause: power up
    Last software reset at 2020-11-02 20:43, reason: Memory protection fault, spinning module GCodes, available RAM 74288 bytes (slot 1)
    Software reset code 0x4163 HFSR 0x00000000 CFSR 0x00000082 ICSR 0x0444a804 BFAR 0xffff00c0 SP 0x20417b4c Task MAIN
    Stack: 0043f98d 0043f8da 610f0000 2042be38 00000001 a5a5a5a5 0043f5a3 00000000 00000000 00000000 00000000
    Error status: 0
    MCU temperature: min 35.3, current 41.8, max 42.5
    Supply voltage: min 24.0, current 24.2, max 24.3, under voltage events: 0, over voltage events: 0, power good: yes
    12V rail voltage: min 12.1, current 12.1, max 12.2, under voltage events: 0
    Driver 0: standstill, reads 47013, writes 23 timeouts 0, SG min/max 0/1023
    Driver 1: standstill, reads 47013, writes 23 timeouts 0, SG min/max 0/576
    Driver 2: standstill, reads 47013, writes 23 timeouts 0, SG min/max 0/1023
    Driver 3: standstill, reads 47014, writes 23 timeouts 0, SG min/max 0/1023
    Driver 4: standstill, reads 47015, writes 23 timeouts 0, SG min/max 0/457
    Driver 5: standstill, reads 47024, writes 14 timeouts 0, SG min/max 0/0
    Date/time: 2020-11-03 02:56:48
    Slowest loop: 5.75ms; fastest: 0.14ms
    === Storage ===
    Free file entries: 10
    SD card 0 not detected, interface speed: 37.5MBytes/sec
    SD card longest read time 0.0ms, write time 0.0ms, max retries 0
    === Move ===
    Hiccups: 0(0), FreeDm: 375, MinFreeDm: 325, MaxWait: 520073ms
    Bed compensation in use: mesh, comp offset 0.000
    === MainDDARing ===
    Scheduled moves: 839, completed moves: 839, 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 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
    === GCodes ===
    Segments left: 0
    Movement lock held by null
    HTTP* is ready with "M122" 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
    SBC is idle in state(s) 0
    Daemon* is idle in state(s) 0
    Aux2 is idle in state(s) 0
    Autopause is idle in state(s) 0
    Code queue is empty.
    === Network ===
    Slowest loop: 1.09ms; fastest: 0.01ms
    Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions Telnet(0), 0 sessions
    HTTP sessions: 0 of 8

    • Ethernet -
      State: disabled
      Error counts: 0 0 0 0 0
      Socket states: 0 0 0 0 0 0 0 0
      === CAN ===
      Messages sent 89422, longest wait 0ms for type 0
      === Linux interface ===
      State: 0, failed transfers: 32
      Last transfer: 19ms ago
      RX/TX seq numbers: 10763/12551
      SPI underruns 10, overruns 10
      Number of disconnects: 0
      Buffer RX/TX: 0/0-0
      === Duet Control Server ===
      Duet Control Server v3.1.1
      Code buffer space: 4096
      Configured SPI speed: 8000000 Hz
      Full transfers per second: 32.72

  • Moderator

    How are you powering the Pi4?

    Ideally you'd be powering the Pi4 from it's own power supply rather than through the Duet. You can get away with that using the Pi3, but the pi4 draws more power, especially with usb peripherals connected.

    A lot of times issues can be resolved by powering the duet and pi independently.

    https://duet3d.dozuki.com/Wiki/Duet_3_Mainboard_6HC_Hardware_Overview#Section_5V



  • @Phaedrux i just knew it was something i forgot to mention, even tho i was as thorough as i could.. 🙂
    of course i run the rpi4 from a rpi certified external power brick.. cant live with all the low power warnings i would have gotten in the debain interface if not.. 🙂

    So i'm pretty sure that's not the case..



  • Nov 03 04:07:07 duet3 DuetControlServer[884]: [info] Starting macro file deployprobe.g on channel File
    Nov 03 04:07:07 duet3 DuetControlServer[884]: [info] Finished macro file deployprobe.g
    Nov 03 04:07:08 duet3 DuetControlServer[884]: [info] Starting macro file retractprobe.g on channel File
    Nov 03 04:07:08 duet3 DuetControlServer[884]: [info] Finished macro file retractprobe.g
    Nov 03 04:07:09 duet3 DuetControlServer[884]: [info] Finished macro file homeall.g
    Nov 03 04:07:09 duet3 DuetControlServer[884]: [info] Height map loaded from file heightmap.csv
    Nov 03 04:09:22 duet3 DuetControlServer[884]: [warn] Restarting transfer because a bad data response was received (0x00000003)
    Nov 03 04:09:25 duet3 DuetControlServer[884]: [warn] Bad data checksum (expected 0xbf76, got 0xf115)
    Nov 03 04:11:46 duet3 DuetControlServer[884]: [warn] Bad data checksum (expected 0xb1da, got 0x3148)
    Nov 03 04:16:06 duet3 DuetControlServer[884]: [warn] Bad data checksum (expected 0x1285, got 0xeaa8)
    Nov 03 04:16:06 duet3 DuetControlServer[884]: [warn] Note: RepRapFirmware didn't receive valid data either (code 0x00000003)
    Nov 03 04:16:06 duet3 DuetControlServer[884]: [warn] Bad data checksum (expected 0x1285, got 0x6aab)
    Nov 03 04:16:06 duet3 DuetControlServer[884]: [warn] Restarting transfer because the Duet received a bad response (data response)
    Nov 03 04:16:07 duet3 DuetControlServer[884]: [warn] Restarting transfer because a bad data response was received (0xffffff7d)
    Nov 03 04:16:08 duet3 DuetControlServer[884]: [warn] Restarting transfer because a bad data response was received (0xffffff61)
    Nov 03 04:16:09 duet3 DuetControlServer[884]: [warn] Restarting transfer because a bad data response was received (0xffffff7d)
    Nov 03 04:16:10 duet3 DuetControlServer[884]: [warn] Restarting transfer because a bad header response was received (0x0000002a)
    Nov 03 04:16:48 duet3 DuetControlServer[884]: [warn] Restarting transfer because a bad data response was received (0xffffff7d)
    Nov 03 04:16:48 duet3 DuetControlServer[884]: [warn] Restarting transfer because a bad data response was received (0xffffff7d)
    Nov 03 04:16:50 duet3 DuetControlServer[884]: [warn] Restarting transfer because a bad data response was received (0x0000fc7d)
    Nov 03 04:16:50 duet3 DuetControlServer[884]: [warn] Controller has been reset
    Nov 03 04:16:50 duet3 DuetControlServer[884]: [info] Aborted job file
    Nov 03 04:16:50 duet3 DuetControlServer[884]: [info] Cancelled printing file 0:/gcodes/Cable chain V-Cast/TBN3D_20x10_Lock_21_pieces.gcode, print time was 0h 11m



  • Another failed print.. now i got this error messages...

    this time i was at fw 3.2-beta2


  • Moderator

    Can you try reflashing your Pi with the newest DuetPi image? Followed by a sudo apt-update, etc

    https://duet3d.dozuki.com/Wiki/SBC_Setup_for_Duet_3#Section_Step_1_Flash_the_image_file



  • @Phaedrux it's an option.. but only 3 days since last time i did that. and that didn't make it any better.,.
    the strange thing here is that it's so random.. been printing the same print times today. ec time it takes 5h to print.. no failure then.. and now when i moved over to print other parts the printer crashed twice during.

    by the error messages its seems like the dcs has com problems with the board.
    but it could be an sd issue so maybe 3th time is the charm for me 🙂


  • Moderator

    @TBN3DMaker said in Warning: Controller has been rest:

    it's an option.. but only 3 days since last time i did that. and that didn't make it any better.,.

    Ok, in that case don't bother. I thought maybe it was a very old version.

    Can you share your config.g so we can see what's in it?

    Also send M98 P"config.g" to see if there are any syntax errors reported.



  • @Phaedrux
    later.. just crashed the whole system when downgrading to 3.1.1 again..
    i think i have to fight with bossa to get the fw installed again..



  • @Phaedrux
    Ended in a fatal error! no connection to the board anymore..

    is there a fast way to completly remove all of duetpi's software from the rpi without have to do a complere new image burn..

    dpkg: warning: unable to delete old directory '/opt/dsf/dwc/js': Directory not empty
    dpkg: warning: unable to delete old directory '/opt/dsf/dwc/fonts': Directory not empty
    dpkg: warning: unable to delete old directory '/opt/dsf/dwc/css': Directory not empty
    dpkg: warning: unable to delete old directory '/opt/dsf/dwc': Directory not empty
    dpkg: warning: downgrading duetsoftwareframework from 3.2.0-beta2 to 3.1.1
    Preparing to unpack .../5-duetsoftwareframework_3.1.1_armhf.deb ...
    Unpacking duetsoftwareframework (3.1.1) over (3.2.0-beta2) ...
    To delete the "dsf" user run as root: userdel --force dsf
    dpkg: warning: downgrading duetsd from 1.1.0 to 1.0.6
    Preparing to unpack .../6-duetsd_1.0.6_all.deb ...
    Unpacking duetsd (1.0.6) over (1.1.0) ...
    dpkg: warning: unable to delete old directory '/opt/dsf/sd/menu': Directory not empty
    dpkg: warning: downgrading duetruntime from 3.2.0-beta2 to 3.1.1
    Preparing to unpack .../7-duetruntime_3.1.1_armhf.deb ...
    Unpacking duetruntime (3.1.1) over (3.2.0-beta2) ...
    Setting up duetruntime (3.1.1) ...
    Setting up duetwebcontrol (3.1.1) ...
    Setting up duetcontrolserver (3.1.1) ...
    Installing new version of config file /opt/dsf/conf/config.json ...
    Setting up duettools (3.1.1) ...
    Setting up duetwebserver (3.1.0) ...
    Setting up duetsd (1.0.6) ...
    Setting up reprapfirmware (3.1.1-1) ...
    [fatal] Could not connect to Duet (Board is not available (no header))
    Setting up duetsoftwareframework (3.1.1) ...
    pi@duet3:~ $



  • [0_1604379065578_TBNconfig.g](Uploading 100%) @Phaedrux said in Warning: Controller has been rest:

    @TBN3DMaker said in Warning: Controller has been rest:

    it's an option.. but only 3 days since last time i did that. and that didn't make it any better.,.

    Ok, in that case don't bother. I thought maybe it was a very old version.

    Can you share your config.g so we can see what's in it?

    Also send M98 P"config.g" to see if there are any syntax errors reported.

    11/3/2020, 5:49:43 AM M98 P"config.g"
    HTTP is enabled on port 80
    FTP is disabled
    TELNET is disabled
    Warning: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 379C
    Warning: Heater 1 appears to be over-powered. If left on at full power, its temperature is predicted to reach 606C
    Warning: Heater 2 appears to be over-powered. If left on at full power, its temperature is predicted to reach 871C[0_1604379029712_config (11).g](Uploading 100%)

    V-Cast IDEX
    M98 P"config.g"
    Status
    Idle
    Mode: FFF
    Tool Position
    X
    0.0
    Y
    0.0
    Z
    0.00
    U
    0.0
    Extruder Drives
    Drive 0
    0.0
    Drive 1
    0.0
    Speeds
    Requested Speed
    0 mm/s
    Top Speed
    0 mm/s
    Sensors
    Vin
    24.2 V
    V12
    12.1 V
    MCU Temperature
    37.7 C
    Z-Probe
    1000
    Tools
    Extra
    Control All
    Tool Heater Current Active Standby
    E0
    T0 - Load Filament Extruder L
    off 26.1 C
    0
    0
    E1
    T1 - Load Filament Extruder R
    off 25.6 C
    0
    0
    Bed Bed
    off 26.5 C
    0
    0
    Temperature Chart
    System Directory
    0:/sys/config.g
    ; Configuration file for Duet 3 (firmware version 3) TBN3DMaker V-cast IDEX Machine
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.4 on Fri Oct 09 2020 21:11:10 GMT+0200 (Central European Summer Time)

    ; General preferences
    G21 ; Work in millimeters
    G90 ; send absolute coordinates...
    M83 ; ...but relative extruder moves

    ;M575 P1 B57600 S1 ; PanelDue
    ;M555 P2 ; Set output to look like Marlin (P2=Marlin P1=RepRapFirmware)

    M550 P"V-Cast IDEX" ; set printer name

    ; Network
    M552 P0.0.0.0 S1 ; enable network and acquire dynamic address via DHCP
    M586 P0 S1 ; enable HTTP
    M586 P1 S0 ; disable FTP
    M586 P2 S0 ; disable Telnet

    ;Axis and motor config MAPPING/DRIVERS
    M584 X0.0 U0.1 Y0.2 Z0.3 E0.4:0.5 ; drive mapping IDEX at DRIVER 0.1
    M569 P0.0 S0 ; physical drive 0.0 goes Backwards X1 mapped as X0.0
    M569 P0.1 S0 ; physical drive 0.1 goes Backwards X2 Mapped as U0.1
    M569 P0.2 S0 ; physical drive 0.2 goes Backwards Y mapped as Y0.2
    M569 P0.3 S1 ; physical drive 0.3 goes forwards Z mapped as Z0.3
    M569 P0.4 S0 ; physical drive 0.4 goes forwards Extruder 0 mapped as E0.4
    M569 P0.5 S0 ; physical drive 0.5 goes forwards Extruder 1 mapped as E0.5

    ; MICRO STEPPING/E-STEPS/CURRENT
    M350 X16 Y16 U16 Z16 E16:16 I1 ; configure microstepping with interpolation
    M906 X800 Y800 U800 Z2000 E800:700 I30 ; set motor currents (mA) and motor idle factor in per cent
    M92 X80.00 Y80.00 U80.00 Z400.00 E830.00:415.00 ; set steps per mm

    ; MACHINE LIMITS
    M201 X500.00 Y500.00 U500.00 Z20.00 E250.00:250.00 ; set accelerations (mm/s^2)
    M203 X12000.00 Y12000.00 U12000.00 Z800.00 E1200.00:1200.00 ; set maximum speeds (mm/min)

    M204 P5000 T5000 ;set max travel and print acclerations

    ;M566 X900.00 Y900.00 U900.00 Z12.00 E120.00:120.00 ; set maximum instantaneous speed changes (mm/min) (JERK speed mm/minute)
    ;M205 X8 Y8 Z8 U8 E:2.0:2.0
    ;M205 X8 Y8 Z8 U8 E :2:2

    ;M208 X-51.8 Y-26.00 U0 Z0 S1 ; set axis min
    M208 X-51.8 Y0 U10 Z0 S1 ; set axis min
    M208 X298 Y320 Z300 U361.20 S0

    ;M208 X-51.80 Y-26.00 Z0 U0 S1 ; Set axes minima
    ;M208 X310 Y320 Z300 U361.20 S0

    M84 S30 ; Set idle timeout

    ;Endstops
    M574 X1 S1 P"!io0.in" ; configure active-high endstop for low end on X via pin io0.in
    M574 U2 S1 P"!io1.in" ; configure active-high endstop for low end on U via pin io1.in
    M574 Y1 S1 P"!io2.in" ; configure active-high endstop for low end on Y via pin io2.in

    M574 Z1 S2 ; Define Z endstop at a probe

    ;Z-Probe on IO7 pin
    M950 S0 C"^io7.out"
    ;M558 P5 C"io7.in" H2.5 F240 T4000 A5 ; Set Z-Probe to type 5 for fast BLTouch mode, 2.5mm dive at 4mm/s 5 attempts
    M558 P9 C"^io7.in" H3.5 F240 T4000 A1 S0.1 ; Set Z-Probe to type 5 for fast BLTouch mode, 2.5mm dive at 4mm/s 5 attempts
    ;G31 P25 X-29.75 Y-14.50 Z3.75 ; Set Z probe trigger value, nozzle offsets, and trigger height
    G31 P500 X-29.75 Y-14.50 Z3.7 ; Set Z probe trigger value, nozzle offsets, and trigger height
    ;M557 X25:265 Y25:285 P10 ; Define a 10x10 bed mesh

    ; Heaters / Fans /Tools

    ;BED
    M308 S0 P"temp0" Y"thermistor" T100000 B3950 R2200 A"Bed" ; configure sensor 0 as thermistor on pin temp0
    M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0
    ;M307 H0 B1 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit
    M307 H0 A354.8 C449.0 D2.6 S1.0 V24.2 B0
    M140 H0 ; map heated bed to heater 0
    M143 H0 S120 ; set temperature limit for heater 0 to 120C

    ;EXTRUDER 0 X******
    ; TOOL E0 X
    M563 P0 D0 H1 F0 S"E0" ; define tool 0
    G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
    G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C

    ;HEATER/TEMP
    M308 S1 P"temp1" Y"thermistor" T100000 B4725 C7.06e-8 A"Extruder L" ; configure sensor 1 as thermistor on pin temp1 (E3D Thermistor)
    M950 H1 C"out1" T1 ; create nozzle heater output on out1 and map it to sensor 1
    ;M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
    ;M307 H1 A577.3 C154.8 D5.6 S1.0 V24.1 B0
    M307 H1 A581.6 C182.1 D5.2 S1.0 V24.1 B0

    M143 H1 S300
    M570 S360 ; Heater fault detection allow 1 minute

    ;Fans
    M950 F0 C"out4" Q500 ; create fan 0 on pin out4 and set its frequency
    M106 P0 C"E0 Part Cooling" S0 H-1 ; set fan 0 name and value. Thermostatic control is turned off
    M950 F1 C"out7" Q500 ; create fan 1 on pin out7 and set its frequency
    M106 P1 C"E0 Heat Brake" S1 H1 T45 ; set fan 1 name and value. Thermostatic control is turned on

    ;EXTRUDER 1 U******
    ;TOOL 1 U
    M563 P1 D1 H2 F2 X3 S"E1" ; tool 1 uses extruder 1 and heater 2 and maps X to U, use fan 2 as the print cooling fan
    ;G10 P1 Y-0.55 Z-0.1 U-5.9 ; set tool 1 axis offsets
    ;G10 P1 Y-0.54 Z-0.1 U-5.8 ; set tool 1 axis offsets
    ;G10 P1 Y-0.53 Z-0.1 U-5.8 ; set tool 1 axis offsets
    ;G10 P1 Y-0.4 Z-0.1 U-5.6 ; set tool 1 axis offsets U/Y Negative number = printhead more towards right/Towards Back of the plate
    ;G10 P1 Y-0.35 Z-0.1 U-5.55 ; set tool 1 axis offsets U/Y Negative number = printhead more towards right/Towards Back of the plate
    ;G10 P1 Y-0.42 Z-0.1 U-5.62 ; set tool 1 axis offsets U/Y Negative number = printhead more towards right/Towards Back of the plate
    G10 P1 Y-0.43 Z-0.07 U-5.62 ; set tool 1 axis offsets U/Y Negative number = printhead more towards right/Towards Back of the plate
    G10 P1 S0 R0 ; set initial tool 1 active and standby temperatures to 0C

    ;HEATER/TEMP
    M308 S2 P"temp2" Y"thermistor" T100000 B4725 C7.06e-8 A"Extruder R" ; configure sensor 2 as thermistor on pin temp2 (E3D Thermistor)
    M950 H2 C"out2" T2 ; create nozzle heater output on out2 and map it to sensor 2
    ;M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
    ;M307 H2 A890.6 C188.9 D6.2 S1.0 V24.1 B0
    M307 H2 A846.8 C209.8 D5.6 S1.0 V24.1 B0
    M143 H2 S300

    ;Fans
    M950 F2 C"out5" Q500 ; create fan 2 on pin out5 and set its frequency
    M106 P2 C"E1 Part Cooling" S0 H-1 ; set fan 2 name and value. Thermostatic control is turned off
    M950 F3 C"out8" Q500 ; create fan 3 on pin out8 and set its frequency
    M106 P3 C"E1 HeatBreake" S1 H2 T45 ; set fan 3 name and value. Thermostatic control is turned on

    ; Tools / EXTRUDERS

    ; Custom settings are not defined

    ;m404 N1.75 D0.4



  • @Phaedrux but i managed to reset the fw. and now i'm on standalone mode.. just to see if the problem still exists..


  • Moderator

    @TBN3DMaker said in Warning: Controller has been rest:

    i'm on standalone mode.. just to see if the problem still exists.

    That would have been my next suggestion.


Log in to reply