2nd Printer, same issue with steppers only going diagonal



  • I am building my second CoreXY printer. Oddly I am running into the same problem with the steppers I initially had on the first.

    When I run G1 X10 F3000 S2 the carriage goes diagonal. When I run G1 X10 Y10 F3000 S2 it moves correctly. I have looked and changed stepper wires, the firmware and for the life of me can't get them to move normally. I feel like it's me.

    I assumed it was an wiring issue, but both work when both are explicitly called in G1. Changed connectors, tested on the z, everything seems normal. Any thoughts?

    ; Machine configuration
    M569 P0 S0 ; Drive 0 goes forwards (change to S0 to reverse it)
    M569 P1 S1 ; Drive 1 goes forwards.
    M569 P2 S0 ; Z - Motors - Forwards
    M569 P3 S1 ; Drive 3 goes forwards 0
    M569 P4 S1 ; Drive 4 goes forwards



  • I'm guessing you are missing the following in your config file:

    M667 S1 ; Select CoreXY mode

    Unless you already have that in your configuration, then I have no idea.

    Did you use the configuration tool? RRF Configuration Tool
    -Tim



  • I do have CoreXY mode set. I have this same firmware on my first printer (both DBots) and works fine. Originally I did use the tool yes.

    It's just odd that both work, just not when they are supposed to. Rewired this thing 3 times too just in case it was a bad connection, but if it was it wouldn't turn at all...



  • If you compare the configs of both printers what is different?

    Are you sure the motors are wired properly at the connector?

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

    And once you have verified that check movement again.

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

    Maybe post your config as well?


  • administrators

    Have you tested both motors individually using G1 S2 moves? It sounds to me that perhaps only one of the X and Y motors is working.



  • @phaedrux Thanks for the docs, couldn't find them before.

    Went through guide and made settings match:

    • When running X test getting +X +Y Movement
    • When running Y test getting +X - Y Movement

    I have my endstops set up and have verified through properties proper function.

    Now when I try to run home all (with es on X-LowEnd and Y-HighEnd) It goes the opposite direction on Y (X goes in the right direction) and the motors are loud. Not sure why, if the above is fine then the homing doesn't work as expected. Bit confused here. I have tried flipping motor connections, turning them around and changing the firmware. Thoughts?

    Motor Set Up (If Facing Printer)

    Left Motor plugged into X
    Right Motor plugged into Y

    Homing File:

    ;homeall.g
    ;homing using a x-MIN, Y-MAX and z-MIN endstops

    G91 ; relative mode
    G1 S1 X-240 Y240 F3000 ; course home X or Y
    G1 S1 X-240 ; course home X
    G1 S1 Y240 ; course home Y
    G1 X4 Y-4 F600 ; move away from the endstops
    G1 S1 X-10 ; fine home X
    G1 S1 Y10 ; fine home Y

    Config.g

    ; CoreXY sample config file for dc42 Duet firmware by Haga. Please use with care. Some of the settings needs to be changed to work with your printer. Read the duetWiki!
    ;*** https://duet3d.com/wiki/Duet_Wifi_Wiki

    ; Communication and general
    M111 S0 ; Debug off
    M550 BigBot ; Machine name (P + anything you like)
    M551 Preprap ; Machine password (used for FTP connections)
    M540 P0xBE:0xEF:0xDE:0xAD:0xFE:0xED ; MAC Address - If you have more than one Duet on your network, they must all have different MAC addresses, so change the last digits
    M552 S1 ; Enable WiFi
    M555 P2 ; Set output to look like Marlin
    M575 P1 B57600 S1 ; Comms parameters for PanelDue
    M667 S2 Z3 ; set CoreXY mode

    ; Machine configuration
    M569 P0 S0 ; X Drive 0 goes forwards (change to S0 to reverse it)
    M569 P1 S1 ; Y Drive 1 goes forwards.
    M569 P2 S0 ; ZaZb - Motors - Forwards
    M569 P3 S1 ; E0 Drive 3 goes forwards 0
    M569 P4 S1 ; E1 Drive 4 goes forwards

    M574 Z1 Y2 S0 ; set endstop configuration (all endstops at high end, active high)
    M574 X1 S0 ; set endstop configuration

    M350 X16 Y16 Z16 E16 I1 ; Set 16x microstepping with interpolation

    M92 X100 Y100 Z400 ; Set axis steps/mm. Check that the printer really move as much as you tell it. Not more and not less.
    M92 E138.4:138.4 ; Set extruder steps/mm. Change this to match your extruder.

    M906 X800 Y800 Z800 E800 ; Set motor currents (mA). Increase if motor is to weak. Lower if motor gets too hot. 800-1000 is good for most.

    M201 X1500 Y1500 Z300 E500 ; Accelerations (mm/s^2). The acceleration, speed and jerk is a setting you can alter to try making the printer to print as nice as possible..
    M203 X12000 Y12000 Z1200 E800 ; Maximum speeds (mm/min)
    M566 X900 Y900 Z24 E800 ; Maximum jerk speeds mm/minute

    M208 X300 Y300 Z450 ; set axis maxima (adjust to suit your machine)
    M208 X0 Y0 Z0 S1 ; set axis minima (adjust to make X=0 and Y=0 the edges of the bed)

    G21 ; Work in millimetres
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves

    ; Z probe
    ;M558 P1 I0 R0.2 F500 X0 Y0 Z1 ; Analog Z probe, also used for homing the Z axis
    ;G31 X0 Y0 Z0.0 P700 ; Set the probe height and threshold (put your own values here)

    ; Thermistors and heaters

    ;*** You can use S and B parameters to define the parameters of the thermistors you are using. Standard 100k thermistor from E3d is 4388 or 4725.
    M305 P0 T100000 B4388 R4700 H0 L0 ; Put your own H and/or L values here to set the bed thermistor ADC correction
    M305 P1 T100000 B4388 R4700 H0 L0 ; Put your own H and/or L values here to set the first nozzle thermistor ADC correction
    ;M305 P2 T100000 B4388 R4700 H0 L0 ; Put your own H and/or L values here to set the second nozzle thermistor ADC correction

    ;***Choose if you want to use the M301 or the autotune results and M307 command. Don't use both.
    ;M301 H1 P10 I0.10 D100 T0.50 S1.0 ;PID settings for extruder 0 (no need for M301 if using M307)
    ;M301 H2 P10 I0.10 D100 T0.50 S1.0 ;PID settings for extruder 1

    M570 S120 ;Increase to allow extra heating time if needed

    ;*** Bed Heating Controls & Max Tem
    M143 H0 S140

    ;***Use for autotune. Comment out M301 if you do.
    M307 H0 A142 C293.5 D5.4 B0 ;Autotune result for bed
    ;M307 H1 A588.5 C242.9 D6.7 B0 ;Autotuen result for first nozzle

    ; Fans
    M106 P1 T45 H1 ; enable thermostatic mode for fan 1 at temp 45 degrees. Fan turns on when P1(extruder 1) is above 45 degrees.

    ; Tool definition
    M563 P1 D0 H1 ; Define tool 0
    G10 P1 S0 R0 ; Set tool 0 operating and standby temperatures

    ;*** If you have a dual-nozzle build, un-comment the following 3 lines
    ;M563 P0 D1 H2 ; Define tool 1
    ;G10 P0 S0 R0 ; Set tool 1 operating and standby temperatures

    ;*** If you are using axis compensation, put the figures in the following command
    M556 S78 X0 Y0 Z0 ; Axis compensation here
    M208 S1 Z0 ; set minimum Z
    M501 ; Load Config-Override.g that is created using M500
    T0 ; select first hot end



  • What firmware version are you using? Because the expected Y motor behaviour is different between 1.18 and older and 1.19 and newer.

    test the Y motor by sending from the console:

    G91
    G1 S2 Y10 F3000
    For firmware 1.19 and later: If the head moves diagonally in the +X and -Y directions, all is well. If it moves in the -X and +Y directions, change the S parameter in the M569 P1 command to S1.

    For firmware 1.18 and earlier: If the head moves diagonally in the -X and +Y directions, all is well. If it moves in the +X and -Y directions, change the S parameter in the M569 P1 command to S1.

    Also can you verify that you have a right handed coordinate system? with the origin 0,0 in the front left corner? Y moves in + towards the back of the printer towards the endstop?



  • @interwebsdesigner said in 2nd Printer, same issue with steppers only going diagonal:

    M667 S2 Z3 ; set CoreXY mode

    Are you sure you have an XZ printer?



  • @joergs5 Good catch!



  • @phaedrux 1.21 is the version. And yes, 0,0 should be at the front left corner. I have my first build which this is identical to also and works appropriately.



  • @joergs5 good catch indeed. That was it. Silly mistake when going through the docs sent above. Everything is working as expected. Maybe by the 3rd one I won't have trouble 🙂 Thanks guys.



  • @interwebsdesigner The mistake was not easy to detect, because the comment said XY.

    Nice that so many people use CoreXY.



  • @interwebsdesigner said in 2nd Printer, same issue with steppers only going diagonal:

    @joergs5 good catch indeed. That was it. Silly mistake when going through the docs sent above. Everything is working as expected. Maybe by the 3rd one I won't have trouble 🙂 Thanks guys.

    What was it?

    I wasn't able to follow the back and forth.

    Thanks.

    Frederick



  • @fcwilt it was set to core XZ mode instead of core XY



  • @phaedrux said in 2nd Printer, same issue with steppers only going diagonal:

    @fcwilt it was set to core XZ mode instead of core XY

    Thank you.

    What is a Core XZ printer? I cannot visualize how that would work. Any videos or pictures of such a printer?

    Frederick






 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.