Motor Config question

  • Hi I new at this and there are a few things I'm trying to sort out.
    when they say at low end or at high end in location do they mean front right for X left back for Y and all down for Z ? Also i have 0.9 step motors so i put in 160 mm in steps for mm (with the calculator) but shoud i leave it at x16 interpolated to x256?
    Also I read, cann't remember where, I should add M667 S1 ; Select CoreXY mode in the movement section but in the config.g I can not find a movement section.

    Thanks for any help

  • So default config is for the origin at front left for xy so yes low end x is left and low end y is front.

    z=0 is with build plate touching nozzle but on corexy that means z goes up to get to 0, whereas most machines z would go down to get to 0. The only real implication is that some host control programs like Pronterface have up and down arrows, you have to use the opposite direction to what seems logical on corexy (with bed moving in z rather than moving gantry), the web interface and paneldue just use -z for nozzle closer to build plate, and =z for nozzle away.

    Add the corexy config bit, put it at/near the start of your config.g

  • Happy to share a corexy config if it helps.

  • Thanks DjDemonD yes would be great I'm following the Hypercube except for the size which is a 40 x 40.
    I am using two motors for Z and endstops are optical. Would be good to see how one that is working is like.

  • ; SmartRapCoreAlu Config File.
    ; CoreXY sample config file for dc42 Duet firmware
    M111 S0                             	; Debug off
    M550 P******			; Machine name (can be anything you like)
    M551 P******                      	; Machine password (used for FTP connections)
    M540 P0xBE:0xEF:0xDE:0xAD:0xFE:0xED ; MAC Address
    ;*** Adjust the IP address and gateway in the following 2 lines to suit your network
    M552 P0.0.0.0				; IP address (0 = use DHCP)
    M554 P192.168.0.1                   	; Gateway
    M553 P255.255.255.0                 	; Netmask
    M555 P2                             	; Set output to look like Marlin
    M575 P1 B57600 S1			; Comms parameters for PanelDue
    M552 S1					;start wifi
    ; Machine configuration
    M667 S1					; set CoreXY mode
    M569 P0 S1				; Drive 0 goes forwards (change to S0 to reverse it)
    M569 P1 S1				; Drive 1 goes forwards
    M569 P2 S1				; Drive 2 goes forwards
    M569 P3 S1				; Drive 3 goes forwards
    M569 P4 S1				; Drive 4 goes forwards
    ; If you use an endstop switch for Z homing, change Z0 to Z1 in the following line, and see also M558 command later in this file
    M574 X1 Y1 Z2 S0			; set endstop configuration (X, Y, Z endstops only, at low end XY, high Z, active low)
    M92 X200 Y200 Z200			; Set axis steps/mm
    M92 E408				; Set extruder steps/mm
    M906 X1000 Y1000 Z1200 E700            	; Set motor currents (mA)extruder current just enough will click not strip
    M201 X2000 Y2000 Z50 E1000            	; Accelerations (mm/s^2)
    M203 X15000 Y15000 Z3000 E3600       	; Maximum speeds (mm/min)
    M566 X1000 Y1000 Z1 E500              	; Maximum jerk speeds mm/minute
    M208 X260 Y148 Z185			; set axis maxima (adjust to suit your machine)
    M208 X0 Y-32 Z-1 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
    M350 X16 Y16 Z16 E16 I1    		; Set 16x microstepping with interpolation
    ; The following M557 commands are not needed if you are using a bed.g file to perform bed compensation
    ;*** Adjust the XY coordinates in the following M557 commands to suit your build and the position of the Z probe
    M557 P0 X60 Y0                      	; Four... 
    M557 P1 X60 Y165                    	; ...probe points...
    M557 P2 X222 Y165                   	; ...for bed...
    M557 P3 X222 Y0                     	; ...levelling
    M557 P4 X141 Y82.5                 	; 5th probe point for levelling
    ; Thermistors and heaters
    ;*** If you have a Duet board with 1K thermistor series resistors, change R4700 to R1000 to the following M305 commands
    ; You can also use S and B parameters to define the parameters of the thermistors you are using
    M305 P0 T100000 R4700 B4300 H0 L0	; Put your own H and/or L values here to set the bed thermistor ADC correction
    ;M305 P1 R4740 H0 L0			; Put your own H and/or L values here to set the first nozzle thermistor ADC correction
    ;M305 P1 X200				;set pt100 sensor 1 to heater 1
    M305  P1 X201 R400				; set pt100 sensor 2 to heater 3
    ;M305 P2 R4700 H0 L0			; Put your own H and/or L values here to set the second nozzle thermistor ADC correction
    M305 P2 T100000 B3950 R4700 H0 L0	; Set thermistor + ADC parameters for heater 2
    M301 H1 P10 I0.10 D100 T0.50 S1.0	; PID settings for extruder 0
    M301 H2 P10 I0.10 D100 T0.50 S1.0	; PID settings for extruder 1
    M570 S180				; Increase to allow extra heating time if needed
    ;Fan config
    M106 P2 T50 H2				; set fan 2 to go on at 50 deg C chamber temp
    M106 P1 H-1				; set fan 1 to be gcode controlled
    M106 P1 S0				; switch off fan 1 at startup (and verify m106 will control fan 1)
    ; Tool definition
    M563 P0 D0 H1 F1                      	; Define tool 0
    G10 P0 S0 R0                        	; Set tool 0 operating and standby temperatures
    ;*** If you have a dual-nozzle build, un-comment the following 3 lines
    M563 P99 H2	                     	; Define tool 1
    G10 P99 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
    ; Z probe
    M558 P8 I1 R1.0 H10 F700 T1500 X0 Y0 Z0 ;digital piezo sensor, output falls on contact, probing speed, not used to home axes
    G31 X0 Y0 Z-0.1 P50			;sensor is nozzle and debounce value.
    ;Mesh Levelling
    M557 X5:260 Y5:145 S25			;define mesh
    M376 H10				;taper off after 10mm
    G29 S1					;load mesh
    T0					; select first hot end
    M572 D0 S0				;Set pressure advance S0-off
    M501					;load settings from config_override.g

    Sorry some of it is more confusing than helpful I'll explain some of it:
    M574 - I have both a mechanical endstop switch at the bottom of the printer (Z-max/high) and also a z probe. Active low i.e. NC switches.
    Axis minima can be negative numbers if your axis is larger than your build plate (like most corexy), it will home y for example at -32, so G1 Y0 positions the nozzle at the front edge of the bed. You have to measure or trial and error derive this value.
    Thermistors and heaters.
    If you have thermocouples use M305 P0 T100000 R4700 B4300 H0 L0 format with B value being the published or calculate value to approximate the temperature curve for your thermistor. I have replaced some with PT100 so these use M305 P1 X201 R400 format.
    My tool 1 definition is for a chamber temperature "dummy" tool, its just a way to get this temp to be displayed in DWC/paneldue. You can also define virtual heater channels but these only display in the "+extra" section of DWC.

  • Thanks so much DjDemonD. Will finish attaching the endstops and a coule of other things then will give it a try.


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