Welcome! Log In Create A New Profile

Advanced

A few issues setting up CoreXY

Posted by bbondura 
A few issues setting up CoreXY
December 26, 2016 02:20PM
Hi all, first post here. I just built a corexy after the Spauda build on Thingiverse. I used the DuetWifi board instead of the RAMPS board. I'm having issues setting up my endstops and homing positions. It seems as though my endstops don't stop movement. Secondly, I can't for the life of me figure out the homing on this. Where is 0? Where is + and where is - ? Does anyone have this build that has a config I could look at? I have mine attached. ANy help would be appreciated. I'm pulling my hair out.

M111 S0 ; Debug off
M550 PMyCoreXY ; Machine name (can be anything you like)
M551 Preprap ; Machine password (used for FTP connections)
ns)
;*** If you have more than one Duet on your network, they must all have different MAC addresses, so change the last digits
M540 P0xBE:0xEF:0xDE:0xAD:0xFE:0xED ; MAC Address
;*** Wifi Networking
M552 S1 ; Enable WiFi
M552 P192.168.1.178 ; IP address (0 = use DHCP)
M554 P192.168.1.1 ; Gateway
M553 P255.255.255.0 ; Netmask
M555 P2 ; Set output to look like Marlin
M575 P1 B57600 S1 ; Comms parameters for PanelDue

; Machine configuration
M569 P0 S1 ; Drive 0 goes forwards (change to S0 to reverse it)
M569 P1 S0 ; 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
M584 X4 Y0 Z2 E3

; 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 Z1 S0 ; set endstop configuration (X and Y and endstops only, at low end, active high)
M667 S1 ; set CoreXY mode
M350 X16 Y16 E16 I1 ; Set 16x microstepping with interpolation
M92 X100 Y100 Z4000 ; Set axis steps/mm
M92 E420:420 ; Set extruder steps/mm
M906 X800 Y800 Z800 E800 ; Set motor currents (mA)
M201 X800 Y800 Z15 E1000 ; Accelerations (mm/s^2)
M203 X15000 Y15000 Z100 E3600 ; Maximum speeds (mm/min)
M566 X600 Y600 Z30 E20 ; Maximum jerk speeds mm/minute
M208 X227 Y275 Z275 ; set axis maxima (adjust to suit your machine)
M208 X-5 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 X0 Y0 Z1 ; Analog Z probe, also used for homing the Z axis
G31 Z1.20 P500 ; Set the probe height and threshold (put your own values here)
; 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 X69 Y0 ; Four...
M557 P1 X60 Y155 ; ...probe points...
M557 P2 X222 Y155 ; ...for bed...
M557 P3 X222 Y25 ; ...levelling
;M557 P4 X141 Y82.5 ; 5th probe point for levelling

; Thermistors and heaters
;*** You can use S and B parameters to define the parameters of the thermistors you are using
M305 P0 R4700 H0 L0 ; Put your own H and/or L values here to set the bed thermistor ADC correction
M305 P1 R4700 H0 L0 ; Put your own H and/or L values here to set the first nozzle thermistor ADC correction
M305 P2 R4700 H0 L0 ; Put your own H and/or L values here to set the second nozzle thermistor ADC correction
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 S120 ; Increase to allow extra heating time if needed

; Tool definition
M563 P0 D0 H1 ; 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 P1 D1 H2 ; Define tool 1
;G10 P1 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
T0 ; select first hot end
Re: A few issues setting up CoreXY
December 27, 2016 04:52AM
First you need to decide where you want the (0,0) position to be. This doesn't have to be the same as the homing position. The usual choice is front left, so that +Y is towards the back and +X is towards the right. If you choose any other position, remember that you need to use a right hand coordinate system, so that +Y is 90 degrees anticlockwise from +X viewed from above.

Next, get the motors moving in the correct directions, so that jogging the X and Y buttons in the web interface or in Pronterface or PanelDue moves the head in the correct direction. You may need to adjust the M569 commands in config.g for the first two drives to achieve this. You may also need to swap the X and Y motor connections over (with power removed of course).

Then get homing working. The homing position will depend on where you have the endstop switches. For example, if you chose (0,0) to be front left and you have the X endstop switch on the left and the Y endstop switch at the back, then you have a low-end X endstop and a high-end Y endstop. You will home the printer to back left. You need to get a few things right:

- Set up your M574 command in config.g to specify where your homing switches are (high or low end of each axis) and whether they are active high (e.g. normally closed switches) or active low. Use M119 or the Machine Properties page of Duet Web Control to check they are indicating properly.

- Set up your M208 commands in config.g to specify the axis limits, so that when an endstop switch is triggered, the firmware knows where the head is.

- Set up your homing files. See [duet3d.com] for the basics and [duet3d.com] for CoreXY specifics.

HTH David



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: A few issues setting up CoreXY
December 27, 2016 08:34AM
Thank You David! That was a huge help. As soon as I get home from work today I'll give that a shot. I believe your explanation led me to two issues.

1. My X and Y is mixed up. My Y goes left to right and my X goes front to back. That needs to be the other way around.
2. Secondly, I was under the impression home was rear left, not front left.
3. I believe my endstops are set incorrectly. I have two endstops rear right corner up high and one on the hotend carriage with the stop on the left. So I am guessing I have High end Z and High end Y with a low end X? So it would look like this:

M574 X1 Y2 Z2 S1 (Still have to determine active high or low)

Is M557 and M558 needed if I don't have a probe? Or, are the endstops considered a probe?

4. I also have to determine whether my stops are set to active low or active high. The firmware reads them as not active while not triggered. Minima when tripped.

5. On the Z axis, when the bed is all the way up is that 0, or 325? (arbitrary number for now. Z build volume is 325mm)

M208 X300 Y300 Z325 ; 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)

Edited 1 time(s). Last edit at 12/27/2016 01:42PM by bbondura.
Re: A few issues setting up CoreXY
December 27, 2016 04:46PM
It's perfectly valid to have +X going from back to front and +Y going from left to right if you prefer. Then the (0,0) position is back left. However, if you currently have +X going towards the back and +Y going to the right, that's a left handed coordinate system, which will give you mirrored prints.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: A few issues setting up CoreXY
December 28, 2016 08:00AM
Ok, I have the Axis all moving in the correct direction. Still lhaving a few issues one is technical and the other I believe is my lack of knowledge.

1. My X driver blew out when setting it up, therefore I had to remap the driver to number 4. How do I get my endstop to match that move? I tried moving the connection to correspond with that but I don't see how it would trigger the motor. I'm sure there is an M code or a setting.
2. M208 still does not seem to stop movement of my axis. Even if I set say min of 0 and max of 10, it will move right past that.
3. When the enstops are triggered should it say max or min trigger?

Finally, once all of that is set up, how do I start homing? Do I have to position the head somewhere prior to homing? Say 0,0.
Re: A few issues setting up CoreXY
December 28, 2016 05:16PM
1. Mapping motors does not map endstop connections. So you should continue to use the X endstop connector.

2. M208 will limit axis movement after the axis has been homed, unless you use the M564 command to tell the firmware to disregard the limits.

3. You tell the firmware whether each endstop switch is a max (high end) or min (low end) stop using the M574 command in config.g.

4. When you have set up the homing and config.g files correctly, you don't need to start with the head at a particular position. The purpose of homing is to move the head to a known position.

Edited 2 time(s). Last edit at 12/28/2016 05:17PM by dc42.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Sorry, only registered users may post in this forum.

Click here to login