Tag Archives: IDEX

3D Printer: Multi Gantry Printer

State: brain storming, early drafts

Updates:

  • 2022/12/22: adding Ashtar D (Classic XY) MG3 IDEX, comparing Y-XZ vs XY gantries in regards of inertia and slicing approaches thereof
  • 2024/12/20: early idea to add tool changer as well
  • 2024/12/16: adding more details with multiple extruders on same X gantry
  • 2024/12/06: early ideas about single layer segmenting
  • 2024/12/05: starting write-up

Introduction

While working on theoretical side of parallel 3D printing, I used the example of multi-gantry or Multi Gantry (MG) setup where a single bed is shared in Y – here a few rough sketches using Y-XZ gantries:

Y-XZ Gantry Approach

When having moving gantry implementing Y + XZ motion, there are several challenges, such as the Y- and the XZ motion system and making the thickness of each gantry as thin as possible to have as little “dead” or “unusable” space as it adds up and also limits the printable XY space.

Y motion system

We can share a single rail where each gantry rides hence Common Y rails, then they can’t change the order, in that case the belt routing becomes the main issue of concern – whereas when each gantry has its own rail hence Dedicated Y rails, and each gantry has a distinct height they can change the order (lift Z to the top and move over the lower one – hence each gantry has a different Z height, but with the filament and cabling the entanglement needs to be closely observed).

XZ motion system

We require to have two positioning axes to integrate here, the X and Z:

  • two independent motion systems (X axis = 1 motor, Z axis = 1 motor)
  • Core XZ system also using two motors, but having XZ motion combined
Jon Schone’s (ProperPrinting) 2 Gantry System: X & Z axes with each their own motor, sharing a single Y rail

Jon’s approach is clever to use CoreXZ and position both X/Z motors near the bed, so they don’t swing higher in Z, and only have the E motors ride on the X beam, yet, his setup is a single printhead on the X-beam.

XY Gantry Approach: Less Inertia

Classic XY (non-CoreXY) where X and Y motion is separated – like the Ashtar D – the moving gantry only has a X beam, where printhead and X motor resides – whereas with CoreXY only the printhead resides on the X beam, and XY motors are stationary/non-moving. As we separate in Y, we can use this Classic XY setup to add also multiple gantries, something like this:

Ashtar D MG3 IDEX [draft: Y motion not yet separated]

Comparison

Gantry KInematicsMoving Motors per GANTRYMoving Motors in MG3 IDEX per GantryindependeNt AXES per Gantry
Y-XZn*X, Y, Z, n*E 6 (2+1+1+2) YZ
XYn*X, n*E4 (2 + 2)Y
  • n-amount of printheads (IDEX: n=2) per gantry

The Y-XZ gantry setup has more moving parts, especially the heavier stepper motors, whereas XY gantry, as its name indicates, has the Z kinematics in common for all gantries and therefore only X motors moving – plus printhead (E) motors for both options.

So, if we aim to reduce the inertia like heavier stepper motors, we also lose that independence in the kinematics: with Classic XY gantries they all share the same Z height.

Slicing for Multi Gantry System

As I realized earlier, it makes no sense to statically segment Y-space for each gantry (e.g. Y-size/n) although it would make coding easier, but seamless printing would be impossible – in reality, we need slightly overlapping spaces to achieve zero space seams where the gantries print for the same piece, so we naturally choose flexible non-overlapping operations.

Layer Segmenting

Obviously one of the simple optimization is when we are looking at a single layer, and segment it area-wise to n-amount of gantries. For sake of consistency, a wall is assigned to a single gantry to have a seamless wall/perimeter.

Y Segmenting Single Layer for 4 gantries & nozzles (red, green, blue & yellow)
  • Infill areas are Y segmented
    • each area (e.g. A1-A4) is the same to distribute work equally
  • Walls/perimeters are assigned to a single gantry
    • if walls intersect each other in Y, those are printed sequentially not in parallel to avoid Y collision

The layer segmenting approach makes it rather easy so all nozzles have the same Z, thereby segmenting print jobs becomes easy as well.

Mixing Multi Gantry (MG) with IMEX (IDEX & ITEX etc)

We can also mix Multi Gantry (MG) with IDEX (Dual) or ITEX (Triple), or in general Independent Multi Extruders (IMEX), something like this:

