Welcome! Log In Create A New Profile

Advanced

RepRap X2V3, Dual Carriage Mendel for Printing w/ Support or 2 Materials

Posted by dob71 
RepRap X2V3, Dual Carriage Mendel for Printing w/ Support or 2 Materials
February 07, 2014 04:16AM
Hi all,

I'd like to share a design that came out from several years of developing and using dual extruder machines.
The main use case has always been printing with soluble support and that's finally (after water soluble PVA failures)
seem to work for ABS/HIPS combination. Dual color and simultaneous printing of the straight or mirrored
(RepRap X2V3 only) copy of the object is a nice bonus.

The simplest best working solution (so far) turned out to be the dual carriage design with nozzle wipers.


Hardware and electronics design, specialized firmware and host software support, are available.
You can find more information here: http://www.okob.net/projects/reprap_x2v3/default.htm
There is a shorter version on Thingiverse: http://www.thingiverse.com/thing:239745/#instructions

The things I'd still like to improve:
- the wipers design (thinking about one direction tilting, when hotend slides into parking, then returning back under its own weight);
- host software support generation (need sparse support structure throughout the all the volume with just the top layers being dense;
- tuning filament compression compensation (firmware feature).

Enjoy!
- dob71
Re: RepRap X2V3, Dual Carriage Mendel for Printing w/ Support or 2 Materials
February 07, 2014 06:09AM
Hey

Nice to see another Prusa i2 dual x-carriage build.
I have made one to last month.
Se my thingiverse link here for more info.

[www.thingiverse.com]

Congrats

Jesper
Re: RepRap X2V3, Dual Carriage Mendel for Printing w/ Support or 2 Materials
February 08, 2014 12:18AM
Hi Jesper,

Checked your Prusa i2 mod. Great extruders. Looks like despite motors and gears they allow hotends to get very close.
Detailed build instructions for those would be nice.

BTW, my experience with covering the idle extruder nozzle (especially when printing PLA and large objects) is that
the plastic liquifies and pours down inside the hotend. That creates an initial splodge followed by shortage of plastic
when that extruder goes back to work. Priming it after being idle helps to start printing nicely...

The machine looks great!

Good luck!
- dob71
Re: RepRap X2V3, Dual Carriage Mendel for Printing w/ Support or 2 Materials
August 13, 2014 01:54PM
Hello

I used your idea and firmware to build me a Mendelmax 1.5 like printer with 2 X-carriages.
it all works great, printing with only extruder 0 or only extruder 1 works also.

but now my problem.
When I want to print a object that uses 2 colours (so the 2 X-carriages together) it all goes wrong.
- the first layer everything is going well. First extruder 0 is making its part and then extruder 1 is making the other part
- then when it starts the second layer the extruder 0 starts at a position that lays 20 millimeters in Y- direction compared to the part that it printed at the first layer.

This keeps on going at each tool change in steps of 10 to 20 millimeters in Y- direction, untill it hits the Y- endstop and from there it wil stay on its position...
Now I think the Y position is lost each time there is a tool change, but I don't know why and how to get it working.
It has nothing to do with loosing steps because it happens in such a constant number of millimeters. And it only happens when I use the 2 X carriages in one print object.

I think it has something to do with slic3r.
So my question to you was, could you tell me what kind of tool change Gcode you are using? I only use the
G28 ; home X axis

Or what you think there could be wrong here?

And how do you start the mode to mirror print? and duplication printing?


I thank you for your great work on the X2v3.
And i thank you in advance for your reply.

Kind regards,
Geert
Attachments:
open | download - IMG_9607.JPG (383.5 KB)
open | download - IMG_9608.JPG (400.3 KB)
Re: RepRap X2V3, Dual Carriage Mendel for Printing w/ Support or 2 Materials
August 13, 2014 05:43PM
Hi Geert,

1.
Let me start with the easy one, the duplicate printing:

- M322 - Turns the "follow me" mode on or off for an extruder (parameters: T<extruder_number> S<1-on/0-off> ), it's automatically off for the active extruder. If used without S parameter the command prints current settings. If used without T parameter applies to all extruders.

Basically, the steps for dual printing are:
- prepare, prime and position both extruders for printing;
- switch to the extruder that will be your "master" extruder (let's say 0, i.e. send to firmware "T0");
- turn on "follow me" mode for all other extruders by sending "M322 S1" (or you can specifically choose extruder 1, "M322 T1 S1");
- proceed to printing G-code instructions.

For mirror mode use "M322 T1 S1 R1" (option R turns on mirroring). You can find the description of the M322 command in the readme here: [github.com]

2.
As for the Y position drifting after the extruder change, it's hard to tell.
I can only give you pointers where to start investigating (you mentioned hardware is ok, so will assume it's the software problem):

- Have you installed X2SW ? If not, give it a try. It lets you to pull profiles that work for X2V3 machine w/ Marlin X2 firmware.
I've made profiles for Skeinforge only so far, but you can examine the start/stop and extruder change G-code that is generated when those profiles are used.
The instructions on how to use the profiles are at [www.thingiverse.com] (scroll down to the "Host Software" section).
Note, that those profiles do not just change extruders when dual color printing, they do extra retract and prime the extruder that was idle after activating it.

- Check firmware extruder offsets (send "M503" command and see what it prints out for "M218"). Maybe you have stale setting for Y axis offset.

- Check if Slic3r is configured to perform extruder offset in G-code (the setting used to be on the printer configuration tab, extruder options).

- I'm using M331/M332 (save/restore position), so (although it shouldn't) maybe the use of "G28 X" is causing the problem...

There isn't much that can go wrong for the Y axis, so can't think of anything else so far.
If the above leads won't work post your dual print G-code file (just the first few layers). Maybe there is a clue there.

Good luck!
- dob71
Re: RepRap X2V3, Dual Carriage Mendel for Printing w/ Support or 2 Materials
August 15, 2014 02:24PM
hello

thanks for your quick response!
Yes I have installed the X2sw software, so I will take a look at al the points you mentioned!
I hope it will be working in a matter of days!
And when not I will post the first layers of my gcode!

thanks a lot for the help so far

Geert
Re: RepRap X2V3, Dual Carriage Mendel for Printing w/ Support or 2 Materials
September 29, 2014 01:43PM
Hello

So I found the problem, it is exactly the thing you said. The command to home the X-axis in slicer doesn't work. but now I think I have found another way to get the carriage to the home position.
But my next problem has to do with the use of an LCD.
I use the smart LCD from reprapdiscount, and I have commented it in de marlin firmware like this:

//to disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out:
// please keep turned on if you can.
#define EEPROM_CHITCHAT

//LCD and SD support
//#define ULTRA_LCD //general lcd support, also 16x2
#define SDSUPPORT // Enable SD Card Support in Hardware Console

//#define ULTIMAKERCONTROLLER //as available from the ultimaker online store.
//#define ULTIPANEL //the ultipanel as on thingiverse

// The RepRapDiscount Smart Controller (white PCcool smiley
// [reprap.org]
#define REPRAP_DISCOUNT_SMART_CONTROLLER

// The GADGETS3D G3D LCD/SD Controller (blue PCcool smiley
// [reprap.org]
//#define G3D_PANEL

//automatic expansion
#if defined(ULTIMAKERCONTROLLER) || defined(REPRAP_DISCOUNT_SMART_CONTROLLER) || defined(G3D_PANEL)
#define ULTIPANEL
#define NEWPANEL
#endif

// Preheat Constants
#define PLA_PREHEAT_HOTEND_TEMP 178
#define PLA_PREHEAT_HPB_TEMP 80
#define PLA_PREHEAT_FAN_SPEED 128 // Insert Value between 0 and 255

#define ABS_PREHEAT_HOTEND_TEMP 220
#define ABS_PREHEAT_HPB_TEMP 110
#define ABS_PREHEAT_FAN_SPEED 100 // Insert Value between 0 and 255

#ifdef ULTIPANEL
// #define NEWPANEL //enable this if you have a click-encoder panel
#define SDSUPPORT
#define ULTRA_LCD
#define LCD_WIDTH 20
#define LCD_HEIGHT 4

#else //no panel but just lcd
#ifdef ULTRA_LCD
#define LCD_WIDTH 16
#define LCD_HEIGHT 2
#endif
#endif


But then when I try to compile it it gives an error, like it is shown in the image I have attached to this post.

Do you maybe have any idea what I can do to prevend this error? I know it is only when I use the LCD as defined in the firmware, the error is in the part where the LCD menu is defined.


With kind regards,
Geert Zegers
Attachments:
open | download - Error.png (169.7 KB)
Re: RepRap X2V3, Dual Carriage Mendel for Printing w/ Support or 2 Materials
September 29, 2014 02:33PM
I'm using the same LCD (got it working recently), but getting it worked required a bunch of changes.
It works ok and supports a lot of the multiple extruder settings of the firmware, but I'm still poking in the code trying to make a few improvements.

Will push what I have later today to a branch and post here.
Re: RepRap X2V3, Dual Carriage Mendel for Printing w/ Support or 2 Materials
September 29, 2014 03:21PM
thanks a lot, the strange thing is that it worked the first time I uploaded the firmware. Then while I was trying to get the printer working with slic3r I fried the Arduino Mega.... So I got a new one and now the firmware isn't working tongue sticking out smiley
But it would be great if you can post it smiling smiley
Re: RepRap X2V3, Dual Carriage Mendel for Printing w/ Support or 2 Materials
September 30, 2014 12:41AM
I've pushed to branch "lcd".

If your LCD controller worked before, then likely we have different ones and the settings from your config file is what you'd still have to use.
The controller I use currently (and the config files/code on the branch are tweaked for) is "full graphics" smart LCD controller from reprapdiscount.
Those compilation errors you saw should be fixed anyway since the menus in ultralcd.cpp are shared.

If switching to your config causes any compilation errors please let me know.


Sorry, only registered users may post in this forum.

Click here to login