Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login
    1. Home
    2. Nate.Nygren
    • Profile
    • Following 0
    • Followers 0
    • Topics 6
    • Posts 18
    • Best 5
    • Controversial 0
    • Groups 0

    Nate.Nygren

    @Nate.Nygren

    10
    Reputation
    2
    Profile views
    18
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    Nate.Nygren Unfollow Follow

    Best posts made by Nate.Nygren

    • Prusa Style Filament AutoLoad macro

      Thought I'd share my Prusa style autoload macro (firmware => 3.5.0) for others to use or improve. Please feel free to add your suggestions! This assumes you have a filament sensor.

      EDIT: I've updated the load.g code to make it a little more smart.

      daemon.g

      ; Monitor the Filament Sensor to see if it's loaded
      if {sensors.filamentMonitors[0].status = "noFilament"}
          M98 P"0:/macros/load.g"
      

      load.g

      ; Filament AutoLoad Macro for RepRapFirmware
      ; While waiting for the user to load filament, check the filament sensor
      while {sensors.filamentMonitors[0].status = "noFilament"}
          M117 "Please load filament."
      ; Read filament sensor and if filment is present, continue the load process
      if {sensors.filamentMonitors[0].status = "ok"}
          ; Ask user what type of filament is loaded
          M291 S4 T0 P"Select Filament Type" R"Filament Type" K{"PLA","PETG","ABS","TPU","Nylon"}
          ; Set the temperature based on the filament type
          if {input == 0}
              G10 S200 ; Set temperature for PLA
          elif {input == 1}
              G10 S235 ; Set temperature for PETG
          elif {input == 2}
              G10 S240 ; Set temperature for ABS
          elif {input == 3}
              G10 S220 ; Set temperature for TPU
          elif {input == 4}
              G10 S250 ; Set temperature for Nylon
          M116 ; Wait for the temperatures to be reached
          M83 ; Extruder to relative mode
      
          ; Move E till filament is grabbed by gears
          G1 E15 F120 ; Extrude 15mm of filament at a speed of 120mm/min
          
          ; Ask user if filament was grabbed by gears. If not, grab a little more filament
          var loaded = false
          while {var.loaded = false}
              M291 S4 T0 P"Filament Loaded?" R"Filament Loaded?" K{"Continue","Try Again"}
              if {input == 1} ; Try again
                  set var.loaded = false
                  G1 E15 F120 ; Extrude 15mm of filament at a speed of 120mm/min
                  continue
              elif {input == 0} ; Continue
                  set var.loaded = true
                  break
          if {var.loaded == true}
              ; Change the extruded amount depending on the size of your hotend setup.
              G1 E80 F240 ; Extrude 80mm of filament at a speed of 240mm/min.
              ; Ask user if filament is extruding properly
              var extruded = false
              while {var.extruded = false}
                  M291 S4 T0 P"Filament Extruding?" R"Did filament come out?" K{"No","Yes"}
                  if {input == 0} ; No
                      set var.extruded = false
                      G1 E15 F240 ; Extrude 15mm more of filament at a speed of 240mm/min
                      continue
                  elif {input == 1} ; Yes
                      set var.extruded = true
                      break
              ; Set the extruder position to 0
              G92 E0
              M104 S0 ; set tool temp to 0
      
      posted in Gcode meta commands
      Nate.Nygrenundefined
      Nate.Nygren
    • 3.4.5 Homing moves really slow

      Using Duet 3 mini 5+ board on cartesian style printer

      Issue after upgrading to 3.4.5 during the homing sequences occurred on the axis being told to travel back a few mm. The movement would happen normally during the H1 home, but move at a snails pace during the H2 portion.

      On X and Y:
      G1 H1 X-265 F3600 ; move quickly to X axis end <-- MOVES NORMALLY
      G1 H2 X10 F6000 ; go back a few mm <-- HERE IS WHERE THE AXIS MOVES AT A SNAILS PACE.

      On Z homing:
      G30 ; <-- LOWERS Z AT NORMAL SPEED FIRST TIME, BUT SUBSEQUENT RAISES AND LOWERS ARE SO SLOW I COULD BARELY TELL THE GANTRY WAS MOVING. RESULTS IN FAILED Z PROBE.

      Downgraded to 3.4.4 which works a treat. Just thought I'd let you know in case this is the first you've seen the issue.
      config.g file attached for reference in case you need it.config.g

      posted in General Discussion
      Nate.Nygrenundefined
      Nate.Nygren
    • RE: 3.5.0-rc.4 Z (print head) crashes into bed at end of print

      @gloomyandy 👍 I'll suggest that in the report to the ConfigTool repo.

      posted in Beta Firmware
      Nate.Nygrenundefined
      Nate.Nygren
    • RE: Software bundle 3.5.0rc.4 now available

      @T3P3Tony 👍 The new one didn't get flagged.

      posted in Firmware installation
      Nate.Nygrenundefined
      Nate.Nygren
    • RE: My printer reboots alone…. 3.5.1

      I'm having the same issue: https://forum.duet3d.com/topic/35647/hardfault-causing-failed-prints

      posted in Beta Firmware
      Nate.Nygrenundefined
      Nate.Nygren

    Latest posts made by Nate.Nygren

    • RE: My printer reboots alone…. 3.5.1

      I'm having the same issue: https://forum.duet3d.com/topic/35647/hardfault-causing-failed-prints

      posted in Beta Firmware
      Nate.Nygrenundefined
      Nate.Nygren
    • HardFault causing failed prints 3.5.1

      Not sure why, but since upgrading to 3.5.x I've had 3 times where the Duet3 Mini board just stops motion and reboots. Any clue as to the cause from the diagnostics? Most of the time my prints complete just fine, so I'm puzzled as to why this has started happening. Here's my M122:

      === Diagnostics ===
      RepRapFirmware for Duet 3 Mini 5+ version 3.5.1 (2024-04-19 14:41:25) running on Duet 3 Mini5plus WiFi (standalone mode)
      Board ID: AATGZ-U396U-D65J0-40KM4-NM03Z-HUQXW
      Used output buffers: 8 of 40 (21 max)
      === RTOS ===
      Static ram: 103232
      Dynamic ram: 121388 of which 0 recycled
      Never used RAM 13868, free system stack 160 words
      Tasks: NETWORK(2,nWait 7,13.9%,234) HEAT(3,nWait 6,0.0%,351) Move(4,nWait 6,0.0%,294) CanReceiv(6,nWait 1,0.0%,940) CanSender(5,nWait 7,0.0%,336) CanClock(7,delaying,0.0%,334) TMC(4,nWait 6,0.8%,111) MAIN(1,running,84.3%,665) IDLE(0,ready,0.1%,30) AIN(4,delaying,0.9%,269), total 100.0%
      Owned mutexes: WiFi(NETWORK)
      === Platform ===
      Last reset 00:03:24 ago, cause: software
      Last software reset at 2024-05-05 19:22, reason: HardFault imprec, Gcodes spinning, available RAM 12748, slot 0
      Software reset code 0x4063 HFSR 0x40000000 CFSR 0x00000400 ICSR 0x0047d803 BFAR 0xe000ed38 SP 0x20012050 Task NETW Freestk 507 ok
      Stack: 2002c5e0 20031398 200014e8 00000000 ffffffff 0002ff99 00030058 610ff200 000347e1 2002c3a8 2002c3a8 00000003 0002f715 00000020 20034ee0 00000000 0ded7a33 e000e000 2001e9f8 a5a5a5a5 20034ee0 00000000 0dee8d89 e000e000 2001e9f8 a5a5a5a5 a5a5a5a5
      Error status: 0x00
      MCU revision 3, ADC conversions started 205089, completed 205088, timed out 0, errs 0
      MCU temperature: min 34.3, current 34.3, max 42.0
      Supply voltage: min 24.1, current 24.3, max 24.3, under voltage events: 0, over voltage events: 0, power good: yes
      Heap OK, handles allocated/used 99/0, heap memory allocated/used/recyclable 2048/336/336, gc cycles 0
      Events: 0 queued, 0 completed
      Driver 0: standstill, SG min 174, read errors 0, write errors 1, ifcnt 77, reads 10768, writes 10, timeouts 0, DMA errors 0, CC errors 0
      Driver 1: standstill, SG min 188, read errors 0, write errors 1, ifcnt 74, reads 10768, writes 10, timeouts 0, DMA errors 0, CC errors 0
      Driver 2: standstill, SG min 110, read errors 0, write errors 1, ifcnt 52, reads 10765, writes 13, timeouts 0, DMA errors 0, CC errors 0
      Driver 3: standstill, SG min 2, read errors 0, write errors 1, ifcnt 226, reads 10768, writes 10, timeouts 0, DMA errors 0, CC errors 0
      Driver 4: standstill, SG min 2, read errors 0, write errors 1, ifcnt 53, reads 10765, writes 13, timeouts 0, DMA errors 0, CC errors 0
      Driver 5: not present
      Driver 6: not present
      Date/time: 2024-05-05 19:25:35
      Cache data hit count 378313878
      Slowest loop: 4.71ms; fastest: 0.16ms
      === Storage ===
      Free file entries: 20
      SD card 0 detected, interface speed: 22.5MBytes/sec
      SD card longest read time 2.1ms, write time 0.0ms, max retries 0
      === Move ===
      DMs created 83, segments created 3, maxWait 40727ms, bed compensation in use: none, height map offset 0.000, max steps late 0, min interval 0, bad calcs 0, ebfmin 0.00, ebfmax 0.00
      no step interrupt scheduled
      Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0
      === DDARing 0 ===
      Scheduled moves 1, completed 1, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 1], CDDA state -1
      === DDARing 1 ===
      Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
      === Heat ===
      Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0
      Heater 1 is on, I-accum = 0.0
      === GCodes ===
      Movement locks held by null, 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
      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
      File2 is idle in state(s) 0
      Queue2 is idle in state(s) 0
      Q0 segments left 0, axes/extruders owned 0x0000807
      Code queue 0 is empty
      Q1 segments left 0, axes/extruders owned 0x0000000
      Code queue 1 is empty
      === Filament sensors ===
      check 0 clear 980104
      Extruder 0 sensor: ok
      === CAN ===
      Messages queued 1844, received 0, lost 0, errs 965983, boc 0
      Longest wait 0ms for reply type 0, peak Tx sync delay 0, free buffers 26 (min 26), ts 1025/0/0
      Tx timeouts 0,0,1024,0,0,818 last cancelled message type 4514 dest 127
      === Network ===
      Slowest loop: 10.47ms; fastest: 0.00ms
      Responder states: MQTT(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0)
      HTTP sessions: 1 of 8
      === WiFi ===
      Interface state: active
      Module is connected to access point 
      Failed messages: pending 0, notrdy 0, noresp 0
      Firmware version 2.1.0
      MAC address f4:cf:a2:6f:9a:ba
      Module reset reason: Power up, Vcc 3.36, flash size 2097152, free heap 43052
      WiFi IP address 192.168.1.12
      Signal strength -56dBm, channel 9, mode 802.11n, reconnections 0
      Clock register 00002001
      Socket states: 0 0 0 0 0 0 0 0
      
      posted in Beta Firmware
      Nate.Nygrenundefined
      Nate.Nygren
    • What SBC do you use?

      Just curious what SBC everyone is using. Anyone running on a PiZero2W?

      posted in General Discussion
      Nate.Nygrenundefined
      Nate.Nygren
    • Prusa Style Filament AutoLoad macro

      Thought I'd share my Prusa style autoload macro (firmware => 3.5.0) for others to use or improve. Please feel free to add your suggestions! This assumes you have a filament sensor.

      EDIT: I've updated the load.g code to make it a little more smart.

      daemon.g

      ; Monitor the Filament Sensor to see if it's loaded
      if {sensors.filamentMonitors[0].status = "noFilament"}
          M98 P"0:/macros/load.g"
      

      load.g

      ; Filament AutoLoad Macro for RepRapFirmware
      ; While waiting for the user to load filament, check the filament sensor
      while {sensors.filamentMonitors[0].status = "noFilament"}
          M117 "Please load filament."
      ; Read filament sensor and if filment is present, continue the load process
      if {sensors.filamentMonitors[0].status = "ok"}
          ; Ask user what type of filament is loaded
          M291 S4 T0 P"Select Filament Type" R"Filament Type" K{"PLA","PETG","ABS","TPU","Nylon"}
          ; Set the temperature based on the filament type
          if {input == 0}
              G10 S200 ; Set temperature for PLA
          elif {input == 1}
              G10 S235 ; Set temperature for PETG
          elif {input == 2}
              G10 S240 ; Set temperature for ABS
          elif {input == 3}
              G10 S220 ; Set temperature for TPU
          elif {input == 4}
              G10 S250 ; Set temperature for Nylon
          M116 ; Wait for the temperatures to be reached
          M83 ; Extruder to relative mode
      
          ; Move E till filament is grabbed by gears
          G1 E15 F120 ; Extrude 15mm of filament at a speed of 120mm/min
          
          ; Ask user if filament was grabbed by gears. If not, grab a little more filament
          var loaded = false
          while {var.loaded = false}
              M291 S4 T0 P"Filament Loaded?" R"Filament Loaded?" K{"Continue","Try Again"}
              if {input == 1} ; Try again
                  set var.loaded = false
                  G1 E15 F120 ; Extrude 15mm of filament at a speed of 120mm/min
                  continue
              elif {input == 0} ; Continue
                  set var.loaded = true
                  break
          if {var.loaded == true}
              ; Change the extruded amount depending on the size of your hotend setup.
              G1 E80 F240 ; Extrude 80mm of filament at a speed of 240mm/min.
              ; Ask user if filament is extruding properly
              var extruded = false
              while {var.extruded = false}
                  M291 S4 T0 P"Filament Extruding?" R"Did filament come out?" K{"No","Yes"}
                  if {input == 0} ; No
                      set var.extruded = false
                      G1 E15 F240 ; Extrude 15mm more of filament at a speed of 240mm/min
                      continue
                  elif {input == 1} ; Yes
                      set var.extruded = true
                      break
              ; Set the extruder position to 0
              G92 E0
              M104 S0 ; set tool temp to 0
      
      posted in Gcode meta commands
      Nate.Nygrenundefined
      Nate.Nygren
    • RE: Software bundle 3.5.0rc.4 now available

      @T3P3Tony 👍 The new one didn't get flagged.

      posted in Firmware installation
      Nate.Nygrenundefined
      Nate.Nygren
    • RE: 3.5.0-rc.4 Z (print head) crashes into bed at end of print

      @gloomyandy 👍 I'll suggest that in the report to the ConfigTool repo.

      posted in Beta Firmware
      Nate.Nygrenundefined
      Nate.Nygren
    • RE: 3.5.0-rc.4 Z (print head) crashes into bed at end of print

      @gloomyandy Bingo, commenting out the last G1 move was the key. Thank!

      posted in Beta Firmware
      Nate.Nygrenundefined
      Nate.Nygren
    • RE: 3.5.0-rc.4 Z (print head) crashes into bed at end of print

      @gloomyandy I'm already on it 🙂 I commented out the last G1 move in the homex.g file, which isn't really necessary anyway, and am heating up for a quick print test.

      posted in Beta Firmware
      Nate.Nygrenundefined
      Nate.Nygren
    • RE: 3.5.0-rc.4 Z (print head) crashes into bed at end of print

      @gloomyandy I agree the H2 doesn't need to be there, but this homex.g file was generated by the RepRapFirmware Config tool, and like I mentioned above it works fine if it's called by the Home X button in DWC, so I didn't edit them out.

      posted in Beta Firmware
      Nate.Nygrenundefined
      Nate.Nygren
    • RE: Software bundle 3.5.0rc.4 now available

      @T3P3Tony Correct

      posted in Firmware installation
      Nate.Nygrenundefined
      Nate.Nygren