Duet3D Logo

    Duet3D

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • Documentation
    • Order
    1. Home
    2. Philipp.R
    • Profile
    • Following 4
    • Followers 1
    • Topics 15
    • Posts 70
    • Best 2
    • Controversial 0
    • Groups 0

    Philipp.R

    @Philipp.R

    2
    Reputation
    8
    Profile views
    70
    Posts
    1
    Followers
    4
    Following
    Joined Last Online

    Philipp.R Unfollow Follow

    Best posts made by Philipp.R

    • RE: Delta Frame Compensation

      @jay_s_uk maybe you find some solution there: https://duet3d.dozuki.com/Wiki/Gcode#Section_M556_Axis_skew_compensation

      posted in General Discussion
      Philipp.R
      Philipp.R
    • RE: Wrong Feedrate with Mukti Axis G-Code

      @jay_s_uk i's not a 3D-Printer but a Duet controlled machine. I can't go int details.

      The kinematic is configured as followed:

      M669
      Kinematics is Cartesian, no segmentation, matrix:
      1.00 0 0 0
      0 1.00 0 0
      0 0 1.00 0
      0 0 0 1.00

      posted in Tuning and tweaking
      Philipp.R
      Philipp.R

    Latest posts made by Philipp.R

    • RE: Wrong Feedrate with Mukti Axis G-Code

      @T3P3Tony thanks for your reply. I will test it like you mentioned and report the result in a few days.

      So i tested it with this configration, and now it works like it should:

      M584 X0.0 E0.3:0.4							; set drive mapping linear axes 
      M584 A0.1 B0.2 C0.5 S1							; set drive mapping rotational axes
      M350 X16 A16 B16 C16 E16:16 I1                           		; configure microstepping with interpolation
      M92 X36.2 A28.5 B28.5 C15.0 E400.00:400.00				; set steps per mm
      M566 X500.00 A500.00 B500.00 C500.00 E1200.00:1200.00      		; set maximum instantaneous speed changes (mm/min)
      M203 X20000.00 A20000.00 B20000.00 C20000.00 E1200.00:1200.00		; set maximum speeds (mm/min)
      M201 X2000.00 A2000.00 B2000.00 C2000.00 E2500.00:2500.00      		; set accelerations (mm/s^2)
      M906 X1000 A1000 B1000 C1000 E800:800 I30                		; set motor currents (mA) and motor idle factor in per cent
      M84 S30                                                  		; Set idle timeout
      
      

      My Gcode is "G91 G1 X500 A500 B500 C-500 F500" and the X-Axis moved 500mm in 1min.

      @T3P3Tony Thank you very much for your help😁

      posted in Tuning and tweaking
      Philipp.R
      Philipp.R
    • RE: Wrong Feedrate with Mukti Axis G-Code

      @T3P3Tony i've tried the following:

      first, reassign the Axes X,Y,Z to A,B,C. I tried with and without the "R" and "S" Parameter.

      Then sended : G91 G1 A500 B500 F500 -> movment took 1min24sec to finish.

      config.g

      M584 A0.0 B0.1 C0.2 R1 S1 		; set drive mapping rotational axes
      M584 U0.5 E0.3:0.4			; set drive mapping linear axes
      M350 A16 B16 C16 U16 E16:16 I1                           ; configure microstepping with interpolation
      M92 A36.2 B28.5 C28.5 U15.0 E400.00:400.00				 ; set steps per mm
      M566 A500.00 B500.00 C500.00 U500.00 E1200.00:1200.00      ; set maximum instantaneous speed changes (mm/min)
      M203 A20000.00 B20000.00 C20000.00 U20000.00 E1200.00:1200.00 ; set maximum speeds (mm/min)
      M201 A2000.00 B2000.00 C2000.00 U2000.00 E2500.00:2500.00      ; set accelerations (mm/s^2)
      M906 A1000 B1000 C1000 U1000 E800:800 I30                ; set motor currents (mA) and motor idle factor in per cent
      M84 S30                                                  ; Set idle timeout
      

      and i tried to set the X,Y,Z axes as rotational axes also with the "R" and "S" Parameter.

      Then sended : G91 G1 X500 Y500 F500 -> movment took also1min24sec to finish.

      M584 X0.0 Y0.1 Z0.2 R1 S1           ; set drive mapping rotational axes
      M584 U0.5 E0.3:0.4                        ; set drive mapping
      M350 X16 Y16 Z16 U16 E16:16 I1                           ; configure microstepping with interpolation
      M92 X36.2 Y28.5 Z28.5 U15.0 E400.00:400.00				 ; set steps per mm
      M566 X500.00 Y500.00 Z500.00 U500.00 E1200.00:1200.00      ; set maximum instantaneous speed changes (mm/min)
      M203 X20000.00 Y20000.00 Z20000.00 U20000.00 E1200.00:1200.00 ; set maximum speeds (mm/min)
      M201 X2000.00 Y2000.00 Z2000.00 U2000.00 E2500.00:2500.00      ; set accelerations (mm/s^2)
      M906 X1000 Y1000 Z1000 U1000 E800:800 I30                ; set motor currents (mA) and motor idle factor in per cent
      M84 S30                                                  ; Set idle timeout
      

      Maybe i configured it wrong?

      posted in Tuning and tweaking
      Philipp.R
      Philipp.R
    • RE: Wrong Feedrate with Mukti Axis G-Code

      @T3P3Tony Ok, let's say the machine has two tasks to do. One is to move the X-Axis to 500mm with F500 mm/min. The second task is an interaction between the remaining axes.
      So the effector movment is completly constrained on the X-Axis and is linear.

      I want to input the G-Code "G91 G1 X500 Y500 Z500 U-500 F500". The result should be, that X-Axis moves 500mm per minute. And the remaining axes do their movements independently.

      The importand thing is, that the movements of all axes should be done simultainiously and consistent.

      posted in Tuning and tweaking
      Philipp.R
      Philipp.R
    • RE: Wrong Feedrate with Mukti Axis G-Code

      @T3P3Tony ok i see. The problem is that with the M669 ist applied, the Gcode command will be transformed to the cartesian Kinematic moves.

      • Is there a posibillity for the Duet to interpret the Gcode command for each axis indepandently?

      • Or do i have to change the matrix in a specific way to get the result i want?

      posted in Tuning and tweaking
      Philipp.R
      Philipp.R
    • RE: Wrong Feedrate with Mukti Axis G-Code

      @jay_s_uk i's not a 3D-Printer but a Duet controlled machine. I can't go int details.

      The kinematic is configured as followed:

      M669
      Kinematics is Cartesian, no segmentation, matrix:
      1.00 0 0 0
      0 1.00 0 0
      0 0 1.00 0
      0 0 0 1.00

      posted in Tuning and tweaking
      Philipp.R
      Philipp.R
    • Wrong Feedrate with Mukti Axis G-Code

      Hi, i have issues to get the right feedrate when i run a multiaxis G-Code.

      For example:

      if i run a liner axis "X" with "G91 G1 X500 F500" then it moves 500mm in 1min. So as it should be.

      if i run a liner axis "X" and "Y" with "G91 G1 X500 Y500 F500" then it moves 500mm in 1min 24sec.

      if i run a liner axis "X", "Y" and "Z" with "G91 G1 X500 Y500 Z500 F500" then it moves 500mm in 1min 45sec.

      if i run a liner axis "X","Y","Z" and "U" with "G91 G1 X500 Y500 Z500 U500 F500" then it moves 500mm in 2min.

      So as i have different Steps/mm valus in config.g i also tried to set the steps/mm of X and Y the same.

      For Example:
      M92 X36.2 Y36.2
      And then i sended the Gcode : "G91 G1 X500 Y500 F500" then it moves 500mm in 1min 24sec again. So no difference.

      I also increased the max. speed of all axis in the config.g to make sure no axis will lack behind.

      So here are the specs of the machine.

      Board: Duet 3 MB6HC (MB6HC)
      Firmware: RepRapFirmware for Duet 3 MB6HC 3.4.5 (2022-11-30)

      ; Drives
      M569 P0.0 S0                                             ; physical drive 0.0 goes forwards
      M569 P0.1 S0                                             ; physical drive 0.1 goes forwards
      M569 P0.2 S1                                             ; physical drive 0.2 goes forwards
      M569 P0.3 S1                                             ; physical drive 0.3 goes forwards
      M569 P0.4 S1                                             ; physical drive 0.4 goes forwards
      M569 P0.5 S1                                             ; physical drive 0.5 goes forwards
      M584 X0.0 Y0.1 Z0.2 U0.5 E0.3:0.4                        ; set drive mapping
      M350 X16 Y16 Z16 U16 E16:16 I1                           ; configure microstepping with interpolation
      M92 X36.2 Y28.5 Z28.5 U15.0 E400.00:400.00				 ; set steps per mm
      M566 X500.00 Y500.00 Z500.00 U500.00 E1200.00:1200.00      ; set maximum instantaneous speed changes (mm/min)
      M203 X20000.00 Y20000.00 Z20000.00 U20000.00 E1200.00:1200.00 ; set maximum speeds (mm/min)
      M201 X2000.00 Y2000.00 Z2000.00 U2000.00 E2500.00:2500.00      ; set accelerations (mm/s^2)
      M906 X1000 Y1000 Z1000 U1000 E800:800 I30                ; set motor currents (mA) and motor idle factor in per cent
      M84 S30                                                  ; Set idle timeout
      

      Thank you in advance for your help.

      posted in Tuning and tweaking
      Philipp.R
      Philipp.R
    • RE: Conditional G Code & Multiple GCode streams - Duet3

      @dc42 are there any news about the development stage of the "multiple GCode streams"?

      posted in General Discussion
      Philipp.R
      Philipp.R
    • RE: resurrect.g file does not finish correctly

      @phaedrux thank you for the quick response.

      config.g
      Configure auto save on loss of power at line 81

      ; config.g
      
      ; General preferences
      G90                                                                 ; send absolute coordinates...
      M83                                                                 ; ...but relative extruder moves
      M550 P""                                                 ; set printer name
      M575 P1 S1 B57600													; set serial comms parameters
      M667 S1                                                             ; select CoreXY mode
      
      ; Network
      M552 P0.0.0.0 S1                                             ; enable network and acquire dynamic address via DHCP
      M586 P0 S1                                                          ; enable HTTP
      M586 P1 S1                                                          ; enable FTP
      M586 P2 S1                                                          ; enable Telnet
      
      ; Drives
      M569 P0 S1                                                          ; physical drive 0 goes forwards
      M569 P1 S0                                                          ; physical drive 1 goes forwards
      M569 P2 S0                                                          ; physical drive 2 goes forwards
      M569 P3 S0                                                          ; physical drive 3 goes forwards
      M569 P4 S0                                                          ; physical drive 4 goes forwards
      M569 P5 S0                                                          ; physical drive 5 goes forwards
      M569 P6 S1                                                          ; physical drive 6 goes forwards
      M584 X0 Y1 Z2 E3:4:5:6                                              ; set drive mapping
      M350 X16 Y16 Z16 E16:16:8:16 I1                                     ; configure microstepping with interpolation
      M92 X80.00 Y80.00 Z640 E837.00:4214.00:1240:4214.00              	
      M566 X900.00 Y900.00 Z100.00 E120.00:120.00:120.00:120.00           ; set maximum instantaneous speed changes (mm/min)
      M203 X30000.00 Y30000.00 Z2000.00 E1200.00:1000.00:1200.00:1200.00  ; set maximum speeds (mm/min)      
      M201 X800.00 Y800.00 Z1200.00 E2500.00:1000.00:250.00:2500.00       ; set accelerations (mm/s^2)     
      M906 X1800 Y1800 Z1800 E1400:1400:1400:1400 I30						; set motor currents (mA) and motor idle factor in per cent   
      M84 S30                                                            	; Set idle timeout
      
      ; Axis Limits
      M208 X-17 Y0 Z3 S1                                                  ; set axis minima
      M208 X415 Y255 Z408 S0                                              ; set axis maxima
      
      
      ; Endstops
      M574 X1 S1 P"!xstop"                                                ; configure active-low endstop for low end on X via pin xstop
      M574 Y1 S1 P"!ystop"                                                ; configure active-low endstop for low end on Y via pin ystop
      M574 Z1 S2                                                          ; configure Z-probe endstop for high end on Z only for BL-Touch
      
      ; Z-Probe
      M558 P9 C"^zprobe.in" H10 F900 T20000 A1 R0.75 S0.02 B0 X0 Y0 Z1  	; set Z probe type to bltouch and the dive height + speeds
      M950 S1 C"duex.pwm4"                              					; create servo pin 0 for BLTouch on exp.heater6 --> duex.pwm4
      G31 P500 X25.4 Y-39.3 Z4                                          	; set Z probe trigger value, offset and trigger height -1.005 
      M557 X10:410 Y0:215 P12                                             ; define mesh grid
      
      ; Heaters
      M308 S0 P"bedtemp" Y"thermistor" T100000 B4138                      ; configure sensor 0 as thermistor on pin bedtemp
      M950 H0 C"bedheat" Q100 T0                                          ; create bed heater output on bedheat and map it to sensor 0
      M570 H0 P10 T20 S60													; configer heaterfault detection
      M140 H0       
      M143 H0 S220                                                        ; set temperature limit for heater 0 to 200C 
      M307 H0 R1.086 C347.9 D2.11 S1.00 V23.9
      
      M308 S1 P"spi.cs1" Y"rtd-max31865"                                  ; configure sensor 1 as thermocouple via CS pin spi.cs1
      M950 H1 C"e0heat" T1                                                ; create nozzle heater output on e0heat and map it to sensor 1
      M570 H1 P10 T20 S60													; configer heaterfault detection
      M143 H1 S510                                                        ; set temperature limit for heater 1 to 500C
      M307 H1 B0 S1.00                                                    ; disable bang-bang mode for heater  and set PWM limit
      
      
      ; Fans
      M950 F0 C"fan0" Q5                                                  ; create fan 0 on pin fan0 and set its frequency
      M106 P0 S0 H-1                                                      ; set fan 0 value. Thermostatic control is turned off
      
      ; Tools
      M563 P0 S"Heatbed" D0 H5 F0                                         ; define tool 0
      
      M563 P0 S"Tool_0" D0 H1 F0                                          ; define tool 0
      G10 P0 X0 Y0 Z-5.33                        			        	    ; Set tool 0 axis offsets
      G10 P0 R0 S0                                                        ; set initial tool 0 active and standby temperatures to 0C
      
      ; Miscellaneous
      M950 S0 C"duex.pwm5"                                  				; create servo pin 0 for Magnet on exp.heater7 --> duex.pwm5
      
      M950 J1 C"e1stop"													; Configure Pin number1 to e1stop
      M581 P1 T2 S0 R1													
      
      M911 S21.9 R23.0 P"M913 X0 Y0 G91 M83 G1 E-3 Z3 F800"				; Autosave at Powerfailure
      
      M376 H5																; Set bed compensation taper
      
      ; set tools in standbay mode after start up	
      T0 P0																; call tool 0 without any movements
      G4 P500																; wait 500 ms
      T-1 P0																; remove any tool without any movements
      
      ; set tool change positions in X and Y
      global tool0_posX = -16.3											; Set toolposition X for Tool 0
      global tool0_posY = 315.9											; Set toolposition Y for Tool 0
      
      M98 P"Actual Toolnumber.html" 										; call and set actual Toolnumber form file sys/Actual Toolnuber
      
      M501																; Restore parameter from config-override.g
      

      My emergency stop cut of the power from the duet board directly so it simulates like an conventional power outage/blackout. I configured it a while ago and it worked out with the emergency stop. Since the last time i tested it, i had a few RFF updates, so maybe there could be an issue.

      posted in Tuning and tweaking
      Philipp.R
      Philipp.R
    • resurrect.g file does not finish correctly

      Hello,

      today i tried to configure M911 " Configure auto save on loss of power".

      It worked only until a certain point of the procedure.

      1.print started
      2.hit emergency button
      4.start printer
      3.typed M916 into console
      4.procedure begins
      5.resurrect.g also is created and resurrect-prologue.g within the resurrect.g is also executed
      6.Stops after heating to preious temp and getting the right tool
      7.print doesn't resume

      Here my code:

      line in Config.g

      M911 S21.9 R23.0 P"M913 X0 Y0 G91 M83 G1 E-3 Z3 F800"				; Autosave at Powerfailure
      

      resurrect.g

      ; File "0:/gcodes/mng.gcode" resume print after print paused at 2021-07-28 16:36
      G21
      M140 P0 S80.0
      G29 S1
      T-1 P0
      G92 X191.590 Y158.915 Z-13.630
      G60 S1
      G10 P0 S0 R0
      G10 P2 S0 R0
      G10 P3 S0 R0
      G10 P1 S200 R200
      T1 P0
      M98 P"resurrect-prologue.g"
      M116
      M290 X0.000 Y0.000 Z0.000 R0
      T-1 P0
      T1 P6
      ; Workplace coordinates
      G10 L2 P1 X0.00 Y0.00 Z0.00
      G10 L2 P2 X65.00 Y134.00 Z0.00
      G10 L2 P3 X152.00 Y160.00 Z0.00
      G10 L2 P4 X237.00 Y185.00 Z0.00
      G10 L2 P5 X0.00 Y0.00 Z0.00
      G10 L2 P6 X0.00 Y0.00 Z0.00
      G10 L2 P7 X0.00 Y0.00 Z0.00
      G10 L2 P8 X0.00 Y0.00 Z0.00
      G10 L2 P9 X0.00 Y0.00 Z0.00
      G54
      M106 S0.00
      M106 P0 S0.00
      M116
      G92 E0.00000
      M83
      M486 S0 A"Process1"
      M486 S0G17
      M23 "0:/gcodes/mng.gcode"
      M26 S18283
      G0 F6000 Z2.150
      G0 F6000 X191.590 Y158.915
      G0 F6000 Z0.150
      G1 F2100.0 P0
      G21
      M24
      

      the procedure stop at least at line 17 in resurrect.g.
      So by the way what exactly does "T1 P6" mean? Couldn't figure it out. Maybe to set the coordinate system P6 below?

      Is there a special order dependency for M911 in config.g?

      I'm using:
      Duet2Ethernet + Duex Expansionboard 5 channel
      RRF 3.3

      posted in Tuning and tweaking
      Philipp.R
      Philipp.R
    • RE: Cancel movement with trigger

      @benecito one way to go is to set up a trigger#.g file and try to disable Motormovements/currents of the E-Motor in this file when hitting your physical switch. See: https://duet3d.dozuki.com/Wiki/Gcode#Section_M18_Disable_all_stepper_motors

      Also there are alot of possibilities with object model

      posted in General Discussion
      Philipp.R
      Philipp.R