Sunday, November 30, 2008


I tried an experiment in support material. The idea was to use the same extruder for both support and build. The host software allows you to do this but it's a relatively recent change. It's not available in any of the official releases (I think, correct me if I'm wrong on that) but, if you build from the SourceForge source, you can do this.

The first thing I did was create a second extruder in the host settings. I copied all the Extruder0 settings and made them Extruder1, then set NumberOfExtruders=2. Extruder1's settings differ from Extruder0's like this:

ExtrusionInfillWidth(mm)=2.4 (instead of 0.8)
NumberOfShells(0..N)=0 (instead of 1)
ExtrusionSpeed(0..255)=175 (instead of 215)
MaterialType(name)=support (instead of ABS)

The intent here was to make a sparse and loosely-bonded mesh. The lower extrusion speed causes the ABS to be stretched into thin threads. The wider infill width creates an open weave pattern. The zero shells removes the outline around each layer. The end effect is a structure that looks a bit like a plastic pot scrubber.

To test, I used a 20mm sphere with a support object. I exported the two objects as sphere.stl and sphere-supt.stl. Now, to get the two objects to print together, you have to do this:
1. Load sphere.stl (when prompted, choose ABS)
2. Select the object (this will bond the object to the next one loaded)
3. Load sphere-supt.stl (when prompted, choose support)
4. Position and orient the (bonded) object in the build area

Note: The select-and-load thing to bond objects is a relatively new feature too.

The first image above shows the object as printed. The blobiness is mostly due to not having a proper nozzle cleaner yet. The second image shows the object after picking the support material off using my fingernail. The support material crumbled off fairly easily from the lower layers but was more difficult on the upper ones. The third shows the object after cleanup using a Dremel.

The upper layers of the support object are probably unnecessary and do more harm than good. The build can support itself once it's past a 45 degree overhang. I might try again with smaller support object.

Sure, it's a long way to go to make what's essentially a marble but it was an interesting experiment. I haven't tried anything with a purely-horizontal overhang yet. Not sure how that'll turn out.

Y Axis Cleanup

I think I found the Y axis problem. It looks like the X motor mount was catching on impefections of the rod it rides on. Two points seem to be a problem:

1. The block that constrains the lower side had a sharp inside edge. This seems to have been due to the molding process. Mine are molded parts, not printed or laser-cut. I removed both of these blocks (one on either side of the motor) and ground down the edges.

2. The rod was also catching on the side of the hole it passes through. When properly calibrated, the rod shouldn't even touch the plastic. I could've sworn I had that right in the first place. Best guess is that the X axis shortened over time due to a) X belt tension and b) the fact that I didn't tighten the X axis rods enough. I loosened the X belt, adjusted the X axis length and tightened everything back up again.

After that, I cleaned and lubricated the Y axis rods and used the stepper exerciser to run it through its paces. Seems to be behaving now.

Saturday, November 29, 2008

Y Axis Troubles

Been having a lot of trouble with the Y axis. Seems to jam frequently, especially when traveling in the negative direction. What's worse is, since the Y axis is driven by two belts, if one belt slips and the other doesn't, the X axis skews, making things even worse.

Sunday, November 16, 2008

A Host of Problems

Decided that the 0.8.3 host wasn't versitile enough. Tried downloading the latest source. Messed around with Eclipse and SVN. Eventually got a compile. Ended up deleting the old properties file and letting the host build a new one. The properties had changed so much, they didn't really apply anymore. Played with the values until I got it more or less printing.

Ran into difficulty with orientation. Opened the minimug object and, as usual, rotated it on the X axis to get it upright (ctrl-X). Started the print and got what looks like a vertical slice through the center of the model (tapered square-ish U shape). The print seemed to be centered on the warmup segment as well.

Set RepRap_Machine to Simulator to save on filament. Still got the same behavior. A lot easier to see using the simulator. The simulation starts with a vertical slice through the middle and works its way across to one edge. After it finished, Hit Print again and it printed correctly. WTF! Restarted the app, loaded minimug again and got the sideways print. Second print came out right, though.

Restarted and loaded the file again. Played with the 3D window a bit to see if the model was really on the grid and not intersecting it. Hit Print and this time the first print came out right. Again, WTF!

Half an hour of fiddling later figured it out: The model prints incorrectly only when it's selected. As long as you deselect the model first, you're fine. Mentioned this to Adrian. Fixed now.

Set up the properties to avoid lifting the head between segments. Also zeroed any extruder delays. Turned on the foundation parameters (raft).

Tried printing a RepRap ring. Foundation printed OK. Partway through the first "real" layer, the head homes, sits there for a bit, then picks up where it left off. But the extruder motor stays off for the remainder of the layer.

Checked to make sure I had all the pause and wipe parameters off. Kept doing this periodically. Happened to look at the screen at the right time and noticed the heater warmup dialog pop up. Turns out the head was cooling off, which caused the warmup routine to kick in, which apparently caused the extruder motor to stop for the rest of the layer.

Reason the warmup routine kicked in is that, somewhere in the past few days, I messed up Extruder0_hm, causing it to have trouble maintaining its working temperature. Set the value correctly. Will try again tomorrow.