Y-XZ Multi Gantry with IDEX: Independent Dual Extruders
per single XZ gantry
Layer Segmenting of Multi Gantry (4: red, green, blue, yellow) with IDEX (2) per Gantry

And like-wise segmenting layer areas in Y as before, and additionally segment in X for each printhead on Independent Multi Extruders (IMEX), in this example it’s IDEX (Dual).

As IMEX looks like scaling print parallelism further, one has to be aware of the spatial overhead for each printhead, e.g. a single printhead occupy ~40mm width in X, and similar in Y.

IDEX-MG3: Ashtar M vs Ashtar D

Early draft with more details based on Ashtar M (Y-XZ gantry), extended to MG, with Common Y rails with IDEX; and for comparison Ashtar D (XY gantry) with MG and IDEX:

Challenges

  • 1a) When doing a Y-XZ gantry IMEX2-MG3 (2 extruders/IDEX on each 3 gantry):
    • X: 2*3 motors = 6 motors
    • Y: 3 motors
    • Z: 3 motors
    • E: 2*3 = 6 motors
      we end up 6+3+3+6 = 18 motors to coordinate & control.
  • 1b) for XY gantry approach:
    • X: 2*3 = 6 motors
    • Y: 3 motors
    • Z: 1 motor (or more, but all synchronous)
    • E: 2*3 = 6 motors
      we end up with 6+3+1+6 = 16 motors to coordinate & control.
  • 2) Slim design of the gantry to reduce dead-space in Y.
  • 3) Slim printhead design to reduce dead-space in X.
  • 4) Slicer requires to coordinate 6 printheads (e.g. T0-T5) in non-colliding and efficient way.

Solutions

Slicer

A dedicated slicer is required which segments each layer into printable areas A1 to An whereas n is the amount of gantries, and those areas might be further segmented by m-amount of printheads on the same gantry, so they share the same Y position but can have distinct X position but not switch order or collide.

As proposed above, a single printhead of a gantry is then assigned to print within the same Y-segment the walls/perimeters to have a clean wall, hence, the infills are distributed among all the printheads.

For segmenting entire sub-volume and not just layers, the Y-XZ would allow distinct Z, e.g. one gantry printing higher and another lower – the XY gantries share the same Z, therefore there only the layer segmenting is possible.

Firmware & Controller

The controller with its firmware we have a few options:

  • Duet3D/RRF: Multiple motion systems
    • G-code Features
      • M400: wait for current moves to finish (when using T<n> with G1s together, applies to X, Y, Z, and also E)
      • M596 P<n> selects motion queue, prior each G0 or G1
      • M597: collision avoidance (at firmware level)
      • M598: sync up multiple motions (faster waits for the slower)
  • Klipper
  • Marlin
    • one controller per gantry, orchestrating/sync between controller needed, hence a meta controller required (SBC)
      • using M400 to sync each controller by meta controller
    • simple setup, reliable

To keep this in mind, the Y-XZ approach allows distinct Z for each gantry, whereas the XY approach all Z of the gantries are the same.

Adding Tool Changer (TC)

In order to support a tool changer, the printheads need to reach a common position in order to deposit and pick up tools. In case of a single/common Y-rail setup this seems at first sight challenging, only a dedicated tool change per gantry, at a particular a YZ position for example. The multi/dedicated Y-rail setup allows any gantry to reach a common region in YZ, and so any printhead could deposit and pickup a tool from the common toolset.

MG MIEX Gantry StyleToolset position
Y-XZ Common Y railsends of Y rail, unique Z positions per gantry
Y-XZ Dedicated Y railsends of Y rail, common or unique Z positions
XYfirst & last gantry at ends of Y rail, Z fixed

XY gantry setup still can have a tool changer but only the most front gantry, and the most farthest gantry in regards of Y, the gantries in between – if more than total of 2 gantries used – cannot reach a toolset; unless the toolset itself moves close enough to hand over tools.

Commercial Collaboration

Currently I work on a MVP implementing the actual details (software & hardware), if you are interested in a commercial collaboration, contact me to discuss opportunities.

References

Parallel 3D Printing / Additive Manufacturing – Part 1

Updates:

  • 2024/12/09: ready for publication
  • 2024/12/04: completing first table on printheads & nozzles
  • 2024/07/30: starting write up

Introduction

When depositing material through a nozzle, the variables to compose a workpiece depends on the amount of nozzles and their operational spaces – let’s lay out the different methods which gives us the foundation to tackle then parallel procedures in the next part in the series.

Printheads, Nozzles & Operational Space

PrintheadsNozzles per PrintheadNozzle Size [mm]Layer Height [mm]MaterialOperational Space
Single nozzle FDM/FFF110.1-1.00.1-0.6Polymer (PLA, PETG, ABS)100%
Dual nozzle FDM/FFF aka IDEX210.1-1.00.1-0.6Polymer (PLA, PETG, ABS)2x 50%; horizontally separated
Duplex F2210.1-1.00.1-0.6Polymer (PLA, PETG, ABS)2x 50%; vertical separated
CM3P Dual Conical210.1-1.00.1-0.6Polymer (PLA, PETG, ABS)2x 50% of negative cone
Resin SLA (UV Laser)110.1500.050-0.150Resins100%
Resin MSLA (UV & LCD)150M-100M0.020-0.0400.050-0.150Resins100%
Quantica NovoJet1960.050Resins100%
Stratasys J55 PolyJet1192*)0.2*)0.18Resins100%
Selective Laser Sintering/Melting1+10.10.05-0.10Polymer or Metal Powder100%
  • Stratasys J55: nozzles & nozzle size based on J850 specs, J55 details specs seem not publicized (2024/12)

Print Base

A print base is where the nozzle can extrude on. For the first layer, there is the print bed, after the first layer the workpiece or support structure can be build upon. One can alternatively use a stabilizing medium like silicon and extrude in such liquid medium which operates as bed or foundation like Rapid Liquid Printing (RLP) does:

The extruded material just has to stay where it was put, either a solid bed or a medium which prevents it to float out of position, or as traditionally printed on a print bed or base, very similar does Xolography where the solidified resin stays put as well.

Massive Parallel Nozzles Printhead

Resin printing with a printhead may have hundreds or even thousands of nozzles, yet, they share the same operational space, but due the parallel setup the print speed multiplies direct with the amount of parallel nozzles on the same printhead.

Xaar 128 printhead printing high viscous material

Massive Parallel Nozzles: MSLA

As mentioned above, we can also view Masked Stereolithography (MSLA) resin printing as a massive parallel nozzle setup, where each pixel is either an active or inactive nozzle depositing a voxel.

Anycubic Mono M7 Max MSLA Setup

Separated vs Shared Operational Space

Disclosure: I have been contracted to work on the Duplex F2 software stack (2022-2024).

Let’s take a look at the Duplex F2 printer where space is separated vertically, or the CM3P dual conical printer where the cone space is separated horizontally, or the Multi Gantry 3D printer by Proper Printing (Jon Schone). We have two printheads which never collide due their separated operational space, the firmware is simple and path planning is simple, both heads pretty much can operate independently.

When using more than two printheads it is beneficial to share the operational space, yet assume 6 or 8 printheads, each printhead needs rods to keep the printhead and position and orient the nozzle(s), so overlapping operational space requires extreme well planned tool paths avoiding any collision of the printheads.

Regular Operation Space Separation

We can segment or separate the space evenly or according the reach of the printheads, and each separated space can be printed without colliding. Yet, in reality the printheads mounts limit that operational space into slightly smaller spaces, but ideally:

nvolumes = volumetotal / volumeprinthead

If the individual printhead volumes aren’t regular, then we end up with arbitrary amount of printheads to cover a given print volume:

volumetotal = sum( volume1..n )

In reality, we require (slightly) overlapping operation to get seamless operation, so the “regular operation space separation” is only theoretically, but not practically.

Overlapping Operational Spaces

When the printheads can reach each other operational space, they become overlapping and controlling tool path generation needs to take care no collision is occurring (same place at the same time).

The Static Non-Overlapping Operation has static defined operational spaces where the operators can function – it’s quite obvious such solution is impractical, as in real life there would be space which cannot be reached, a kind of blind seam not reachable by either operator.

The Flexible Non-Overlapping Operation is flexible defined operational spaces, in the illustration above those spaces are co-dependent.

The Static Overlapping Operation is when those operational spaces are overlapping, yet, prefixed or static operational spaces.

The Flexible Overlapping Operation is flexible operational spaces, yet due the nature of the setup these operators cannot occupy the same space at the same time which would result in physical collisions.

Now, the last part of the last sentence may sound obvious to even mention, but bear in mind you can have two projectors shining light into a resin bath, and expose and solidify a 3D model, then these two lights acting as operators indeed occupy the same space at the same time as part of their function. So, the operators functioning with light can occupy the same space at the same time, whereas solid operators, such as robotic arms, cannot.

