Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    3.3B3 certain lines cause firmware reset

    Scheduled Pinned Locked Moved
    Beta Firmware
    8
    25
    1.3k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Alex.crundefined
      Alex.cr
      last edited by Alex.cr

      Potential bug report for 3.3B3.
      Running 3.3B3 on 6HC+3HC+SBC.
      The following lines in a macro will cause the firmware to reset as if M999 was called.

      if move.axes.0.machinePosition != 0 | move.axes.1.machinePosition != 0
      	G91
      	G1 Z10.0 F20000
      

      If I comment out these lines the macro runs no problem.

      I believe this is similar problem to what @deckingman mentioned in the main 3.3B3 release thread.

      If there is anything else you would like me to try, let me know.

      Voron2.4/Duet3 SBC+6HC+3HC+1LC+1HCL(x2) - Delta/Duet2 Wifi - CubePro/Duet2 Wifi+Duex5 - Laser/Duet3 Mini5+ - Cel Robox - U̶p̶3̶0̶0̶+/D̶u̶e̶t̶3̶ ̶6̶H̶C̶+̶LC1̶ - F̶T̶-̶5̶/̶D̶u̶e̶t̶2̶ ̶W̶i̶f̶i̶ - S̶o̶l̶i̶d̶o̶o̶d̶l̶e̶

      DaveAundefined dc42undefined 2 Replies Last reply Reply Quote 1
      • DaveAundefined
        DaveA @Alex.cr
        last edited by

        @alex-cr I'm just getting used to working with the object model so I may be out or order but I think the lines should be:

        if move.axes[0].machinePosition != 0 | move.axes[1].machinePosition != 0
        G91
        G1 Z10.0 F20000

        The object "axes" is an array so you need to use an array index to access the elements.

        Alex.crundefined 1 Reply Last reply Reply Quote 0
        • Alex.crundefined
          Alex.cr @DaveA
          last edited by Alex.cr

          @davea

          Nice catch @DaveA! That fixed it.

          I guess now the only question is to whether that type of failure is supposed to trigger a firmware reset.

          Anyone have any ideas?

          Voron2.4/Duet3 SBC+6HC+3HC+1LC+1HCL(x2) - Delta/Duet2 Wifi - CubePro/Duet2 Wifi+Duex5 - Laser/Duet3 Mini5+ - Cel Robox - U̶p̶3̶0̶0̶+/D̶u̶e̶t̶3̶ ̶6̶H̶C̶+̶LC1̶ - F̶T̶-̶5̶/̶D̶u̶e̶t̶2̶ ̶W̶i̶f̶i̶ - S̶o̶l̶i̶d̶o̶o̶d̶l̶e̶

          DaveAundefined 1 Reply Last reply Reply Quote 0
          • DaveAundefined
            DaveA @Alex.cr
            last edited by

            @alex-cr Maybe it's something in the greater context. If I create a macro using just the original 3 lines and run it I just get an error message but no reset.
            This is on a cartesian with Duet Maestro and 3.3b3. My delta with a Duet2 Ethernet is printing so I'm not going to try it right now.

            gloomyandyundefined 1 Reply Last reply Reply Quote 0
            • gloomyandyundefined
              gloomyandy @DaveA
              last edited by

              @davea Are you running SBC? It could be a RRF/DSF difference?

              DaveAundefined 1 Reply Last reply Reply Quote 0
              • deckingmanundefined
                deckingman
                last edited by

                As my name was mentioned, the fault I'm experiencing is consistent in that reverting back to RRF3.2 fixes in and "upgrading to 3.3. causes it. I've repeated this a few times. There appears to be a reset of the main board (but not the expansion boards) which is bought about by running a macro which uses M116 to wait for heaters to attain their set temperatures. In my case, no conditional gcode is used in this particular macro and the machine is in stand alone mode (no SBC) running a 6HC main board and 3 expansion boards. So maybe a different fault to the OP.

                Ian
                https://somei3deas.wordpress.com/
                https://www.youtube.com/@deckingman

                1 Reply Last reply Reply Quote 0
                • DaveAundefined
                  DaveA @gloomyandy
                  last edited by

                  @gloomyandy Nope, just a single Duet Maestro with no other expansion other than a 12864 display connected.

                  gloomyandyundefined 1 Reply Last reply Reply Quote 0
                  • gloomyandyundefined
                    gloomyandy @DaveA
                    last edited by

                    @davea I think @Alex-cr said that he was using an SBC, so it could be why you have not been able to reproduce the problem (the handling of conditional gcode is different when using the SBC).

                    1 Reply Last reply Reply Quote 0
                    • dc42undefined
                      dc42 administrators @Alex.cr
                      last edited by

                      @alex-cr please run M122 after it resets and post the response here.

                      Duet WiFi hardware designer and firmware engineer
                      Please do not ask me for Duet support via PM or email, use the forum
                      http://www.escher3d.com, https://miscsolutions.wordpress.com

                      Alex.crundefined 1 Reply Last reply Reply Quote 0
                      • Alex.crundefined
                        Alex.cr @dc42
                        last edited by

                        @dc42

                        M122 after the reset.

                        m122
                        === Diagnostics ===
                        RepRapFirmware for Duet 3 MB6HC version 3.3beta3 (2021-04-22 16:28:03) running on Duet 3 MB6HC v0.6 or 1.0 (SBC mode)
                        Board ID: 08DJM-956L2-G43S4-6J1FD-3SJ6T-TB6QH
                        Used output buffers: 1 of 40 (10 max)
                        === RTOS ===
                        Static ram: 149960
                        Dynamic ram: 62512 of which 0 recycled
                        Never used RAM 141720, free system stack 200 words
                        Tasks: SENSORS(delaying,0.0%,30) Linux(ready,8.0%,58) HEAT(delaying,0.0%,281) Move(notifyWait,0.0%,150) CanReceiv(notifyWait,0.0%,798) CanSender(notifyWait,0.0%,373) CanClock(delaying,0.0%,353) TMC(notifyWait,7.0%,93) MAIN(running,83.6%,924) IDLE(ready,1.3%,19), total 100.0%
                        Owned mutexes: HTTP(MAIN)
                        === Platform ===
                        Last reset 00:00:09 ago, cause: software
                        Last software reset at 2021-04-24 16:59, reason: MemoryProtectionFault mmarValid daccViol, none spinning, available RAM 137992, slot 0
                        Software reset code 0x4172 HFSR 0x00000000 CFSR 0x00000082 ICSR 0x00400004 BFAR 0x00000000 SP 0x2045ff60 Task  Freestk 46595 bad marker
                        Stack: 297c0c72 297c0c2b 204326f8 00000000 00000000 0047b187 0047b19e 8100000e 00000000 20423c50 01144dd9 204248a0 00000000 20420084 00000000 20420088 01144dd9 00000004 00000001 204240b4 204240dc 004787b9 00000000 00000001 00000000 2042489c 00000000
                        Error status: 0x00
                        Aux0 errors 0,0,0
                        Aux1 errors 0,0,0
                        Step timer max interval 129
                        MCU temperature: min 25.7, current 25.8, max 39.5
                        Supply voltage: min 24.0, current 24.1, max 24.1, 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
                        Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0
                        Driver 0: position 0, standstill, reads 51264, writes 17 timeouts 0, SG min/max 0/0
                        Driver 1: position 0, standstill, reads 51264, writes 17 timeouts 0, SG min/max 0/0
                        Driver 2: position 0, standstill, reads 51265, writes 17 timeouts 0, SG min/max 0/0
                        Driver 3: position 0, standstill, reads 51265, writes 17 timeouts 0, SG min/max 0/0
                        Driver 4: position 0, standstill, reads 51265, writes 17 timeouts 0, SG min/max 0/0
                        Driver 5: position 0, standstill, reads 51265, writes 17 timeouts 0, SG min/max 0/0
                        Date/time: 2021-04-24 16:59:41
                        Slowest loop: 0.35ms; fastest: 0.05ms
                        === 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 ===
                        DMs created 125, 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 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
                        Heater 1 is on, I-accum = 0.0
                        === GCodes ===
                        Segments left: 0
                        Movement lock held by null
                        HTTP* is doing "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.
                        === Filament sensors ===
                        Extruder 0 sensor: no data received
                        === CAN ===
                        Messages queued 92, send timeouts 0, received 141, lost 0, longest wait 1ms for reply type 6043, peak Tx sync delay 4, free buffers 49 (min 48)
                        === SBC interface ===
                        State: 4, failed transfers: 0
                        Last transfer: 1ms ago
                        RX/TX seq numbers: 38230/389
                        SPI underruns 0, overruns 0
                        Number of disconnects: 0, IAP RAM available 0x2cf4c
                        Buffer RX/TX: 0/0-0
                        === Duet Control Server ===
                        Duet Control Server v3.3-b3
                        Code buffer space: 4096
                        Configured SPI speed: 8000000 Hz
                        Full transfers per second: 38.29
                        Codes per second: 5.51
                        Maximum length of RX/TX data transfers: 3304/1492
                        

                        Voron2.4/Duet3 SBC+6HC+3HC+1LC+1HCL(x2) - Delta/Duet2 Wifi - CubePro/Duet2 Wifi+Duex5 - Laser/Duet3 Mini5+ - Cel Robox - U̶p̶3̶0̶0̶+/D̶u̶e̶t̶3̶ ̶6̶H̶C̶+̶LC1̶ - F̶T̶-̶5̶/̶D̶u̶e̶t̶2̶ ̶W̶i̶f̶i̶ - S̶o̶l̶i̶d̶o̶o̶d̶l̶e̶

                        dc42undefined 1 Reply Last reply Reply Quote 0
                        • dc42undefined
                          dc42 administrators @Alex.cr
                          last edited by

                          @alex-cr thanks, Please try the new firmware binary at https://www.dropbox.com/sh/6fdfjn7fpjnk3vv/AADWZIXsKn5B_GsTauCx8Nsna?dl=0. Ignore the .map file.

                          Duet WiFi hardware designer and firmware engineer
                          Please do not ask me for Duet support via PM or email, use the forum
                          http://www.escher3d.com, https://miscsolutions.wordpress.com

                          Alex.crundefined 2 Replies Last reply Reply Quote 1
                          • Alex.crundefined
                            Alex.cr @dc42
                            last edited by

                            @dc42

                            Still have the controller reset after using the improper code.

                            M122 with the +1 firmware below:

                            m122
                            === Diagnostics ===
                            RepRapFirmware for Duet 3 MB6HC version 3.3beta3+1 (2021-04-25 09:09:09) running on Duet 3 MB6HC v0.6 or 1.0 (SBC mode)
                            Board ID: 08DJM-956L2-G43S4-6J1FD-3SJ6T-TB6QH
                            Used output buffers: 1 of 40 (10 max)
                            === RTOS ===
                            Static ram: 150760
                            Dynamic ram: 62840 of which 0 recycled
                            Never used RAM 137736, free system stack 200 words
                            Tasks: SENSORS(delaying,0.0%,80) Linux(ready,7.2%,22) HEAT(delaying,0.0%,325) Move(notifyWait,0.0%,350) CanReceiv(notifyWait,0.0%,891) CanSender(notifyWait,0.0%,373) CanClock(delaying,0.0%,353) TMC(notifyWait,7.2%,93) MAIN(running,84.6%,924) IDLE(ready,0.8%,19), total 100.0%
                            Owned mutexes: HTTP(MAIN)
                            === Platform ===
                            Last reset 00:00:14 ago, cause: software
                            Last software reset at 2021-04-25 10:40, reason: StackOverflow, none spinning, available RAM 137344, slot 1
                            Software reset code 0x4112 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0040080e BFAR 0x00000000 SP 0x2045ffbc Task � Freestk 46418 bad marker
                            Stack: 20432a18 20432a4c 0047b1b9 00000000 0049d3d4 00415495 0047a829 20432a44 20424bbc 00000000 00f00000 e000e000 c0000000 00000000 0047a945 0047a6cc 21000000 ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
                            Error status: 0x00
                            Aux0 errors 0,0,0
                            Aux1 errors 0,0,0
                            Step timer max interval 127
                            MCU temperature: min 23.3, current 23.8, max 37.1
                            Supply voltage: min 24.0, current 24.1, max 24.1, 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
                            Heap OK, handles allocated/used 99/3, heap memory allocated/used/recyclable 2048/62/10, gc cycles 0
                            Driver 0: position 0, standstill, reads 14157, writes 17 timeouts 0, SG min/max 0/0
                            Driver 1: position 0, standstill, reads 14157, writes 17 timeouts 0, SG min/max 0/0
                            Driver 2: position 0, standstill, reads 14158, writes 17 timeouts 0, SG min/max 0/0
                            Driver 3: position 0, standstill, reads 14158, writes 17 timeouts 0, SG min/max 0/0
                            Driver 4: position 0, standstill, reads 14158, writes 17 timeouts 0, SG min/max 0/0
                            Driver 5: position 0, standstill, reads 14158, writes 17 timeouts 0, SG min/max 0/0
                            Date/time: 2021-04-25 10:40:54
                            Slowest loop: 0.44ms; fastest: 0.06ms
                            === 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 ===
                            DMs created 125, 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 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
                            Heater 1 is on, I-accum = 0.0
                            === GCodes ===
                            Segments left: 0
                            Movement lock held by null
                            HTTP* is doing "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.
                            === Filament sensors ===
                            Extruder 0 sensor: no data received
                            === CAN ===
                            Messages queued 137, send timeouts 0, received 204, lost 0, longest wait 1ms for reply type 6042, peak Tx sync delay 4, free buffers 49 (min 48)
                            === SBC interface ===
                            State: 4, failed transfers: 0
                            Last transfer: 2ms ago
                            RX/TX seq numbers: 4674/575
                            SPI underruns 0, overruns 0
                            Number of disconnects: 0, IAP RAM available 0x2cc2c
                            Buffer RX/TX: 0/0-0
                            === Duet Control Server ===
                            Duet Control Server v3.3-b3
                            Code buffer space: 4096
                            Configured SPI speed: 8000000 Hz
                            Full transfers per second: 32.68
                            Codes per second: 4.28
                            Maximum length of RX/TX data transfers: 3308/988
                            

                            Voron2.4/Duet3 SBC+6HC+3HC+1LC+1HCL(x2) - Delta/Duet2 Wifi - CubePro/Duet2 Wifi+Duex5 - Laser/Duet3 Mini5+ - Cel Robox - U̶p̶3̶0̶0̶+/D̶u̶e̶t̶3̶ ̶6̶H̶C̶+̶LC1̶ - F̶T̶-̶5̶/̶D̶u̶e̶t̶2̶ ̶W̶i̶f̶i̶ - S̶o̶l̶i̶d̶o̶o̶d̶l̶e̶

                            1 Reply Last reply Reply Quote 0
                            • Alex.crundefined
                              Alex.cr @dc42
                              last edited by

                              @dc42

                              I am also running into a problem with variables on the SBC controlled machine. I am not super surprised as it just got implemented. Merely documenting the issue. Everything below runs fin on a D2wifi.

                              The following line in my daemon.g also cause a firmware reset:

                              set global.printcomplete = state.upTime - global.printstoptime 
                              

                              The two global variables are defined in config.g. They show up in the object model correctly. I just cannot do math with them. I can set them without issue as follows:

                              set global.printcomplete = state.upTime
                              

                              To be clear i am still using the 3.3b3+1 firmware for this as well.

                              Voron2.4/Duet3 SBC+6HC+3HC+1LC+1HCL(x2) - Delta/Duet2 Wifi - CubePro/Duet2 Wifi+Duex5 - Laser/Duet3 Mini5+ - Cel Robox - U̶p̶3̶0̶0̶+/D̶u̶e̶t̶3̶ ̶6̶H̶C̶+̶LC1̶ - F̶T̶-̶5̶/̶D̶u̶e̶t̶2̶ ̶W̶i̶f̶i̶ - S̶o̶l̶i̶d̶o̶o̶d̶l̶e̶

                              dc42undefined 1 Reply Last reply Reply Quote 0
                              • dc42undefined
                                dc42 administrators @Alex.cr
                                last edited by

                                @alex-cr Please post your config.g file.

                                Duet WiFi hardware designer and firmware engineer
                                Please do not ask me for Duet support via PM or email, use the forum
                                http://www.escher3d.com, https://miscsolutions.wordpress.com

                                Alex.crundefined 1 Reply Last reply Reply Quote 0
                                • Alex.crundefined
                                  Alex.cr @dc42
                                  last edited by Alex.cr

                                  @dc42

                                  As requested

                                  ; Configuration file for Duet 3 (firmware version 3)
                                  ; executed by the firmware on start-up
                                  ;
                                  ;Voron 2.4 config 350x350x350mm
                                  ;Hardware: Duet3 6HC+3HC, mosquito hotend, 
                                  
                                  ; General preferences
                                  G90                                                ; send absolute coordinates...
                                  M83                                                ; ...but relative extruder moves
                                  ;M550 P"Voron"                                     ; set printer name
                                  M669 K1 										   ; switch to CoreXY mode
                                  
                                  M80										           ; turn off ATX supply for safety (and trigger button on DWC)
                                  G4 S3                                              ; wait for Canbus to stabilize 
                                  ; --- drive map ---
                                  ;    _______
                                  ;   | 3 | 4 |
                                  ;   | ----- |
                                  ;   | 2 | 5 |
                                  ;    -------
                                  ;     front
                                  
                                  ; Drives
                                  M569 P0.0 S0                                       ; physical drive 0.0 goes forwards (A Stepper)
                                  M569 P0.1 S0                                       ; physical drive 0.1 goes forwards (B Stepper)
                                  M569 P0.2 S0                                       ; physical drive 0.2 goes forwards
                                  M569 P0.3 S1                                       ; physical drive 0.3 goes backwards
                                  M569 P0.4 S0                                       ; physical drive 0.4 goes forwards
                                  M569 P0.5 S1                                       ; physical drive 0.5 goes backwards
                                  M569 P1.0 S0                                       ; physical drive 1.0 goes forwards (E Stepper)
                                  
                                  M584 X0.1 Y0.0 Z0.2:0.3:0.4:0.5 E1.0               ; set drive mapping
                                  M350 X16 Y16 Z16 E16 I1                            ; configure microstepping with interpolation
                                  M92 X80.00 Y80.00 Z400.0 E417.075                   ; set steps per mm (E415 baseline BMG)
                                  M906 X1200 Y1200 Z1200 E800 I50                    ; set motor currents (mA) and motor idle factor in per cent
                                  M84 S120                                           ; Set idle timeout
                                  
                                  ; Accelerations and speed
                                  M98 P"/macros/print_scripts/speed_normal.g"
                                  
                                  
                                  ; Axis Limits
                                  M208 X0 Y0 Z0 S1                                    ; set axis minima
                                  M208 X350.0 Y350.0 Z330.0 S0                        ; set axis maxima
                                  
                                  ; Endstops
                                  M574 X2 S1 P"0.io2.in"                               ; configure active-high endstop for high end on X via pin io2.in
                                  M574 Y2 S1 P"0.io1.in"                               ; configure active-high endstop for high end on Y via pin io1.in
                                  M574 Z1 S1 P"0.io3.in"                              			     ; 
                                  
                                  ; BLTouch
                                  ;M950 S0 C"0.io7.out"                                 ; create servo pin 0 for BLTouch
                                  ;M558 P9 C"^0.io6.in" H5 A3 S0.005 F120 T9000        ; set Z probe type to bltouch and the dive height + speeds (probe 3 times and average)
                                  ;G31  P25 X0.0 Y23.23 z3.5
                                  
                                  ; Nozzle Height sensor
                                  ;M558 P8 C"^0.io3.in" H5 A1 F120 T9000 K0             ; set Z probe type to unfiltered digital and the dive height + speeds 
                                  ;G31 K0 P500 Z-4.0	
                                  
                                  ;NPN NO switch
                                  M558 P5 C"!^0.io7.in" T18000 F600 H5 A3 S0.01 B0 R0.2 K0
                                  G31 K0 P25 X0.0 Y25.0 z2.458					         ; set Z probe trigger value, offset and trigger height, 
                                  M557 X25:325 Y25:325 S100                          	 ; define mesh grid
                                  					  		    
                                  ; Bed leveling
                                  M671 X-70:-70:420:420 Y-10:460:460:-10 S20         ; Define Z belts locations (Front_Left, Back_Left, Back_Right, Front_Right)
                                  
                                  ; Heaters
                                  ;bed heater - dual sensor config 
                                  ;hex stud thermistor: https://www.amazon.com/gp/product/B07Q5MKSLS/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1
                                  M308 S0 P"0.temp0" Y"thermistor" T100000 B3950 C0.0 A"Build Plate Temp" ; configure sensor 0 as thermistor on pin temp0 
                                  ;Built in Keenovo sensor
                                  M308 S1 P"0.temp1" Y"thermistor" T100000 B4725 C7.06e-8 A"Bed Heater Temp" ; configure sensor 0 as thermistor on pin temp1
                                  M950 H0 C"0.out0" T0 Q60                                ; create bed heater output on out0 and map it to sensor 0
                                  M307 H0 B0 S1.0                                   ; disable bang-bang mode for the bed heater and set PWM limit
                                  ;M307 H0 R0.450 C420.1 D1.06 S1.00 
                                  M307 H0 R0.153 C1735.5 D31.48 S1.00 
                                  M140 H0                                            ; map heated bed to heater 0
                                  M143 H0 S120                                       ; set temperature limit for build plate to 120C
                                  M143 H0 T1 P1 S125 A2                             ; Monitor heater thermistor, if temp goes above 125C temporarily turn off
                                  M143 H0 T1 P2 S132 A3                             ; Monitor heater thermistor, if temp goes above 132C cut "atx" supply
                                  
                                  
                                  ;Extruder T0 heater
                                  ;Slice Engineering 50W heater+ E3d PT100
                                  M308 S2 P"1.spi.cs0" Y" rtd-max31865" A"T0" 	;configure sensor 2 as PT100 on SPI
                                  M950 H1 C"1.out0" T2                                 ; create nozzle heater output on out1 and map it to sensor 2
                                  M307 H1 B0 S1.00                                   ; disable bang-bang mode for the nozzle heater and set PWM limit
                                  M307 H1 R2.995 C180.5:160.8 D2.60 S1.00 V24.1
                                  M143 H1 S300                                       ; set temperature limit for heater 1 to 300C
                                  
                                  ;Chamber Monitors
                                  ;Thermisors below: https://www.amazon.com/gp/product/B07D9LSKWK/ref=ppx_yo_dt_b_asin_title_o03_s00?ie=UTF8&psc=1
                                  M308 S3 P"1.temp1" Y"thermistor" T100000 B4725 C7.06e-8 A"Chamber Upper Temp"
                                  M308 S4 P"0.temp2" Y"thermistor" T100000 B4725 C7.06e-8 A"Chamber Gantry Temp"  ; configure sensor 2 as thermistor on pin temp2	
                                  M308 S5 P"0.temp3" Y"thermistor" T100000 B4725 C7.06e-8 A"Z Motor4 Temp"  ; Epoxied to stepper 4	
                                  M308 S10 P"0.spi.cs1" Y"dht22"       A"Chamber Lower Temp"    ; define DHT22 temperature sensor
                                  M308 S11 P"S10.1"     Y"dhthumidity" A"Chamber Hum[%]"  ; Attach DHT22 humidity sensor to secondary output of temperature sensor
                                  
                                  
                                  ;mcu calibration
                                  M308 S7 Y"mcu-temp" A"MCU"                               ; configure MCU as sensor 3
                                  M912 P0 S-13.6                                     ; set CPU temp correction
                                  
                                  
                                  ; Fans/LEDs
                                  ;part cooling fan
                                  M950 F0 C"1.out7" Q500                             ; create fan 0 on pin out1 and set its frequency
                                  M106 P0 S0 H-1 L2 C"Part fan"                                   ; set fan 0 value. Thermostatic control is turned off
                                  ;main extruder heater cooling fan
                                  M950 F1 C"1.out6" Q500                               ; create fan 1 on pin 20.out1 and set its frequency
                                  M106 P1 S255 H2 T45 C"Extruder fan"                                 ; set fan 1 value. Thermostatic control is turned on
                                  ;Electronic cooling fan
                                  M950 F2 C"0.out7" Q100                              ; create fan 2 on pin out7 and set its frequency
                                  ;M106 P2 S.25 H-1 C"MCU fans"
                                  M106 P2 L0.25 X1 H7 T26:32 C"MCU fans"                                   ; set fan 2 value. Thermostatic control is turned on
                                  ;Main LEDs
                                  M950 F3 C"0.out4" Q500                               ; create fan 3 on pin out4 and set its frequency
                                  M106 P3 S0 H-1 C"Lights"                                    ; set fan 3 value. Thermostatic control is turned off
                                  ;Filter fan
                                  M950 F4 C"1.out8" Q100                                ; create fan 4 on pin out8 and set its frequency
                                  M106 P4 S0 H-1 C"Filter Fan"                                   ; set fan 4 value. Thermostatic control is turned off
                                  
                                  
                                  ; Tools
                                  M563 P0 S"Tool 0" D0 H1 F0                         ; 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
                                  M591 D0 P7 C"1.io0.in" S1 E25 L2.1 R70:130          ; create filament monitor for Tool 0
                                  M572 D0 S0.00                                      ; default pressure advance for Tool 0
                                  M592 D0 A0.0 B0.00 L0.2                            ; Nonlinear extrusion Tool 0
                                  ;M593 F34.48                                        ; Cancel ringing
                                  
                                  ;Work Offsets:
                                  G10L2P1 X0.0Y0.0Z0.0  ;Set G54 offset to be machine coordinates
                                  G10L2P7 X230.2Y349.5Z0.0  ;use G59.1 for tool height probing Z zero is top of the setter when not pressed
                                  G10L2P8 X100.0Y344.5Z5.0  ;use G59.2 for nozzle cleaning, center of brush, top of brush
                                  
                                  ; Motor Stall Detect
                                  M915 X S10 F1 H200 R1
                                  M915 Y S10 F1 H200 R1
                                  M915 Z S10 F1 H200 R1
                                  
                                  ;global varialle delcare
                                  global gantryLevel = 0
                                  global printstoptime = 0
                                  global printcomplete = 0
                                  global holdtime = 0
                                  
                                  
                                  ; Miscellaneous
                                  M115
                                  M115 B1										   ;Check status of Can-FD exansion board
                                  M911 S19 R22 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
                                  M207 S0.4 R0.0 F3600 T3600 Z1.0                    ; set default retraction settings
                                  
                                  G54
                                  T0                                                 ; select first tool
                                  ;G31 K0 												;select Bltouch by default
                                  M106 P3 S255 									   ; turn on lights
                                  ;M564 H0 S0; Allow movement outside of max/min and allow movment without homing
                                  
                                  ;Random Notes---------------------------------------------------------------------------------------------------------------------
                                  ;wget -q https://pkg.duet3d.com/duet3d.gpg
                                  ;wget -q https://pkg.duet3d.com/duet3d-unstable.list
                                  ;sudo mv duet3d.gpg /etc/apt/trusted.gpg.d/
                                  ;sudo mv duet3d-unstable.list /etc/apt/sources.list.d/duet3d-unstable.list
                                  ;sudo chown root:root /etc/apt/trusted.gpg.d/duet3d.gpg
                                  ;sudo chown root:root /etc/apt/sources.list.d/duet3d-unstable.list
                                  ;sudo rm /etc/apt/sources.list.d/duet3d.list
                                  ;sudo apt-get update
                                  ;sudo apt-get upgrade
                                  ;(may need: sudo apt-get dist-upgrade) 
                                  
                                  ;Webcam
                                  ;https://forum.duet3d.com/topic/13604/duet-3-raspberry-pi-camera/6
                                  ;full interface http://voron.local:8080/
                                  ;minimal interface http://voron.local:8080/html/min.php
                                  
                                  ;accelerometer setup
                                  ;adafruit lis3dh 
                                  ;SDI (MOSI) is SDA(on board)
                                  ;SPI.cs3 is CS
                                  ;SPI.cs2 is INT
                                  
                                  ;M955 P0 C"spi.cs2+spi.cs3"
                                  
                                  

                                  Voron2.4/Duet3 SBC+6HC+3HC+1LC+1HCL(x2) - Delta/Duet2 Wifi - CubePro/Duet2 Wifi+Duex5 - Laser/Duet3 Mini5+ - Cel Robox - U̶p̶3̶0̶0̶+/D̶u̶e̶t̶3̶ ̶6̶H̶C̶+̶LC1̶ - F̶T̶-̶5̶/̶D̶u̶e̶t̶2̶ ̶W̶i̶f̶i̶ - S̶o̶l̶i̶d̶o̶o̶d̶l̶e̶

                                  dc42undefined 1 Reply Last reply Reply Quote 0
                                  • dc42undefined
                                    dc42 administrators @Alex.cr
                                    last edited by dc42

                                    @alex-cr thanks. I've updated the firmware binary at https://www.dropbox.com/sh/6fdfjn7fpjnk3vv/AADWZIXsKn5B_GsTauCx8Nsna?dl=0. Please try that one. Whether your daemon.g file succeeds or crashes, please post a new M122 report after running it.

                                    Duet WiFi hardware designer and firmware engineer
                                    Please do not ask me for Duet support via PM or email, use the forum
                                    http://www.escher3d.com, https://miscsolutions.wordpress.com

                                    Alex.crundefined pkosundefined 2 Replies Last reply Reply Quote 0
                                    • Alex.crundefined
                                      Alex.cr @dc42
                                      last edited by

                                      @dc42

                                      Good news, the latest +1 appears to have fixed the firmware crashes.
                                      Unfortunately the line in deamon.g that was causing the crash is now throwing the following alarm.

                                      ; daemon.g
                                      
                                      set global.holdtime = state.upTime
                                      set global.printcomplete = state.upTime - global.printstoptime 
                                      

                                      Screenshot 2021-04-25 204953.jpg

                                      The global variable "printstoptime" is fully defined according to the object model.

                                      And as requested here is the M122.

                                      m122
                                      === Diagnostics ===
                                      RepRapFirmware for Duet 3 MB6HC version 3.3beta3+1 (2021-04-25 21:40:09) running on Duet 3 MB6HC v0.6 or 1.0 (SBC mode)
                                      Board ID: 08DJM-956L2-G43S4-6J1FD-3SJ6T-TB6QH
                                      Used output buffers: 1 of 40 (10 max)
                                      === RTOS ===
                                      Static ram: 150800
                                      Dynamic ram: 64488 of which 176 recycled
                                      Never used RAM 135872, free system stack 178 words
                                      Tasks: SENSORS(delaying,0.0%,70) Linux(resourceWait:,5.7%,266) HEAT(delaying,0.0%,281) Move(notifyWait,0.0%,350) CanReceiv(notifyWait,0.0%,773) CanSender(notifyWait,0.0%,373) CanClock(delaying,0.0%,341) TMC(notifyWait,7.2%,93) MAIN(running,87.0%,924) IDLE(ready,0.0%,29), total 100.0%
                                      Owned mutexes: HTTP(MAIN)
                                      === Platform ===
                                      Last reset 00:10:34 ago, cause: software
                                      Last software reset at 2021-04-25 20:42, reason: User, none spinning, available RAM 135872, slot 0
                                      Software reset code 0x0012 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task Linu Freestk 0 n/a
                                      Error status: 0x00
                                      Aux0 errors 0,0,0
                                      Aux1 errors 0,0,0
                                      Step timer max interval 134
                                      MCU temperature: min 24.9, current 25.5, max 39.7
                                      Supply voltage: min 3.1, current 24.0, max 24.1, under voltage events: 1, over voltage events: 0, power good: yes
                                      12V rail voltage: min 0.4, current 12.2, max 12.2, under voltage events: 0
                                      Heap OK, handles allocated/used 99/4, heap memory allocated/used/recyclable 2048/64/0, gc cycles 0
                                      Driver 0: position 0, standstill, reads 58281, writes 28 timeouts 0, SG min/max 0/0
                                      Driver 1: position 0, standstill, reads 58281, writes 28 timeouts 0, SG min/max 0/0
                                      Driver 2: position 0, standstill, reads 58281, writes 28 timeouts 0, SG min/max 0/0
                                      Driver 3: position 0, standstill, reads 58281, writes 28 timeouts 0, SG min/max 0/0
                                      Driver 4: position 0, standstill, reads 58281, writes 28 timeouts 0, SG min/max 0/0
                                      Driver 5: position 0, standstill, reads 58282, writes 28 timeouts 0, SG min/max 0/0
                                      Date/time: 2021-04-25 20:53:14
                                      Slowest loop: 0.68ms; fastest: 0.04ms
                                      === 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 ===
                                      DMs created 125, 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 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
                                      Heater 1 is on, I-accum = 0.0
                                      === GCodes ===
                                      Segments left: 0
                                      Movement lock held by null
                                      HTTP* is doing "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.
                                      === Filament sensors ===
                                      Extruder 0 sensor: no data received
                                      === CAN ===
                                      Messages queued 5699, send timeouts 15, received 7849, lost 0, longest wait 1ms for reply type 6042, peak Tx sync delay 45775, free buffers 49 (min 48)
                                      Last cancelled message type 30 dest 127
                                      === SBC interface ===
                                      State: 4, failed transfers: 0
                                      Last transfer: 1ms ago
                                      RX/TX seq numbers: 23043/23043
                                      SPI underruns 0, overruns 0
                                      Number of disconnects: 0, IAP RAM available 0x2c594
                                      Buffer RX/TX: 0/0-0
                                      === Duet Control Server ===
                                      Duet Control Server v3.3-b3
                                      Code buffer space: 4096
                                      Configured SPI speed: 8000000 Hz
                                      Full transfers per second: 36.43
                                      Codes per second: 0.15
                                      Maximum length of RX/TX data transfers: 5740/936
                                      

                                      Voron2.4/Duet3 SBC+6HC+3HC+1LC+1HCL(x2) - Delta/Duet2 Wifi - CubePro/Duet2 Wifi+Duex5 - Laser/Duet3 Mini5+ - Cel Robox - U̶p̶3̶0̶0̶+/D̶u̶e̶t̶3̶ ̶6̶H̶C̶+̶LC1̶ - F̶T̶-̶5̶/̶D̶u̶e̶t̶2̶ ̶W̶i̶f̶i̶ - S̶o̶l̶i̶d̶o̶o̶d̶l̶e̶

                                      dc42undefined 1 Reply Last reply Reply Quote 0
                                      • dc42undefined
                                        dc42 administrators @Alex.cr
                                        last edited by dc42

                                        @alex-cr thanks. As you are using SBC I'll ask @chrishamm to look at why the global variable isn't found.

                                        Duet WiFi hardware designer and firmware engineer
                                        Please do not ask me for Duet support via PM or email, use the forum
                                        http://www.escher3d.com, https://miscsolutions.wordpress.com

                                        Alex.crundefined 1 Reply Last reply Reply Quote 0
                                        • Alex.crundefined
                                          Alex.cr @dc42
                                          last edited by

                                          @dc42

                                          Not a problem. Just doing my best to beta test!

                                          Voron2.4/Duet3 SBC+6HC+3HC+1LC+1HCL(x2) - Delta/Duet2 Wifi - CubePro/Duet2 Wifi+Duex5 - Laser/Duet3 Mini5+ - Cel Robox - U̶p̶3̶0̶0̶+/D̶u̶e̶t̶3̶ ̶6̶H̶C̶+̶LC1̶ - F̶T̶-̶5̶/̶D̶u̶e̶t̶2̶ ̶W̶i̶f̶i̶ - S̶o̶l̶i̶d̶o̶o̶d̶l̶e̶

                                          chrishammundefined 1 Reply Last reply Reply Quote 0
                                          • chrishammundefined
                                            chrishamm administrators @Alex.cr
                                            last edited by

                                            @alex-cr This problem had to do with the space after the variable name. To work-around this problem you can remove spaces before the '=' from your daemon.g.

                                            I've got a fix ready for this, thanks for your report.

                                            Duet software engineer

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA