IDEX calibration problems



  • I don't know, I'm new to this firmware and this board.... We're should I look... I will post the tool section here, any other section I should post?

    No need for apologies, thanks!!! 😊


  • administrators

    @3dealo see if you have G10 in your config.g that can have axis offsets.

    The documentation here has a lot of info:

    https://duet3d.dozuki.com/Wiki/ConfiguringMultipleIndependentXcarriagesCartesian#Section_Sample_IDEX_tool_configuration



  • Thanks!
    I followed that from top to bottom a couple of times...

    I know for a fact that when my X and U carriages are parked side to side, the nozzles have a 86mm distance between them, should I inform it on the firmware?

    But whata bugs me is that they are precise in co-ordinates when told to. But ater the first change from X to U on a print job the X returns +9 mm aways in X direction.

    here is my tool section:

    ;''' Tool configuration section'''

    ;''' Create a tool that uses the low end (X) carriage'''

    M563 P0 D0 H1 F0 ; tool 0 uses extruder 0, heater 1 and fan 0
    G10 P0 X0 Y0 Z0 S0 R0 ; set tool 0 offsets and temperatures

    ;''' Create a tool that uses the high end (U) carriage'''

    M563 P1 D1 H2 X3 F2 ; tool 1 uses extruder 1, heater 2, fan 2, and maps X to U
    G10 P1 Y0 U0 Z0 S0 R0 ; set tool 1 offsets and temperatures

    ;''' Create a tool that prints 2 copies of the object using both carriages'''

    M563 P2 D0:1 H1:2 X0:3 F0:2 ; tool 2 uses both extruders, hot end heaters and fans, and maps X to both X and U
    G10 P2 X50 Y0 U-50 S0 R0 ; set tool offsets and temperatures
    M567 P2 E1:1 ; set mix ratio 100% on both extruders



  • I guess I'm managing to adjust that on cura, but I don't want to be slicer dependent on this...
    to tell it by firmware on G10 as you sugested should I put it on the tool 1 since the X should be the reference?


  • administrators

    @3dealo said in IDEX calibration problems:

    I know for a fact that when my X and U carriages are parked side to side, the nozzles have a 86mm distance between them, should I inform it on the firmware?

    This is only important for "ditto" printing and you should setup your tool 2 so that the distance between the two print heads when that tool is selected is suitable:

    ;''' Create a tool that prints 2 copies of the object using both carriages'''

    M563 P2 D0:1 H1:2 X0:3 F0:2 ; tool 2 uses both extruders, hot end heaters and fans, and maps X to both X and U

    G10 P2 X50 Y0 U-50 S0 R0 ; set tool offsets and temperatures

    M567 P2 E1:1 ; set mix ratio 100% on both extruders

    Probably you want more than 100mm difference between the two.

    Back to the original issue can you post the fist few printing lines for the gcode file that Cura is producing, maybe the offset is in that. Please start by slicing a simple cube that is in the same position for both extruders.



  • @t3p3tony

    Thanks for your help... I can not figure it out what's going on, the X carriage still goes back from the 1st pass incorrectly.

    Inside CURA when I put 14mm offset on the second tool it aligns the print, but the error of the scond pass from X continues....

    alt text

    Here I will post, both the config.g content, and the 1st part of the gcode.

    Config.g
    ; Configuration file for Duet WiFi (firmware version 1.20 or newer)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool on Mon May 07 2018 16:11:49 GMT+0200 (Hora de verano romance)
    ; Edited by 3Dealo - Fabber 644 - 04-06-2018 - 19:50

    ; General preferences
    M584 X0 U1 Y2 Z5 E3:4 ; Create U axis for second X carriage before we try to configure it
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves

    ; Network
    M550 PDuettest ; Set machine name
    M552 S1 ; Enable network
    M587 S"" P"" ; Configure access point. You can delete this line once connected
    M586 P0 S1 ; Enable HTTP
    M586 P1 S0 ; Disable FTP
    M586 P2 S0 ; Disable Telnet

    ; Drives
    M569 P0 S1 ; Drive 0 goes forwards
    M569 P1 S0 ; Drive 1 goes BACKWARDS
    M569 P2 S0 ; Drive 2 goes BACKWARDS
    M569 P3 S0 ; Drive 3 goes BACKWARDS
    M569 P4 S1 ; Drive 4 goes forwards
    M569 P5 S1 R1 T2.2 ; Drive 5 goes forwards (Activate the Signal to TB6600 on the brakout expansion)
    M350 X32 Y32 U32 Z32 E32:32 I0 ; Configure microstepping without interpolation
    M92 X160 Y160 U160 Z1600 E1668 ; Set steps per mm
    M566 X900 Y900 U900 Z50 E120 ; Set maximum instantaneous speed changes (mm/min)
    M203 X6000 Y6000 U6000 Z1000 E1200 ; Set maximum speeds (mm/min)
    M201 X1000 Y500 U1000 Z200 E250 ; Set accelerations (mm/s^2)
    M906 X800 Y1200 U800 E800 I30 ; Set motor currents (mA) and motor idle factor in per cent
    G21 ; Work in millimetres
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves
    M84 S30 ; Set idle timeout

    ; Axis Limits
    M208 X572 Y430 U654 Z400 ; Set axis maxima
    M208 X-76 Y0 U0 Z-10 S1 ; Set axis minima

    ; Endstops
    M574 X0 Y0 U2 S0 ; Set active LOW endstops (EDITED by 3DEALO - U DRIVE endstop high end)
    M574 Z1 S2 ; Set endstops controlled by probe

    M591 D0 P1 C2 ;Filament sensor for E0, plugged into Z endstop (C2), set as a simple switch (P1)
    M591 D1 P1 C4 ;Filament sensor for E1, plugged into E1 endstop (C4), set as a simple switch (P1)

    ; Z-Probe (BL Touch)
    M307 H7 A-1 C-1 D-1
    M558 P9 H5 F500 T4000 X0 Y0 Z1 ; Set Z probe type/mode 9. H=Dive Height. F=Speed the Z moves
    G31 P25 X-34 Y18 Z2.7 ; Set Z probe trigger value, offset and trigger height
    M557 X20:580 Y20:420 S40 ; Define mesh grid

    ; Heaters
    M301 H0 S1.00 P10 I0.1 D200 T0.4 W180 B30 ; Use PID on bed heater (may require further tuning)
    M305 P0 T100000 B3950 C0 R4700 ; Set thermistor + ADC parameters for heater 0
    M143 H0 S100 ; Set temperature limit for heater 0 to 100C
    M305 P1 T100000 B3950 C0 R4700 ; Set thermistor + ADC parameters for heater 1
    M143 H1 S270 ; Set temperature limit for heater 1 to 270C
    M305 P2 T100000 B3950 C0 R4700 ; Set thermistor + ADC parameters for heater 2
    M143 H2 S270 ; Set temperature limit for heater 2 to 270C

    ; Fans
    M106 P0 S0 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S0 I0 F500 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P2 S0 I0 F500 H-1 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned off

    ; Tools
    ;M563 P0 D0 H1 ; Define tool 0 - ORIGINAL
    ;G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets - ORIGINAL
    ;G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C - ORIGINAL

    ;''' Tool configuration section MULTITOOL'''

    ;''' Create a tool that uses the low end (X) carriage'''

    M563 P0 D0 H1 F0 ; tool 0 uses extruder 0, heater 1 and fan 0
    G10 P0 X0 Y0 Z0 S0 R0 ; set tool 0 offsets and temperatures

    ;''' Create a tool that uses the high end (U) carriage'''

    M563 P1 D1 H2 X3 F2 ; tool 1 uses extruder 1, heater 2, fan 2, and maps X to U
    G10 P1 Y0 U0 Z0 S0 R0 ; set tool 1 offsets and temperatures

    ;''' Create a tool that prints 2 copies of the object using both carriages'''

    M563 P2 D0:1 H1:2 X0:3 F0:2 ; tool 2 uses both extruders, hot end heaters and fans, and maps X to both X and U
    G10 P2 X100 Y0 U-100 S0 R0 ; set tool offsets and temperatures
    M567 P2 E1:1 ; set mix ratio 100% on both extruders

    ; Automatic power saving

    M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss

    ; Custom settings are not configured
    M280 P7 S90 ; Retract probe

    Cura Gcode as TXT attachment0_1528187987684_cura gcode.txt


  • administrators

    Ok the config looks ok. Can you post your home X, home U and home all gcode files.

    I will look at the Cura gcode now. Do you have the 14mm offset in that?

    Cheers

    Tony



  • @t3p3tony Thanks!

    I believe I just got it, please see if my thoughts are right...
    I took a look at the tfree0.g the parking spot for X was -85 and the X minima on config,g was -76 which is exactly the 9mm misalignement in X direction I had... now it seems to work... what do you think?

    ; tfree0.g
    ; FROM 3DEALO TESTS

    M83 ; relative extruder movement
    G1 E-2 F3600 ; retract 2mm
    M106 S0 ; turn off our print cooling fan
    G91 ; relative axis movement
    G1 Z3 F500 ; up 3mm
    G90 ; absolute axis movement
    G1 S2 X-76 F6000 ; park the X carriage at -76mm

    homeX.g

    ; homex.g
    G91 ; relative positioning
    G1 Z5 F1000 S2 ; lift Z relative to current position
    G1 S1 X-650 S1 F6000 ; move quickly to X axis endstop and stop there (first pass)
    G1 X5 F1000 ; go back a few mm
    G1 S1 X-10 F600 ; move slowly to X axis endstop once more (second pass)
    G1 Z-5 F6000 S2 ; lower Z again
    G90 ; absolute positioning

    homeY.g

    ; homey.g
    ; called to home the Y axis
    ;
    ; generated by RepRapFirmware Configuration Tool on Mon May 07 2018 16:11:49 GMT+0200 (Hora de verano romance)
    G91 ; relative positioning
    G1 Z5 F6000 S2 ; lift Z relative to current position
    G1 S1 Y-435 F1800 ; move quickly to Y axis endstop and stop there (first pass)
    G1 Y5 F6000 ; go back a few mm
    G1 S1 Y-435 F360 ; move slowly to Y axis endstop once more (second pass)
    G1 Z-5 F6000 S2 ; lower Z again
    G90 ; absolute positioning

    homeU.g

    ;''' Home U at the high end of the axis'''

    G91 ; relative positioning
    G1 S2 Z5 F6000 S2 ; lift Z relative to current position
    G1 S1 U645 F6000 S1 ; move quickly to X axis endstop and stop there (first pass)
    G1 S2 U-5 F600 S2 ; go back a few mm
    G1 S1 U10 F6000 S1 ; move slowly to X axis endstop once more (second pass)
    G1 S2 Z-5 F6000 S2 ; lower Z again
    G90 ; absolute positioning

    homeALL.g

    ; homeall.g
    G91 ; relative positioning
    G1 Z5 F1000 S2 ; lift Z relative to current position
    G1 S1 X-635 Y-440 U645 F6000 S1 ; move quickly to X and Y axis endstops and stop there (first pass) - EDITADO 3DEALO DRIVE U
    G1 X5 Y5 U-5 F6000 ; go back a few mm
    G1 S1 X-635 Y-435 U635 F600 S2 ; move slowly to X and Y axis endstops once more (second pass)
    G1 X-10 Y-10 U10 S1 ; fine home X, Y and U
    G90 ; absolute positioning
    G1 X300 Y220 F6000 S2 ; go to first bed probe point and home Z
    G30 ; home Z by probing the bed
    ;G1 Z5 F100 S2 ; uncomment this line to lift the nozzle after homing



  • I'm not sure if this will help you or not but here is my config and tool free files for my IDEX printer. If you check out the Tools area and look at tool 2 definition you will see how I have it set up for ditto printing.

    0_1528195452792_config.g
    0_1528195474894_tfree0.g
    0_1528195482160_tfree1.g
    0_1528195490754_tfree2.g



  • @timcurtis67 thank yo so much. with all that set in the config.g do you need to set it again on CURA, or whatever slicer you use?

    thanks



  • @3dealo No I don't set anything in Cura. Don't set any tool offsets in Cura, leave them all at zero's. This lets Duet board handle it.

    I use Cura or Kisslicer. Even when Ditto printing just slice the model in the zero location (center of heatbed) and then I edit in a T2 in the beginning of the gcode file and the Duet will adjust both heads accordingly and start printing.

    Note: For ditto printing both or the hotends must be the same height on the printbed. I have my right side (U drive) with slots so I can adjust the height to match my X drive. Also you can't use bed compensation when ditto printing so you may want to have a good flat bed to start.



  • Here is a link to a quick video showing my printer running 10 parts ditto printing. 5 parts per head.

    https://photos.app.goo.gl/qXd3Zvg2B3D4rXr03


  • administrators

    @3dealo That could be the issues, have you tested it with that being X-85? The thing that surprises me about this is you are parking the X axis, not changing where it its. the firmware should still know that it is at X-76 and just command its new position from there as a starting point.

    The other thing I have noticed is your U Axis maxima is U654 where as you only home to U645 so it may not be reaching the actual homing position before stopping? any reason why your home U is not up to U700 or so in the first pass so you know you are definitely going to get there. This is incidental to the issue but may as well make sure your U axis always fully homes.


Log in to reply