Print Speed in Parallel Setups

total print speed [mm3/s] = nprintheads * nnozzles * vextrusion [mm3/s] * parallelfactor

whereas parallelfactor is 1.0 if printheads can print parallel, or is less if the operational space is overlapping and preventing printheads to operate parallel thereby.

~ * ~

“Parallel 3D Printing / Additive Manufacturing” Part 2 follows later (will be linked when published)

References

3D Printing: Ashtar Series Printhead Options 2021/02

The past weeks (2021/02) I worked on various printhead designs, to summarize and provide an overview by mounting them on Ashtar K:

Also improved the display controller to simulate Marlin firmware and list heads and tool selection (MSE), coordinates (IDEX) or rotation angles (RTN & PAX).

So far all options are available for Ashtar C, D and M as well, but currently (2021/02) are just in draft and mostly untested.

RTN and PAX promise printable support-free overhangs, yet no public available slicing software exists to really take advantage of those two designs, as new algorithms of volume decomposition, sub-volume sequencing, collision detection are required and mostly debated in scientific papers as 2021/02 and only few companies, e.g. HAGE and VSHAPER, implemented new 5-axis 3D printing procedures, and DotXControl advertises a 5 Axis Slicer.

That’s it.

3D Printer: IDEX for Ashtar K, M, D and C (2021/01)

Updates:

  • 2021/01/31: added comparison regarding Multiple Switching Extrusions (MSE)
  • 2021/01/18: added IDEX Features with Pros/Cons, Ashtar Series Genealogy, Comparison Dual Material approaches, and brief Hardware Requirements
  • 2021/01/15: first version with overview side-by-side

Mid of January 2021 (01/12 – 01/14) I added IDEX (Independent Dual Extrusion) option to 4 designs, all still in early draft stage – here as a summary side-by-side:

Ashtar K IDEX has been fairly easy, as I was using an improved “old” design of the X motor mount for the 2nd motor and 2nd belt, and since Ashtar M IDEX is using the same XZ frame, it was a matter of a few minutes to port that option as well.

Ashtar D IDEX with Classic XY belt routing was more tricky as there was little space left to add another motor, so I realized I need to utilize what’s there and take advantage of it – result is a very space saving solution, but it needs to be verified in real life first.

Ashtar C IDEX with Core XY with an additional X motor was easy, I just reused a slightly altered X motor/pulley mount of Ashtar D, so that was done fairly quickly as well, yet the challenge will be the firmware support, as currently (2021/01) only Duet RepRap firmware supports the CoreXYU as my design falls under.

Features of IDEX

Pros:

  • double printing: duplicate or mirror mode
    • double printing volume at same duration
  • two materials with different melting points
  • two colors (non-mixing) with
    • more reliable than dual nozzle setups, as inactive nozzle does not run over existing printed piece often
  • possibly different nozzle sizes
    • dedicated nozzle for infill vs outline

Cons:

  • slightly reduced build-volume in X-axis
  • added complexity

Comparison Dual/Multi Color/Material Extrusions

blue = relevant positive
red = relevant negative

Independent Dual Extrusions (IDEX)

  • complex setup
  • moderate cost
  • non-mixing
  • dual nozzles
  • dual heatblocks
  • dual heatsinks
  • normal retraction
  • no purge block 1)
  • no oozing over print
  • no inactive nozzle traveling
  • reliable 2)

★★★★★

Dual Hotends 2-in-2

  • simple setup
  • low cost
  • non-mixing
  • dual nozzles
  • dual heatblocks
  • dual heatsinks
  • normal retraction
  • no purge block
  • inactive nozzle oozing over prints
  • inactive nozzle travels over print
  • moderate reliability

★★★★★

Chimera 2-in-2

  • simple setup
  • clone: low cost
  • original: high cost
  • non-mixing
  • dual nozzles
  • dual heatblocks
  • single heatsink
  • normal retraction
  • no purge block
  • oozing of inactive material
  • inactive nozzle travels over print
  • moderate reliability

★★★★★

Cyclops 2-in-1

  • simple setup
  • clone: low cost
  • original: high cost
  • mixing
  • single nozzle
  • single heatblock
  • single heatsink
  • normal retraction
  • purge block required
  • no oozing of inactive material
  • clone: unreliable

