Another mirrored core xy question
-
Im currently commisioning my new printer, all movemnts seem to working corectly except the y axis is mirrored.
This image shows how i want the movemet configured as well as the location of the end stops.
my current config (i have removed non relevent sections):
; generated by RepRapFirmware Configuration Tool v3.1.10 on Wed Dec 23 2020 01:01:14 GMT+0000 (Greenwich Mean Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"My Printer" ; set printer name M669 K1 ; select CoreXY mode ; Drives M569 P0 S1 ; physical drive 0 goes forwards M569 P1 S1 ; physical drive 1 goes forwards M569 P2 S1 ; physical drive 2 goes forwards M569 P3 S1 ; physical drive 3 goes forwards M584 X0 Y1 Z2 E3 ; set drive mapping M350 X256 Y256 Z16 E8 I1 ; configure microstepping with interpolation M92 X2560.00 Y2560.00 Z1600.00 E400.00 ; set steps per mm M566 X900.00 Y900.00 Z60.00 E2000.00 ; set maximum instantaneous speed changes (mm/min) M203 X12000.00 Y12000.00 Z400.00 E4800.00 ; set maximum speeds (mm/min) M201 X800 Y800 Z20.00 E2000.00 ; set accelerations (mm/s^2) M906 X800 Y800 Z650 E1300 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S10 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X330 Y270 Z300 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"exp.heater3" ; create servo pin 0 for BLTouch M558 P9 C"^zprobe.in" H3 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X-35 Y0 Z3.4 ; set Z probe trigger value, offset and trigger height M557 X25:275 Y0:250 S50 ; define mesh grid
homeall.g:
G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 X-330 Y-270 F3600 ; move quickly to X or Y endstop and stop there (first pass) G1 H1 X-330 ; home X axis G1 H1 Y-270 ; home Y axis G1 X5 Y5 F6000 ; go back a few mm G1 H1 X-330 F360 ; move slowly to X axis endstop once more (second pass) G1 H1 Y-270 ; then move slowly to Y axis endstop G90 ; absolute positioning G1 X50 Y15 F6000 ; go to first bed probe point and home Z G30 ; home Z by probing the bed
homex.g:
G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 X-330 F3600 ; move quickly to X axis endstop and stop there (first pass) G1 X5 F6000 ; go back a few mm G1 H1 X-330 F360 ; move slowly to X axis endstop once more (second pass) G1 H2 Z-5 F6000 ; lower Z again G90 ; absolute positioning
homey.g:
G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 Y-270 F3600 ; move quickly to Y axis endstop and stop there (first pass) G1 Y5 F6000 ; go back a few mm G1 H1 Y-270 F360 ; move slowly to Y axis endstop once more (second pass) G1 H2 Z-5 F6000 ; lower Z again G90 ; absolute positioning
i belive i have to hange the following :
- M669 y-1
- M574 Y1 S2
- change the movments in homeall and homey to positive movments
ive tried this and the movment directions seem correct but i get strange behavior when homing where the x axis tries to continue moving beyond the end stop limit.
Am i making the correct changes or am i missing somthing, TIA.
-
This post is deleted! -
@Fisher said in Another mirrored core xy question:
M574 Y1 S2
i made a mistake in my op but cant edit it as its getting flagged as spam for some reason i am changing
** M574 Y2 S1 ** -
@Fisher said in Another mirrored core xy question:
M350 X256 Y256 Z16 E8 I1 ; configure microstepping with interpolation
you are overloading the cpu.
the duet wifi does only support interpolation at x16
and unless there is a specific reason, go with x16 and interpolation for all axes.did you forget the rest of your config? its missing some sections.
for your motor movement see
https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCoreXYPrinter#Section_Testing_motor_movement -
@Veti Thanks for pointing that out, idk why i had it like that, here is the full config:
; Configuration file for Duet WiFi (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.1.10 on Wed Dec 23 2020 01:01:14 GMT+0000 (Greenwich Mean Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"My Printer" ; set printer name M669 K1 ; select CoreXY mode ; Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P0 S1 ; physical drive 0 goes forwards M569 P1 S1 ; physical drive 1 goes forwards M569 P2 S1 ; physical drive 2 goes forwards M569 P3 S1 ; physical drive 3 goes forwards M584 X0 Y1 Z2 E3 ; set drive mapping M350 X16 Y16 Z16 E8 I1 ; configure microstepping with interpolation M92 X160 Y160 Z1600.00 E400.00 ; set steps per mm M566 X900.00 Y900.00 Z60.00 E2000.00 ; set maximum instantaneous speed changes (mm/min) M203 X12000.00 Y12000.00 Z400.00 E4800.00 ; set maximum speeds (mm/min) M201 X800 Y800 Z20.00 E2000.00 ; set accelerations (mm/s^2) M906 X800 Y800 Z650 E1300 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S10 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X330 Y270 Z300 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"exp.heater3" ; create servo pin 0 for BLTouch M558 P9 C"^zprobe.in" H3 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X-35 Y0 Z3.4 ; set Z probe trigger value, offset and trigger height M557 X25:275 Y0:250 S50 ; define mesh grid ; Heaters M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp M950 H0 C"e1heat" T0 ; create bed heater output on bedheat and map it to sensor 0 ********* HEAT BED ON E1 Temporary. M307 H0 A162.9 C183.2 D2.0 S1.00 V24.1 B0 ; 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 M143 H1 S280 ; set temperature limit for heater 1 to 280C ; Fans M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency M106 P0 S0 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 H1 T45 ; set fan 1 value. Thermostatic control is turned on ; Tools M563 P0 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 M572 D0 S0.05 ;Pressure Advance setting M501 ; Custom settings
-
@Fisher said in Another mirrored core xy question:
M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp
M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0tempthis is incorrect. find the correct beta value in your thermistor documentation.
-
@Veti Ok thanks, im going to get the basics sorted before i try and understand what a beta value is.
-
To resolve mirroring on a CoreYX printer, you need to swap the X and Y motor connections over, either physically or in M584. It's also possible to correct it by changing the M669 matrix, but that is over-complicated for solving this.
-
@dc42 thanks, i will still need to amend my endstop location and homeall / homey directions i assume.
-
@Fisher said in Another mirrored core xy question:
@dc42 thanks, i will still need to amend my endstop location and homeall / homey directions i assume.
Yes. Get G1 H2 moves working properly first, then sort out the endstop config and homing files. https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCoreXYPrinter#Section_Testing_motor_movement
-
All sorted Thanks once again.
-
@Veti Would you be able to explain a little more about whats wrong with this or point me towards some info on thermister settings / what is a beta value? my hotend thermistor is a generic one from e3d, my bed thermister is integrated into silicone heat mat - cheap chinese one doubut i'll be able to find any documentation for it.
-
@Fisher If it's an E3D thermistor, it would use
Y"thermistor" T100000 B4725 C7.06e-8
-
@Fisher said in Another mirrored core xy question:
my bed thermister is integrated into silicone heat mat - cheap chinese one doubut
those tend to be B3950 thermistors.
the beta value describes how the resistance changes with temperature as different thermistors behave differently.
if you have the wrong value it could easily read 200C but the actual temperature could be 20C off.