M574 axes naming



  • Hi,
    I am struggling a bit to set up my configuration.
    I want to set up my Z axis for 2 independent drivers with 2 endstops.

    My Z axis stepper driver is destroyed (I think I had a connector issue) so I have to skip it in the naming, so I plugged my Z1 to E0 and Z2 to E1 and I plugged the endstops in the corresponding E0 and E1 input ports (I'll use my duex for the extruders)

    All my endstops have to be negative polarity, but I am struggling to target E1 in the M574 command.

    when I open the web page, I get this when none of the endstops are physically pressed:
    Capture d’écran 2019-11-08 à 01.39.52.png

    and the number 4 flips to "No" when I press on on the switch. So I really feel like I didn't set my M574 correctly. I am struggling a bit with the various naming conventions of the various commands, so I might have written something stupid. Thanks for your help.

    ; General preferences
    M111 S0 ; Debugging off
    G21 ; Work in millimetres
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves
    M555 P2 ; Set firmware compatibility to look like Marlin
    M669 K1 ; switch to CoreXY mode
    
    ;DUAL Z - drive 2 is destroyed
    M584 X0 Y1 Z3:4 U4 E5 P4
    
    M208 X0 Y0 Z0 U0 S1 ; Set axis minima
    M208 X330 Y330 Z400 U400 S0 ; Set axis maxima
    
    ; Drives
    M569 P0 S1 ; Drive 0 goes forwards
    M569 P1 S0 ; Drive 1 goes backwards
    M569 P2 S1 ; Drive 2 goes forwards
    M569 P3 S0 ; Drive 3 goes backwards
    M569 P4 S1 ; Drive 4 goes forwards
    
    M350 X64 Y64 Z64 U64 E16 I1 S3; Configure microstepping with interpolation
    M92 X80 Y80 Z1600 U1600 E92.6 ; Set steps per mm
    M906 X300 Y300 Z300 U300 E300 I50 ; Set motor currents (mA) and motor idle factor in per cent
    M84 S10 ; Set idle timeout
    
    ; Endstops
    M574 X1 Y1 Z1 U1 S0 ; Set active low endstops
    

  • administrators

    When you use M584 to reassign motor drivers, this does not affect endstop inputs. So you should continue to use the Z endstop input. Use the E0 endstop input for U.



  • Thanks for your answer.

    I'm sorry, I am struggling to parse your sentence, so I'll try to rephrase my understanding: I should physically plug one of my endstop in the physical Z socket on the board to "guard" the logical Z axis of the M584?


  • administrators

    @nraynaud said in M574 axes naming:

    Thanks for your answer.

    I'm sorry, I am struggling to parse your sentence, so I'll try to rephrase my understanding: I should physically plug one of my endstop in the physical Z socket on the board to "guard" the logical Z axis of the M584?

    The endstop for the Z motor should be connected to the Z endstop input, and the endstop for the U motor should be connected to thew E0 endstop input. This doesn't change even if you use a different driver mapping in your M584 command.



  • Thank you very much.



  • What do you think of a documentation page "Axes in various commands", I can start a draft, but everything will probably be technically wrong in it.


  • administrators

    I would be reluctant to add a page on this rather narrow topic, but maybe a page on remapping drivers and creating and hiding axes using M584 would be helpful.


Log in to reply