★★★★ (clone)

Cyclops NF 2-in-1

  • simple setup
  • low cost
  • non-mixing
  • single nozzle
  • single heatblock
  • single heatsink
  • complex retraction
  • no oozing of inactive material
  • moderate reliability

★★★★★

Diamond Hotend 3-in-1

  • complex setup
  • clone: low cost
  • original: high cost
  • mixing
  • single nozzle
  • single heatblock
  • 3 heatsinks
  • tricky retraction
  • purge block required
  • no oozing of inactive material
  • moderate reliability

★★★★★

Multiple Switching Extrusions (MSE) 2-in-2, 3-in-3, 4-in-4

  • moderate complex setup
  • requires additional servo or motor
  • extendable 2, 3, or 4 colors/materials
  • low cost
  • non-mixing
  • multiple nozzles / heatblocks / heatsinks
  • normal retraction
  • no purge block 1)
  • no oozing of inactive material
  • no inactive nozzle touching print
  • reliable 2)

(rating comes later)

Y Splitter x-in-1

  • simple setup
  • extendable 2, 3, or 4 or more colors / materials
  • low cost
  • non-mixing
  • single nozzle
  • single heatblock
  • single heatsink
  • complex retraction
  • purge block required
  • no oozing of inactive material
  • moderate reliability

★★★★★

Tool Changer

  • complex setup
  • extendable to n-colors or materials
  • moderate cost
  • non-mixing
  • multiple nozzles / heatblocks / heatsinks
  • normal retraction
  • no oozing of inactive material
  • no inactive nozzle touching print
  • moderate reliability

(rating comes later)

Footnotes

  1. in theory no purge block, but if ooze shields are shared among switching extrusions (more than 2 extrusions) there may be cross-contamination between colors/materials
  2. the printheads individually are proven to be reliable

Hints:

  • single heatblock = same print temperature
  • dual heatblock = different print temperatures possible
  • dual nozzle = different nozzle sizes possible

Hardware Requirements

  • 1x NEMA 17 42-45Nm with wire, extra stepper motor driver on motherboard
  • 100-110cm long 6mm wide GT2 belt
  • 1x pulley and 1x idler
  • 1x hotend (nozzle, heatblock, heat cartridge, heatbreak, heatsink), extra heating connector on motherboard

That’s it.

3D Printing: Ashtar C IDEX (Independent Dual Extrusion)

Status: just a draft

Updates:

  • 2021/01/14: quick start with a rough draft

Introduction

Well, after the IDEX option designs – still as drafts – worked for Ashtar K (Prusa i3), Ashtar M (Moving Gantry) and Ashtar D (Classic XY), I thought, why not also target Ashtar C (Core XY).

Ashtar D IDEX is definitely a narrow design, so I thought to reuse two parts of it for Ashtar C as well, and hopefully the A and B belts route around – and well, it seems mechanically to work out.

On the firmware part it seems this CoreXY plus additional X motor is called CoreXYU and supported by Duet RepRap firmware – but details need to be researched in more depth. On the first glance the “traditional” CoreXYU setup routes the U belt off the X beam and not place a motor on it as I do, but routes at the end of the frames so the motor is stationary – definitely something also to look at.

Draft

Gallery

Issues to Resolve

  • Firmware supporting CoreXY IDEX:
    • E1: X & Y provided through CoreXY by motors A & B
    • E2: X provided by X motor, Y provided by CoreXY where X=0 remains (both motors A & B have to operate to provide X=0 while Y is moved)
    • Duet RepRap firmware provides CoreXYU support, and it seems it would cover my use case here
    • Marlin firmware as of 2.x does not support CoreXYU yet
  • Moving the X motor – or U motor as in CoreXYU context – off the X beam and route a much longer belt and place the motor stationary like the motors A & B of CoreXY
  • Ooze prevention (same issue as with Ashtar D IDEX)

As I progress I will update this blog-post, and summarize also the developments in the Ashtar C project page.

References

  • CoreXYU: Dual Head for CoreXY, another more complex approach where 3rd motor is also stationary

That’s it.

3D Printing: Ashtar D IDEX (Independent Dual Extrusion)

Status: just a draft

Updates:

  • 2021/01/14: starting the draft, very experimental

Introduction

After just few hours working on IDEX option for Ashtar K and Ashtar M, I thought to try myself on doing IDEX on the very delicate Y carriage on Ashtar D – and after an hour roughly I realized, perhaps it is doable.

