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

    [3.6.0-rc.2] changed behaviour while homing on coreXY

    Scheduled Pinned Locked Moved Unsolved
    Beta Firmware
    4
    9
    398
    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.
    • marvineerundefined
      marvineer
      last edited by

      Hi folks, today I updated to 3.6-rc2.

      Everything was working fine until I tried to home the machine.
      Then I noticed that when homing to y, the tool head moves diagonally instead of just moving to the y end stop. I had a surprised face and lets say I am grateful for the HW estop 🙂

      Its an e3d tool changer (coreXY) and I have the following file homey.g (minimal example) that worked as I intended it in 3.5.4:

      ; homey.g
      ; called to home the Y axis
      
      G91					; relative positioning
      M400					; make sure everything has stopped before we change the motor currents
      M913 X20 Y20				; drop motor currents to 20%
      G1 H2 X2 F1800				; move x so that the endstop is free to pass
      G1 H1 Y-282 F1800			; move quickly to Y axis endstop and stop there (first pass)
      G1 Y2 F1000				; go back a few mm
      G1 H1 Y-5 F300				; move slowly to Y axis endstop once more (second pass)
      
      G90               			; absolute positioning
      
      M400 						; make sure everything has stopped before we reset the motor currents
      M913 X100 Y100 				; motor currents back to 100%
      

      So, the problem I found lighs in line 7: There I want to make shure to leave room for the X endstop to pass.
      This moves the toolhead out of way enough. After that the homing sequence for y begins.

      the homing move in line 8:
      3.5.4: moves straight to the y endstop, the machine moves only in y
      3.6-rc.2: moves diagonally towards y and x endstop

      When i comment out line 7 ;G1 H2 X2 F1800 the homing sequence for y is performed now, but of course there is possibly not enough room to pass the x endstop while doing so.

      Was there a change in behaviour since 3.5.4 that didnt make it into the release notes or did I miss something? Or is this unintended behaviour?
      Thanks in advance!

      jay_s_ukundefined dc42undefined 2 Replies Last reply Reply Quote 0
      • jay_s_ukundefined
        jay_s_uk @marvineer
        last edited by

        @marvineer G1 H2 on a coreXY setup will only move a single motor. That's intended.
        I'm also pretty sure this has been this behaviour for ages so what you're describing for 3.6 is correct behaviour

        Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

        marvineerundefined 1 Reply Last reply Reply Quote 0
        • marvineerundefined
          marvineer @jay_s_uk
          last edited by

          @jay_s_uk Yep, maybe I was not clear in my first post:

          The point is: line 8 behavs differently depending if line 7 is commented out or not.
          Thats where the sense stops making sense to me 🙂

          This is the difference in behaviour for me:
          8eb231de-cf0f-4594-a141-37de1e03d163-image.png

          In fact, this returns the old, intended behaviour:

          G1 H2 X2 F1800				; move x so that the endstop is free to pass
          M400
          G1 H1 Y-282 F1800			; move quickly to Y axis endstop and stop there (first pass)
          
          1 Reply Last reply Reply Quote 0
          • dc42undefined
            dc42 administrators @marvineer
            last edited by dc42

            @marvineer my toolchanger is working correctly when homing, however the G1 H2 moves in my homing files have both X and Y parameters so as to move in either the X or the Y direction: For example:

            ; homex.g
            ; called to home the x axis
            ; DC42 reduced stall sensitivity from 4 to 2
            ; DC42 replaced G1 S parameters by H
            ; DC42 removed redundant G4 and M574 commands
            
            G91 				; use relative positioning
            
            G1 H2 X0.5 Y0.5 F10000	; energise motors to ensure they are not stalled
            
            M400 				; make sure everything has stopped before we change the motor currents
            M913 X25 Y25 		; drop motor currents to 25%
            
            G1 H2 Z3 F5000		; lift Z 3mm
            G1 H1 X-400 F3000 	; move left 400mm, stopping at the endstop
            G1 H2 X2 Y2 F2000 	; move away from end
            G1 H1 X-400 F3000 	; repeat the homing move because it doesn't always work first time
            G1 H2 X2 Y2 F2000 	; move away from end
            G1 H2 Z-3 F1200		; lower Z
            G90 				; back to absolute positioning
            
            M400 				; make sure everything has stopped before we reset the motor currents
            M913 X100 Y100 		; motor currents back to 100%
            

            PS - does it make any difference if you use M17 X Y first to enable both motors?

            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

            marvineerundefined 1 Reply Last reply Reply Quote 0
            • marvineerundefined
              marvineer @dc42
              last edited by marvineer

              @dc42 Hi!

              The following also doesnt work:

              M913 X20 Y20 		        ; drop motor currents to 20%
              M17 X Y
              G1 H2 X2 F1800           ; move in x so that the endstop is free to pass (individual motor mode)
              M17 X Y
              G1 H1 Y-282 F1800           ; move quickly to Y axis endstop and stop there (first pass)
              G0 Y2                       ; go back a few mm
              

              I changed my homing script to the following (note the Y2 in the G1 H2 command). And now the move works as intended. This also is a bit cleaner anyways:

              G91               			; relative positioning
              M400 				        ; make sure everything has stopped before we change the motor currents
              M913 X20 Y20 		        ; drop motor currents to 20%
              G1 H2 X2 Y2 F1800           ; move in x so that the endstop is free to pass (individual motor mode)
              G1 H1 Y-282 F1800           ; move quickly to Y axis endstop and stop there (first pass)
              G0 Y2                            ; go back a few mm
              G1 H1 Y-4 F300              ; move slowly to Y axis endstop once more (second pass)
              G90               			; absolute positioning
              ...
              

              I still think the behavoir in my first script is not as it should be?
              But I can live well with this simple change. Thank you very much!

              dc42undefined 2 Replies Last reply Reply Quote 0
              • marvineerundefined marvineer marked this topic as a question
              • marvineerundefined marvineer has marked this topic as solved
              • dc42undefined
                dc42 administrators @marvineer
                last edited by

                @marvineer thanks, I'll take a look at 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

                1 Reply Last reply Reply Quote 0
                • dc42undefined dc42 has marked this topic as unsolved
                • dc42undefined
                  dc42 administrators @marvineer
                  last edited by

                  @marvineer I'm sorry, I can't reproduce that. I ran this macro file after power up, before any other motor movement and wihtur sending any M17 commands first:

                  ; homey.g
                  ; called to home the Y axis
                   
                  G91					; relative positioning
                  M400					; make sure everything has stopped before we change the motor currents
                  M913 X20 Y20				; drop motor currents to 20%
                  G1 H2 X2 F1800				; move x so that the endstop is free to pass
                  G1 H1 Y-282 F3000			; move quickly to Y axis endstop and stop there (first pass)
                  G1 Y2 F1000				; go back a few mm
                  ;G1 H1 Y-5 F300				; move slowly to Y axis endstop once more (second pass)
                  

                  This is similar to your file except that I had to increase the speed of the G1 H1 move to F3000 because I am using stall detect endstops. The head moves diagonally for the 2mm move and in the Y direction for the homing move.

                  Could it be that 20% current is not always enough to move the motor on your machine?

                  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

                  marvineerundefined 1 Reply Last reply Reply Quote 0
                  • marvineerundefined
                    marvineer @dc42
                    last edited by marvineer

                    @dc42 Hi! I have increased the motor current to 40 percent during homing -> still the same
                    I have reduced the speed even further but still the same.
                    I do not notice the clicking sound of skipped steps either, so I still think there are no steps being sent to the right motor (looking from the front)

                    I am out of ideas, but maybe you have something to try for me?

                    This is the response of M122:

                    === Diagnostics ===
                    RepRapFirmware for Duet 3 MB6HC version 3.6.0-rc.2 (2025-03-31 12:17:13) running on Duet 3 MB6HC v1.0 or earlier (SBC mode)
                    Board ID: 08DJM-956L2-G43S4-6JTD4-3SS6J-TA7GH
                    Used output buffers: 1 of 40 (36 max)
                    === RTOS ===
                    Static ram: 137420
                    Dynamic ram: 101532 of which 356 recycled
                    Never used RAM 104604, free system stack 142 words
                    Tasks: SBC(2,nWait 7,1.9%,793) HEAT(3,nWait 6,0.0%,325) Move(4,nWait 6,0.0%,242) TMC(4,nWait 6,3.0%,343) CanReceiv(6,nWait 1,0.1%,796) CanSender(5,nWait 7,0.0%,334) CanClock(7,delaying,0.0%,350) MAIN(1,running,94.6%,101) IDLE(0,ready,0.4%,29) USBD(3,blocked,0.0%,149), total 100.0%
                    Owned mutexes: HTTP(MAIN)
                    === Platform ===
                    Last reset 00:04:31 ago, cause: power up
                    Last software reset at 2025-04-06 15:09, reason: User, Platform spinning, available RAM 104084, slot 2
                    Software reset code 0x2000 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0043c000 BFAR 0x00000000 SP 0x00000000 Task SBC Freestk 0 n/a
                    === Storage ===
                    Free file entries: 20
                    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 ===
                    Segments created 6, maxWait 126600ms, bed comp in use: none, height map offset 0.000, hiccups added 0/0 (0.00/0.00ms), max steps late 0, ebfmin 0.00, ebfmax 0.00
                    Pos req/act/dcf: -31536.00/-31536/0.00 -2000.00/-2000/0.00 16000.00/16000/0.00 0.00/0/0.00 0.00/0/0.00
                    Next step interrupt due in 9 ticks, disabled
                    Driver 0: standstill, SG min 14, mspos 8, reads 18409, writes 26 timeouts 0
                    Driver 1: standstill, SG min 40, mspos 776, reads 18403, writes 32 timeouts 0
                    Driver 2: standstill, SG min 26, mspos 696, reads 18403, writes 32 timeouts 0
                    Driver 3: standstill, SG min n/a, mspos 8, reads 18417, writes 18 timeouts 0
                    Driver 4: standstill, SG min n/a, mspos 8, reads 18417, writes 18 timeouts 0
                    Driver 5: standstill, SG min n/a, mspos 8, reads 18417, writes 18 timeouts 0
                    Phase step loop runtime (us): min=0, max=38, frequency (Hz): min=1865, max=2148
                    === DDARing 0 ===
                    Scheduled moves 12, completed 12, LaErrors 0, Underruns [0, 0, 0]
                    Segments left 0, axes/extruders owned 0x00000000, drives owned 0x00000000
                    Code queue is empty
                    === DDARing 1 ===
                    Scheduled moves 0, completed 0, LaErrors 0, Underruns [0, 0, 0]
                    Segments left 0, axes/extruders owned 0x00000000, drives owned 0x00000000
                    Code queue is empty
                    === Heat ===
                    Bed heaters 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamber heaters -1 -1 -1 -1 -1 -1 -1 -1, ordering errs 0
                    === GCodes ===
                    Movement locks held by null, 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
                    File2 is idle in state(s) 0
                    Queue2 is idle in state(s) 0
                    === Filament sensors ===
                    Driver 29: no data received, errs: frame 0 parity 0 ovrun 0 pol 0 ovdue 0
                    === CAN ===
                    Messages queued 2321, received 8507, lost 0, ignored 0, errs 0, boc 0
                    Longest wait 1ms for reply type 6028, peak Tx sync delay 329, free buffers 50 (min 49), ts 1287/1286/0
                    Tx timeouts 0,0,0,0,0,0
                    === SBC interface ===
                    Transfer state: 5, failed transfers: 0, checksum errors: 0
                    RX/TX seq numbers: 41930/41930
                    SPI underruns 0, overruns 0
                    State: 5, disconnects: 0, timeouts: 0 total, 0 by SBC, IAP RAM available 0x27a7c
                    Buffer RX/TX: 0/0-0, open files: 0
                    === Duet Control Server ===
                    Duet Control Server version 3.6.0-rc.2 (2025-03-31 10:53:52, 64-bit)
                    HTTP+Executed:
                    > Executing M122
                    Code buffer space: 4096
                    Configured SPI speed: 8000000Hz, TfrRdy pin glitches: 0
                    Full transfers per second: 0.31, max time between full transfers: 141.5ms, max pin wait times: 27.1ms/15.0ms
                    Codes per second: 0.00
                    Maximum length of RX/TX data transfers: 5013/796
                    

                    And this is my config.g:

                    ; here we define everything connected to the main board
                    
                    ; General preferences
                    G90                                                                  ; send absolute coordinates...
                    M83                                                                  ; ...but relative extruder moves
                    M550 P"MultiPrint"                                                   ; set printer name
                    M669 K1                                                              ; select CoreXY mode
                    M80 C"!pson"                                                         ; invert the PS_ON output for Meanwell power supply
                    
                    
                    ; Network
                    ;M552 P0.0.0.0 S1                                                    ; enable network and set IP address
                    ;M553 P255.255.255.0                                                 ; set netmask
                    ;M554 P192.168.1.254                                                 ; set gateway
                    ;M586 P0 S1                                                          ; enable HTTP
                    ;M586 P1 S0                                                          ; disable FTP
                    ;M586 P2 S0                                                          ; disable Telnet
                    
                    
                    ; PanelDue 5.0i with custom logo
                    M575 P1 S1 B115200
                    
                    
                    ; wait for expansion boards to start
                    G4 S1
                    
                    ; lower SPI transfer max wait Time for quicker system respone (default 25 ms and 5ms if file open)
                    ; ignore this if 3 or more events are in queue
                    M576 S6 F3 P3
                    
                    
                    ; Define inputs and their trigger if necessary
                    M950 J5 C"^io5.in"                                                   ; input 5 - ActiveToolDetect (Tool Detect Switch)
                    
                    M950 J6 C"^io7.in"                                                   ; input 6 - OpenDoorDetect
                    M581 P6 T2 S1 R0                                                     ; define rising edge trigger --> door opened (trigger2.g)
                    M581 P6 T3 S0 R0                                                     ; define falling edge trigger --> door closed (trigger3.g)
                    M582 T2                                                              ; check for trigger (necessary, we might start with door open)
                    
                    M950 J7 C"^io8.in"                                                   ; input 7 - E-Stop (trigger 0)
                    M581 P7 T0 S1 R0                                                     ; define rising edge trigger --> emergency stop (M112) (NOT-HALT)
                    
                    ; check if e-stop is triggerd at startup
                    if sensors.gpIn[7].value == 1
                    	M291 T0 P"pull e-stop and reset machine to continue" R"e-stop is active"
                    	M300
                    	M582 T0
                    	abort "e-stop is active - pull e-stop and reset machine to continue"
                    
                    ; Lights
                    M950 P0 C"1.out1" Q500                                               ; main
                    M950 P1 C"1.out0" Q500                                               ; head
                    if sensors.gpIn[6].value == 1
                    	; door is closed
                    	M98 P"/macros/Lights/set.g" D"main" B0.75                           ; turn on main light
                    else
                    	M98 P"/macros/Lights/set.g" D"main" B0.05
                    
                    ; LED Strip
                    M950 E0 U18 T1 C"0.led"
                    
                    
                    ; Drives                   D3: stealthChop2            V4000: switch from stealthChop to to spreadCycle mode at 0.1 mm/sec speed (quiet at standstill) 
                    M569 P0.2 S0                                                         ; physical drive 0.2 goes backwards   (X  - Axis)
                    M569 P0.1 S0                                                         ; physical drive 0.1 goes backwards   (Y  - Axis)
                    M569 P0.0 S1                                                         ; physical drive 0.0 goes forwards    (Z  - Axis)
                    M569 P0.3 S0                                                         ; physical drive 0.3 goes backwards   (C  - COUPLER)
                    M569 P1.0 S1                                                         ; physical drive 1.0 goes forwards    (B  - BRUSH)
                    M569 P0.4 S1                                                         ; physical drive 0.4 goes forwards    (E0 - V6)
                    M569 P0.5 S1                                                         ; physical drive 0.5 goes forwards    (E1 - Volcano)
                    M569 P121.0 S0                                                       ; physical drive 121.0 goes forwards  (E2 - HighTemp Direct)
                    
                    M584 X0.2 Y0.1 Z0.0 C0.3 B1.0 E0.4:0.5:121.0                         ; set drive mapping
                    M350 X16 Y16 Z16 B16 E16:16:16    I1                                 ; configure microstepping with interpolation
                    M350 C16 I0                                                          ; configure microstepping without interpolation
                    M92 X100 Y100 Z1600 C91.022 B128 E400:400:400                        ; set steps per mm
                    M98 P"/macros/Speeds/set_speed.g" S"startup"                         ; set speeds, jerk and accel. for the beginning
                    M566 Z20 C2 B8 E450:900:450                                          ; set maximum instantaneous speed changes (mm/min)
                    M203 Z800 C8000 B1000 E4500:5500:4500                                ; set maximum speeds (mm/min)
                    M201 Z400 C500 B500 E10000:23000:6000                                ; set accelerations (mm/s^2)
                    M906 X1800 Y1800 Z1130 B500 I20                                      ; set motor currents (mA) and motor idle factor in per cent (X Y Z B)
                    M906 C500 E1000:1000:1000 I10                                        ; set motor currents (mA) and motor idle extruder motors to 10%
                    M84 S15                                                              ; Set idle timeout
                    
                    
                    ;spindle
                    M950 R0 C"^vfd" Q900 L10000                                          ; Spindle 0 uses out9/vfd as RPM pin with 200 Hz PWM freq and has a max RPM of 10000
                    
                    ; limits
                    M98 P"/macros/Boundaries/ToolHead.g"                                 ; set dynamic axis Limits
                    M208 Z0:264.6 C-45:360 B0:23                                         ; set static axis limits (min:max)
                    
                    
                    ; Endstops
                    M574 X1 S1 P"^io3.in"                                                ; configure active-high endstop for low end on X via pin ^io1.in
                    M574 Y1 S1 P"^io4.in"                                                ; configure active-high endstop for low end on Y via pin ^io2.in
                    M574 Z2 S1 P"^io2.in"                                                ; configure active-high endstop for high end on Z via pin ^io7.in
                    M574 C0                                                              ; No C endstop
                    M574 B1 S1 P"^1.io3.in"                                              ; configure active-high endstop for low end on B via pin ^io5.in
                    
                    ; Z-Probe
                    M558 P8 C"io1.in" H2.5:0.7 F600:300 I0 A8 S0.003 T20000              ; set Z probe type to switch and the dive height + speeds
                    G31 P200 X0 Y0 Z0                                                    ; set Z probe trigger value, offset and trigger height
                    M557 X-140:140 Y-90:90 S20:30                                        ; Define mesh grid
                    
                    
                    ;Stall Detection
                    M915 X Y S5 F1 R1                                                    ; X and Y Axes
                    
                    
                    ; Heaters
                    M308 S0 P"temp0" Y"thermistor" A"Bed" T100000 B4138                  ; configure sensor 0 as thermistor on pin temp0
                    ; BED                                                                ; correction val for port "temp0": H=-19; L=0
                    M950 H0 C"out0" T0 Q5                                                ; create bed heater output on out0 and map it to sensor 0 with a PWM freq of 5 Hz
                    M307 H0 B0 R1.240 C413.8 D3.17 S1                                    ; disable bang-bang mode for the bed heater and set PWM limit
                    M140 H0                                                              ; map heated bed to heater 0
                    M143 H0 S200                                                         ; set temperature limit for bed heater 0 to 200C
                    
                    M308 S1 P"temp1" Y"thermistor" A"T0" T100000 B4138                   ; configure sensor 1 as thermistor on pin temp3
                    ; TOOL 0                                                             ; correction val for port "temp3": H=-7; L=13
                    M950 H1 C"out1" T1                                                   ; create nozzle heater output on out3 and map it to sensor 1 
                    M307 H1 R2.320 K0.406:0.085 D5.66 E1.35 S1.00 B0 V24.0               ; disable bang-bang mode for heater and set PWM limit
                    M143 H1 S285                                                         ; set temperature limit for heater 1 to 285C
                    
                    M308 S2 P"temp2" Y"thermistor" A"T1" T100000 B4138                   ; configure sensor 2 as thermistor on pin temp3
                    ; TOOL 1                                                             ; correction val for port "1.temp0": H=-6; L=3
                    M950 H2 C"out2" T2                                                   ; create nozzle heater output on 1.out1 and map it to sensor 2    
                    M307 H2 R2.016 K0.366:0.030 D5.70 E1.35 S1.00 B0 V24.5               ; disable bang-bang mode for heater and set PWM limit
                    M143 H2 S285                                                         ; set temperature limit for heater 2 to 285C
                    
                    M308 S3 P"121.temp0" Y"thermistor" A"T2" T100000 B4138               ;configure sensor 3 as thermistor on pin 121.temp0
                    ; TOOL 2                                                             ; correction val for port "121.temp0": H=-13; L=0
                    M950 H3 C"121.out0" T3                                               ; create nozzle heater output on 121.out0 and map it to sensor 3
                    M307 H3 R2.409 K0.350:0.180 D5.36 E1.35 S1.00 B0 V23.9               ; disable bang-bang mode for heater  and set PWM limit
                    M143 H3 S250                                                         ; set temperature limit for heater 3 to 250C
                    
                    
                    ; Fans
                    M950 F0 C"out4" Q500                                                 ; create fan 0 on pin out9 and set its frequency
                    M106 P0 S0 H-1 L0.2 C"T0"                                            ; set fan 0 value. Thermostatic control is turned off
                    M950 F1 C"out7" Q500                                                 ; create fan 1 on pin out8 and set its frequency
                    M106 P1 S1 H1 T60                                                    ; set fan 1 value. Thermostatic control is turned on
                    
                    M950 F2 C"out5" Q500                                                 ; create fan 2 on pin 1.out6 and set its frequency
                    M106 P2 S0 H-1 L0.2 C"T1"                                            ; set fan 2 value. Thermostatic control is turned off
                    M950 F3 C"out8" Q500                                                 ; create fan 3 on pin 1.out7 and set its frequency
                    M106 P3 S1 H2 T60                                                    ; set fan 3 value. Thermostatic control is turned on
                    
                    M950 F4 C"121.out1" Q500                                             ; create fan 4 on pin 121.out1 and set its frequency
                    M106 P4 S0 H-1 L0.4 C"T2"                                            ; set fan 4 value. Thermostatic control is turned off
                    M950 F5 C"121.out2" Q500                                             ; create fan 5 on pin 121.out2 and set its frequency
                    M106 P5 S1 H3 T60                                                    ; set fan 5 value. Thermostatic control is turned on
                    
                    M950 F6 C"!out6+out6.tach" Q500                                      ; create fan 6 on pin out4, this is a PWM fan so the output needs to be inverted, and using out4.tach as a tacho input
                    M106 P6 S0 H-1 C"Filterbox"                                          ; set fan 6 value. Thermostatic control is turned off
                    M106 P6 S0
                    
                    ; Input Shaping
                    ;M593 P"zvdd" F42.2						                             ; cancel ringing at 42.2Hz
                                                                                         ;(https://forum.e3d-online.com/threads/accelerometer-and-resonance-measurements-of-the-motion-system.3445/)
                    
                    ; Tools
                    M563 P0 S"V6 Bowden" D0 H1 F0                                        ; define tool 0
                    G10 P0 X-8.02 Y38.97 Z-4.68                                          ; set tool 0 axis offsets
                    G10 P0 R0 S0                                                         ; set initial tool 0 active and standby temperatures to 0C
                    M572 D0 S0.2                                                         ; pressure advance T0
                    M308 S8 Y"linear-analog" P"1.io0.in" A"T0FilamentScale" B-65 C3240   ; Filament Weight Scale for tool 0
                    
                    M563 P1 S"Volcano Bowden" D1 H2 F2                                   ; define tool 1
                    G10 P1 X-7.92 Y38.96 Z-13.2                                          ; set tool 1 axis offsets
                    G10 P1 R0 S0                                                         ; set initial tool 1 active and standby temperatures to 0C
                    M572 D1 S0.3                                                         ; pressure advance T1
                    M308 S9 Y"linear-analog" P"1.io1.in" A"T1FilamentScale" B45 C4100    ; Filament Weight Scale for tool 1
                    
                    M563 P2 S"Hemera Direct" D2 H3 F4                                    ; define tool 2
                    G10 P2 X21.05 Y43.75 Z-5.7                                           ; set tool 2 axis offsets
                    G10 P2 R0 S0                                                         ; set initial tool 2 active and standby temperatures to 0C
                    M591 D2 P3 C"121.io1.in"                                             ; Configure filament sensing for tool 2
                    M572 D2 S0.05                                                        ; pressure advance T2
                    M308 S10 Y"linear-analog" P"1.io2.in" A"T2FilamentScale" B-233 C8500 ; Filament Weight Scale for tool 2
                    
                    M563 P3 S"Spindle" R0                                                ; define tool 3
                    G10 P3 X0 Y52.50 Z-78.7                                              ; set tool 3 axis offsets
                    
                    M563 P4 S"Pen"                                                       ; define tool 4
                    G10 P4 X0 Y50.0 Z-21.0                                               ; set tool 4 axis offsets
                    
                    
                    ; PowerFail Script (use M916 to resume the print from where it stopped)
                    M911 S23.6 R23.8 P"M913 X0 Y0"                                       ; set voltage thresholds and actions to run on power loss
                    
                    
                    ;MCU Temp Calibration
                    M912 P0 S8                                                           ;room temp: 20°C (reportet MCU temp right after startup: 12°C)
                    M308 S5 Y"mcu-temp" A"6HC MCU"                                       ;show MCU-temp of Mainboard (MB6HC) in DWC (Tools -> Extra) Graph
                    M308 S6 Y"mcu-temp" P"1.dummy" A"3HC MCU"                            ;show MCU-temp of CAN expansion board 1 (3HC) in DWC (Tools -> Extra) Graph
                    M308 S7 Y"mcu-temp" P"121.dummy" A"1LC MCU"                          ;show MCU-temp of CAN expansion board 121 (1LC) in DWC (Tools -> Extra) Graph
                    
                    ;DHT Sensor (temp and humidity)
                    M308 S11 P"io6.out" Y"dht22" A"Chamber"                              ; define DHT22 temperature sensor
                    M308 S12 P"S11.1" Y"dhthumidity" A"Rel. Humidity[%]"                 ; attach DHT22 humidity sensor to secondary output of temperature sensor
                    
                    

                    If you or anyone suspect something inside a called macro, you can have a look at my public repo:
                    https://github.com/marvineer98/MultiPrint_RRF_config/tree/backup

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

                      @marvineer What exactly are you seeing happen? As reported by dc42 he sees an initial diagonal move followed by a Y direction move for the homing move. Is that different to what you are seeing? Perhaps if you post a video of what you are seeing that will help? My understanding is that you should see what dc42 has reported and that is the expected movement.

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