Saturday, December 6, 2008

Chain of Events

Yesterday, one of the Y belts slipped again. This caused the carriage to skew slightly...
...which caused the Y flag to miss the opto...
...which caused the carriage to crash and snap the Y flag.

I readjusted the Y axis yet again and replaced the Y flag.

Shortly after that (and possibly related) the thermistor failed. The printer was plotting at the time but, when the thermistor is an open circuit, the extruder PIC stops responding to the host. This resulted in the extruder sitting in one spot, churning out molten filament.

I replaced the thermistor, slapped on some JB Weld and let it sit overnight. The new thermistor had different characteristics (100k vs 10k), so I had to update Rz and Beta. Everything else stays the same.

Currently putting everything back together.


Apparently, on putting it back together, I swapped the pins on the extruder motor. Caused a bit of confusion for a while but no damage.

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.

Sunday, September 7, 2008

More Mods

I've almost got the machine to the "set it and forget it" point. It's more like: set it, watch to make sure the first layer sticks properly and check once in a while to make sure it isn't completely messed up.

Here are some recent tweaks...

Floating bed, mounted on 3 springs and held down with bolts. Makes leveling a lot easier. Also takes some of the pain out of a head crash.

Z opto guide (the blob of polymorph). It's essentially an inverted V with the opto's gap at the apex. Keeps the Z opto flag from running into the opto posts.

Drilled a hole through the shaft couplers (both Y and Z) and inserted a pin.

Added a lubricator (oily rag) to the filament guide (bent paper clip).

Two-ply balsa raft (two sheets of balsa glued together cross-grain). Held down with carpet tape. I tried using antistatic foam but it works a little too well. It's extremely difficult to remove without ruining the foam.

Saturday, September 6, 2008


Filament wasn't feeding at a consistent rate. Eventually figured out that the drive coupling was slipping relative to its gear. Had to remove the gear assembly to tighten it (added a bit of superglue to keep it in place) and took the opportunity to add grease to the gear motor internals.

Also noticed an increasing about of drift on the X axis. Tracked that down to the X motor pulley working itself loose. That was a bit more difficult to fix. Didn't really want to disassemble the X motor bracket just to tighten the set screws. Managed to achieve the same result by rotating the pulley until the set screw lined up with the X axis, then slipping an allen wrench between the belts. Did this for both set screws.

Currently trying to print a "motor holder" onto an antistatic foam raft.

Tuesday, September 2, 2008

Bed Covers

I've been experimenting with various raft materials. The MDF bed isn't suitable for a build. The melted plastic doesn't stick to it. What you need is something that sticks to the Here's a list of things I've tried:

Polymorph (ShapeLock)
- easy to use, sticks well, reusable
- heat from extruder softens it, allowing warping
- hard to get perfectly flat

Adhesive Paper (full-sheet labels)
- sticks to bed
- plastic doesn't stick

Adhesive Plastic (self-adhesive laminating sheets)
- sticks to bed
- plastic doesn't stick

Plastic Canvas
- doesn't work at all

Carpet Tape
- sticks to bed
- plastic sticks but not well enough to prevent warping

Balsa Wood (1/8" sheet)
- plastic sticks well provided first layer is low enough
- curls easily across grain, allowing warping

Balsa Wood (2 sheets glued together with orthogonal grains)
- plastic sticks well provided first layer is low enough
- minimal warping

I found it's critical to have a perfectly level bed. In order to get a good first layer, you need to get the nozzle extremely close. If you get too close, though, the nozzle will dig into the surface. This is especially bad if the head is moving in the negative Y direction. In that case, the surface catches the nozzle and drives it downward, resulting in either a gouged surface or a damaged head.

One thing I've been meaning to do is add a Z-bed like the one shown here. It's basically a secondary bed mounted on springs. This will allow easier adjustment and should also make head crashes less painful.

I also need to replace the Z opto flag with something a bit less flexible. There's a tendency for it to slip to the side a bit and miss the slot on the opto. Also, if I'm adding the Z-bed, it'll need to be longer anyway.

Tuesday, August 26, 2008

Best Laid Plans

Tried printing the "motor-holder" model. From left to right: 1) Y belt slipped a bit, 2) Y belt slipped a lot, 3) actually printed reasonably well.

This a first attempt at "gear-bush-holder", which I modified (hopefully correctly) to print without support. About 1/3 of the way through, the Y motor coupler came loose.

Monday, August 25, 2008

Mod Squad

Some modifications I've made...

Blobs of polymorph on the X and Y carriages to keep them from wobbling so much...

A bent paperclip to keep the filament out of the way...

A piece of plastic tubing clamped to a bookcase to feed the filament...