The main idea is to reuse the NEMA17 shaft as axis for the idler of the 2nd belt, and use 3mm diameter shaft with 5-10mm length as extension, and stabilize the extension in the idler itself likely the shaft seems long enough by itself – the most space saving option:

If possible, rotate entire X motor mount / carriage and mount it on the other X side.

Draft

I had to color the belts and V modules, as I otherwise get confused while fine-tuning the design within such narrow margins:

  • X1/E1 in green
  • X2/E2 in red

I just love symmetry!
I just love symmetry!

Gallery

Issues to Resolve

  • X motor-mount isn’t fully Y symmetric yet, it’s off by a few mm; needs some further fine-tuning until X2 motor-mount mounting holes align with V module, resolved
  • V module belt mount for X2 needs be adapted, as I can’t mirror it as that “back” mirrored is the “front” side where the printhead is mounted and occupied already, a new piece is required which mounts within the V module
    • dedicated piece ad_xcarriage_beltmount(idex=true) required
  • ooze prevention in rest position: some sort of metal sheet close by where the printhead’s nozzle can rest
  • mature Ashtar D design sufficiently beyond draft stage

As I progress I will update this blog-post, and update the Ashtar D project page as well.

That’s it.

3D Printer: Ashtar K IDEX (Independent Dual Extrusion)


Status
: verified design

Updates:

  • 2021/07/30: design printed and mounted
  • 2021/01/19: improved 2nd X motor mount
  • 2021/01/15: removable/replaceable ooze prevention
  • 2021/01/14: Ashtar M (Moving Gantry – Draft) also with IDEX option now
  • 2021/01/13: ooze prevention at rest position added, mechanical conflict resolved
  • 2021/01/12: starting with a first draft, one mechanical conflict to be resolved

Introduction

I have been pondering on a dual independent X axis upgrade or option for a while, but the other designs of the Ashtar Series I wanted to do first (Ashtar D and Ashtar M) those matured by now (2021/01), so I decided to get back to IDEX upgrade for Ashtar K:

For now I like to keep single 2020 V slot alu extrusion for the X beam where the X carriage rides, and route the 2nd belt above for the 2nd X carriage – and this was a quick solution as earlier version of Ashtar K had the belt routed above the alu profile so I just reused the old pieces again.

“Above routed belt” option with its pieces are weaker and possibly need enforcement improved the strength, so it’s a fast start – just took me 2 hours – but needs definitely some fine-tuning. Alternatively the 2nd belt could be routed at the back of the X carriages, but fastening the 2nd X motor would be challenging.

For now I use the same code base of Ashtar K and introduce IDEX = true flag, and enhance a few existing pieces in parts.scad and optionally add those new pieces when rendering printer-ak.scad.

As I progress with this option or upgrade I update this blog-post.

Draft

Issues to Resolve

  • X carriage #1 belt mount conflicts mechanical with belt 2: redesign xcarriage_beltmount_2020 piece, make it shorted in Z or fasten it inside V module: resolved, shifted 2nd belt a bit Y off, and shorten xcarriage_beltmount_2020(idex=true) by 2mm.
  • “Above routed belt” pieces are weaker: enforcement required, resolved: piece strengthened (2021/01/19):
    • xcarriage_short_hmount_motor_2020 which is the base piece which routes the belt within the 2020, with idex=true option provides idler holder on top
    • X motor #2 is mounted on a x-mirrored version of xcarriage_hmount_motor(20,"left",idex=true) but definitely needs reinforcement, added ooze prevention in case of idex set
  • Nozzle drip prevention:
    • using a piece of sheet metal which the nozzle moves over when in rest position left or right, first attempt done (see below)
    • and/or use purge box with brush to clean nozzle after and before use
    • make extending “nose” detachable/replaceable as it’s expected to break or overheat otherwise entire X motors mount needs replacement, resolved
      • xcarriage_nose-idex-left and xcarriage_nose-idex-right with 10mm wide sheet metal insert
    • how dealing with long resting hot nozzle?
      • drop temperature by 5-10°C in rest position, and heat up when in use again
      • heat creep possible weakening extending printed nose – heat insulation required attaching sheet metal

Gallery

Ashtar M IDEX

And since Ashtar M (Prusa i3 Moving Gantry – Draft) shares much of the Ashtar K design it took me a few mins to add the IDEX upgrade option as well:

References