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

    trouble with homing the x and y axes on a core xy printer.

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    4
    33
    1.8k
    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.
    • campeancalinundefined
      campeancalin @fcwilt
      last edited by

      @fcwilt do these commands work if the version of the firmware is 2.03?

      Vetiundefined fcwiltundefined 2 Replies Last reply Reply Quote 0
      • Vetiundefined
        Veti @campeancalin
        last edited by

        @campeancalin
        your config file does not work with RRF2

        campeancalinundefined 1 Reply Last reply Reply Quote 0
        • campeancalinundefined
          campeancalin @Veti
          last edited by

          @Veti Can you be a bit more specific?

          Vetiundefined 1 Reply Last reply Reply Quote 0
          • Vetiundefined
            Veti @campeancalin
            last edited by

            @campeancalin

            the pin configuration syntax only works in rrf3
            M574 X1 S1 P"xstop" ; configure active-high endstop for low end on X via pin xstop
            M574 Y1 S1 P"ystop" ; configure active-high endstop for low end on Y via pin ystop

            1 Reply Last reply Reply Quote 0
            • fcwiltundefined
              fcwilt @campeancalin
              last edited by fcwilt

              @campeancalin said in trouble with homing the x and y axes on a core xy printer.:

              @fcwilt do these commands work if the version of the firmware is 2.03?

              Yes they do.


              But a set of files generated for v3 firmware will not work with v2 firmware without some changes.

              I would go ahead and update the firmware to v3.

              First update using Duet2and3Firmware-3.0.zip.

              When asked allow it to update.

              Then update using Duet2and3Firmware-3.1.1.zip

              When asked allow it to update.

              You can upload each ZIP file on the System page.

              Duet System Page.jpg

              Frederick

              Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

              1 Reply Last reply Reply Quote 1
              • Phaedruxundefined
                Phaedrux Moderator
                last edited by

                Once you update to 3.1.1 your current config has a better chance of working.

                You should probably redo the motor direction tests for corexy after you update.

                https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCoreXYPrinter#Section_Testing_motor_movement

                Z-Bot CoreXY Build | Thingiverse Profile

                1 Reply Last reply Reply Quote 0
                • campeancalinundefined
                  campeancalin
                  last edited by

                  Thank you kindly. I was not aware of these differences

                  1 Reply Last reply Reply Quote 0
                  • Phaedruxundefined
                    Phaedrux Moderator
                    last edited by

                    Since you're starting from scratch it doesn't much matter, but here are the details.

                    https://duet3d.dozuki.com/Wiki/RepRapFirmware_3_overview

                    Z-Bot CoreXY Build | Thingiverse Profile

                    1 Reply Last reply Reply Quote 0
                    • campeancalinundefined
                      campeancalin
                      last edited by Phaedrux

                      Hello guys,
                      Thank you again for the heads up regarding the differencies between the machine config and the firmware that was on the board.
                      Today I went on and upgraded the firmware on the board, and reuploaded the machine config. At a first glance, the xy gantry seems to move in the right direction ; I still cant perform the homing on them. I also moved the z axis, on which I have 2 in series motors ( ZA and ZB are being used to control them), and while the z axis is performing the required movement , the E0 extruder motor is also moving.
                      Bellow you can see the M122 report:

                      M122
                      === Diagnostics ===
                      RepRapFirmware for Duet 2 WiFi/Ethernet version 3.1.1 running on Duet WiFi 1.02 or later + DueX5
                      Board ID: 08DGM-917NK-F23T0-6JKFG-3S46S-1HAJF
                      Used output buffers: 3 of 24 (11 max)
                      === RTOS ===
                      Static ram: 27980
                      Dynamic ram: 94972 of which 20 recycled
                      Exception stack ram used: 408
                      Never used ram: 7692
                      Tasks: NETWORK(ready,292) HEAT(blocked,1224) DUEX(suspended,160) MAIN(running,1824) IDLE(ready,80)
                      Owned mutexes: WiFi(NETWORK)
                      === Platform ===
                      Last reset 00:10:43 ago, cause: software
                      Last software reset at 2020-10-06 17:51, reason: User, spinning module GCodes, available RAM 7700 bytes (slot 1)
                      Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0xffffffff Task MAIN
                      Error status: 0
                      MCU temperature: min 32.7, current 33.3, max 34.0
                      Supply voltage: min 23.8, current 24.0, max 24.3, under voltage events: 0, over voltage events: 0, power good: yes
                      Driver 0: standstill, SG min/max not available
                      Driver 1: standstill, SG min/max not available
                      Driver 2: standstill, SG min/max 0/260
                      Driver 3: standstill, SG min/max 0/51
                      Driver 4: standstill, SG min/max not available
                      Driver 5: standstill, SG min/max not available
                      Driver 6: standstill, SG min/max not available
                      Driver 7: standstill, SG min/max not available
                      Driver 8: standstill, SG min/max not available
                      Driver 9: standstill, SG min/max not available
                      Date/time: 2020-10-06 18:02:09
                      Cache data hit count 1128396488
                      Slowest loop: 6.69ms; fastest: 0.12ms
                      I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
                      === Storage ===
                      Free file entries: 10
                      SD card 0 detected, interface speed: 20.0MBytes/sec
                      SD card longest read time 3.2ms, write time 0.0ms, max retries 0
                      === Move ===
                      Hiccups: 0(0), FreeDm: 169, MinFreeDm: 168, MaxWait: 314759ms
                      Bed compensation in use: none, comp offset 0.000
                      === MainDDARing ===
                      Scheduled moves: 2, completed moves: 2, StepErrors: 0, LaErrors: 0, Underruns: 0, 0  CDDA state: -1
                      === AuxDDARing ===
                      Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0  CDDA state: -1
                      === Heat ===
                      Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
                      === GCodes ===
                      Segments left: 0
                      Movement lock held by 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
                      Daemon is idle in state(s) 0
                      Autopause is idle in state(s) 0
                      Code queue is empty.
                      === Network ===
                      Slowest loop: 39.91ms; fastest: 0.00ms
                      Responder states: HTTP(2) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions
                      HTTP sessions: 1 of 8
                      - WiFi -
                      Network state is active
                      WiFi module is connected to access point 
                      Failed messages: pending 0, notready 0, noresp 0
                      WiFi firmware version 1.23
                      WiFi MAC address ec:fa:bc:02:17:e5
                      WiFi Vcc 3.42, reset reason Unknown
                      WiFi flash size 4194304, free heap 25336
                      WiFi IP address 192.168.0.100
                      WiFi signal strength -65dBm, reconnections 0, sleep mode modem
                      Socket states: 0 0 0 0 0 0 0 0
                      === DueX ===
                      Read count 1, 0.09 reads/min
                      

                      Also, the config file is detailed bellow . There might be several issues in it , but as a first step I need to take care of the movements and the homing issues.

                      ; Configuration file for Duet WiFi (firmware version 3)
                      ; executed by the firmware on start-up
                      ;
                      ; generated by RepRapFirmware Configuration Tool v3.1.4 on Mon Oct 05 2020 11:50:08 GMT+0300 (Eastern European Summer Time)
                      
                      ; General preferences
                      G90                                                ; send absolute coordinates...
                      M83                                                ; ...but relative extruder moves
                      M550 P"Oscar"                                      ; set printer name
                      M669 K1                                            ; select CoreXY mode
                      
                      ; Network
                      M551 P""                                           ; set password
                      M552 S1                                            ; enable network
                      M586 P0 S1                                         ; enable HTTP
                      M586 P1 S1                                         ; enable FTP
                      M586 P2 S0                                         ; disable Telnet
                      
                      ; Drives
                      M584 X1 Y0 Z2:3 E4:5                               ; set drive mapping; INIT:X=0; Y=1; Z2;E3:4
                      M569 P0 S0                                         ; physical drive 0 goes backwards
                      M569 P1 S0                                         ; physical drive 1 goes backwards
                      M569 P2 S1                                         ; physical drive 2 goes FORWARDS
                      M569 P3 S1                                         ; physical drive 3 goes FORWARDS
                      M569 P4 S0                                         ; physical drive 4 goes backwards
                      M569 P5 S0                                         ; physical drive 5 goes backwards
                      
                      M350 X16 Y16 Z16:16 E16:16 I1                     	   ; configure microstepping with interpolation ; INIT- M350 X16 Y16 Z16 E16:16 I1
                      M92 X160.00 Y160.00 Z3200.00:3200.00 E420.00:420.00        ; set steps per mm
                      M566 X900.00 Y900.00 Z12.00:12.00 E120.00:120.00           ; set maximum instantaneous speed changes (mm/min)
                      M203 X6000.00 Y6000.00 Z180.00:180.00 E1200.00:1200.00     ; set maximum speeds (mm/min)
                      M201 X500.00 Y500.00 Z20.00:20.00 E250.00:250.00           ; set accelerations (mm/s^2)
                      M906 X1400 Y1400 Z1200:1200 E800:800 I80                   ; set motor currents (mA) and motor idle factor in per cent
                      M84 S30                                                    ; Set idle timeout
                      
                      ; Axis Limits
                      M208 X0 Y0 Z0 S1                                   ; set axis minima
                      M208 X500 Y500 Z500 S0                             ; set axis maxima
                      
                      ; Endstops
                      M574 X1 S1 P"xstop"                                ; configure active-high endstop for low end on X via pin xstop
                      M574 Y1 S1 P"ystop"                                ; configure active-high endstop for low end on Y via pin ystop
                      M574 Z1 S2                                         ; configure Z-probe endstop for low end on Z
                      
                      ; Z-Probe
                      M950 S0 C"duex.e5heat"                             ; create servo pin 0 for BLTouch
                      M558 P9 C"^zprobe.in" H5 F120 T6000                ; set Z probe type to bltouch and the dive height + speeds
                      G31 P500 X10 Y10 Z3.5                              ; set Z probe trigger value, offset and trigger height
                      M557 X15:470 Y15:470 S20                           ; define mesh grid
                      
                      ; Heaters
                      M308 S0 P"bedtemp" Y"thermistor" T100000 B4138     ; configure sensor 0 as thermistor on pin bedtemp
                      M950 H0 C"bedheat" T0                              ; create bed heater output on bedheat and map it to sensor 0
                      M307 H0 B0 S1.00                                   ; disable bang-bang mode for the bed heater and set PWM limit
                      M140 H0                                            ; map heated bed to heater 0
                      M143 H0 S120                                       ; set temperature limit for heater 0 to 120C
                      M308 S1 P"e0temp" Y"thermistor" T100000 B4138      ; configure sensor 1 as thermistor on pin e0temp
                      M950 H1 C"e0heat" T1                               ; create nozzle heater output on e0heat and map it to sensor 1
                      M307 H1 B0 S1.00                                   ; disable bang-bang mode for heater  and set PWM limit
                      M308 S2 P"e1temp" Y"thermistor" T100000 B4138      ; configure sensor 2 as thermistor on pin e1temp
                      M950 H2 C"e1heat" T2                               ; create nozzle heater output on e1heat and map it to sensor 2
                      M307 H2 B0 S1.00                                   ; disable bang-bang mode for heater  and set PWM limit
                      
                      ; Fans
                      M950 F0 C"fan0" Q500                               ; create fan 0 on pin fan0 and set its frequency
                      M106 P0 S1 H-1                                     ; set fan 0 value. Thermostatic control is turned off
                      M950 F1 C"fan1" Q500                               ; create fan 1 on pin fan1 and set its frequency
                      M106 P1 S1 H-1                                     ; set fan 1 value. Thermostatic control is turned off
                      
                      ; Tools
                      M563 P0 S"Tool 1" 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
                      M563 P1 S"Tool 2" D1 H2 F0                         ; define tool 1
                      G10 P1 X0 Y0 Z0                                    ; set tool 1 axis offsets
                      G10 P1 R0 S0                                       ; set initial tool 1 active and standby temperatures to 0C
                      
                      ; Custom settings are not defined
                      
                      ; Miscellaneous
                      M575 P1 S1 B57600                                  ; enable support for PanelDue
                      M501                                               ; load saved parameters from non-volatile memory
                      M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
                      

                      Edit: formatting

                      1 Reply Last reply Reply Quote 0
                      • Vetiundefined
                        Veti
                        last edited by

                        @campeancalin said in trouble with homing the x and y axes on a core xy printer.:

                        which I have 2 in series motors ( ZA and ZB are being used to control them),

                        this does not match your config
                        M584 X1 Y0 Z2:3 E4:5 ; set drive mapping; INIT:X=0; Y=1; Z2;E3:4

                        Za and Zb are both driver 2

                        campeancalinundefined 1 Reply Last reply Reply Quote 0
                        • campeancalinundefined
                          campeancalin @Veti
                          last edited by

                          @Veti Thank you

                          1 Reply Last reply Reply Quote 0
                          • campeancalinundefined
                            campeancalin
                            last edited by

                            The motors work fine, I still cant home the x and y

                            1 Reply Last reply Reply Quote 0
                            • Vetiundefined
                              Veti
                              last edited by

                              can you describe in detail what happens when you press homex

                              campeancalinundefined 1 Reply Last reply Reply Quote 0
                              • campeancalinundefined
                                campeancalin @Veti
                                last edited by

                                @Veti both motors receive current but the gantry does not move.

                                1 Reply Last reply Reply Quote 0
                                • campeancalinundefined
                                  campeancalin
                                  last edited by

                                  the x motor has an atempt to make a move , but to no avail.

                                  Vetiundefined 1 Reply Last reply Reply Quote 0
                                  • Vetiundefined
                                    Veti @campeancalin
                                    last edited by

                                    @campeancalin
                                    does it work with no belts?

                                    campeancalinundefined 1 Reply Last reply Reply Quote 0
                                    • campeancalinundefined
                                      campeancalin @Veti
                                      last edited by

                                      @Veti no, there's an atempt to start but it suddenly stops

                                      1 Reply Last reply Reply Quote 0
                                      • Phaedruxundefined
                                        Phaedrux Moderator
                                        last edited by Phaedrux

                                        M350 X16 Y16 Z16:16 E16:16 I1                     	   ; configure microstepping with interpolation ; INIT- M350 X16 Y16 Z16 E16:16 I1
                                        M92 X160.00 Y160.00 Z3200.00:3200.00 E420.00:420.00        ; set steps per mm
                                        M566 X900.00 Y900.00 Z12.00:12.00 E120.00:120.00           ; set maximum instantaneous speed changes (mm/min)
                                        M203 X6000.00 Y6000.00 Z180.00:180.00 E1200.00:1200.00     ; set maximum speeds (mm/min)
                                        M201 X500.00 Y500.00 Z20.00:20.00 E250.00:250.00           ; set accelerations (mm/s^2)
                                        M906 X1400 Y1400 Z1200:1200 E800:800 I80                   ; set motor currents (mA) and motor idle factor in per cent
                                        M84 S30 
                                        

                                        Everywhere that has two Z axis values should be reduced to a single value. You only have a single Z axis (even if it were split between multiple drivers) and the values for each motor would need to be the same, so there is no need for two values for Z. It shouldn't be a problem, but I suggest cleaning it up.

                                        Z16:16 would become just Z16 for example.

                                        So the X motor isn't moving when you press home all at all, or is it moving a few mm?
                                        Does it move if you do the corexy motor movement tests?

                                        https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCoreXYPrinter#Section_Testing_motor_movement

                                        Also test that your endstops are working correctly. You can check their status by sending M119, check them when you trigger the switch by hand as well as untriggered.

                                        And, finally once you have movement, just to confirm you are using a right hand coordinate system with 0,0 in the front left corner and X+ moves to the right, X- to the left, Y+ to the back, Y- to the front.

                                        dbot axis.png Cartesian-coordinate-system.png Bed Area.png

                                        Z-Bot CoreXY Build | Thingiverse Profile

                                        1 Reply Last reply Reply Quote 1
                                        • campeancalinundefined
                                          campeancalin
                                          last edited by

                                          @Phaedrux said in trouble with homing the x and y axes on a core xy printer.:

                                          So the X motor isn't moving when you press home all at all, or is it moving a few mm?
                                          Does it move if you do the corexy motor movement tests?

                                          @Phaedrux, when I call for x or y homing command , the z axis prepares by lifting for 5 mm, but as far as the A and B motors, little to no movement at all ; the pulleys on the motors fell stiff as if the motors are trying to move . When I perform the movement tests they move the right direction. Only the home commands do not function

                                          ; homeall.g
                                          ; called to home all axes
                                          ;
                                          ; generated by RepRapFirmware Configuration Tool v3.1.4 on Mon Oct 05 2020 11:50:09 GMT+0300 (Eastern European Summer Time)
                                          M98 P"homex.g"
                                          M98 P"homey.g"
                                          M98 P"homez.g"

                                          ; homex.g
                                          ; called to home the X axis
                                          ;
                                          ; generated by RepRapFirmware Configuration Tool v3.1.4 on Mon Oct 05 2020 11:50:09 GMT+0300 (Eastern European Summer Time)
                                          G91 ; relative positioning
                                          G1 H2 Z5 F200 ; lift Z relative to current position
                                          G1 H1 X-505 F1800 ; move quickly to X axis endstop and stop there (first pass)
                                          G1 X5 F600 ; go back a few mm
                                          G1 H1 X-5 F360 ; move slowly to X axis endstop once more (second pass)
                                          G1 H2 Z-5 F6000 ; lower Z again
                                          G90 ; absolute positioning

                                          ; homey.g
                                          ; called to home the Y axis
                                          ;
                                          ; generated by RepRapFirmware Configuration Tool v3.1.4 on Mon Oct 05 2020 11:50:09 GMT+0300 (Eastern European Summer Time)
                                          G91 ; relative positioning
                                          G1 H2 Z5 F200 ; lift Z relative to current position
                                          G1 H1 Y-505 F1800 ; move quickly to Y axis endstop and stop there (first pass)
                                          G1 Y5 F600 ; go back a few mm
                                          G1 H1 Y-5 F360 ; move slowly to Y axis endstop once more (second pass)
                                          G1 H2 Z-5 F6000 ; lower Z again
                                          G90 ; absolute positioning

                                          ; homez.g
                                          ; called to home the Z axis
                                          ;
                                          ; generated by RepRapFirmware Configuration Tool v3.1.4 on Mon Oct 05 2020 11:50:09 GMT+0300 (Eastern European Summer Time)
                                          G91 ; relative positioning
                                          G1 H2 Z5 F800 ; lift Z relative to current position
                                          G90 ; absolute positioning
                                          G1 X15 Y15 F2400 ; go to first probe point
                                          G30 ; home Z by probing the bed

                                          ; Uncomment the following lines to lift Z after probing
                                          G91 ; relative positioning
                                          G1 Z2 F100 ; lift Z relative to current position
                                          G90 ; absolute positioning

                                          Phaedruxundefined 1 Reply Last reply Reply Quote 0
                                          • Phaedruxundefined
                                            Phaedrux Moderator @campeancalin
                                            last edited by

                                            @campeancalin said in trouble with homing the x and y axes on a core xy printer.:

                                            When I perform the movement tests they move the right direction.

                                            At least that tells us that the motors are working and corexy is setup correctly.

                                            @campeancalin said in trouble with homing the x and y axes on a core xy printer.:

                                            Only the home commands do not function

                                            Ok, please test the endstop switches as I described.

                                            Move the print head into the center of the bed so that it's away from the endstops. It almost sounds like your endstop switches are misconfigured and showing as triggered when they are not.

                                            @campeancalin said in trouble with homing the x and y axes on a core xy printer.:

                                            little to no movement at all

                                            How much exactly? none, or some? The homing macros have a move to the endstop switch, and then a backoff movement. IF the switches are misconfigured and show as triggered when they are not, you wont get any movement on the first homing move, but the back off movement should still work if the directions are correct.

                                            Z-Bot CoreXY Build | Thingiverse Profile

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