Just the thing for your next 6-color printer build.
EleFu board

I milled a PCB heater for a Reprap, using a 10degree PCB milling bit. It works well, but draws a lot of power, 130+ watts.

PCB Heater, still cutting.

Close up.

I thought the firmware I’ve been using had PID temperature control, but it turns out it was using a simple on/off thermostat routine that caused the extruder temperature to have big variations.

Here are some prints of a RepRap Mendel part, basically a small cylinder. Due to the small size of the part quality really suffers as the temperature swings up & down.

The cylinder on the left was printed with the simple On/Off temperature control, and the two on the right were printed with a On / Medium control, that instead of turning the heater entirely off when the temperature exceeded it’s set limit, just set the heater to a medium value. It’s not a real fix, but it was simple to implement, and still makes a pretty significant difference.

Worse, bad, bad.

The right-most part in this picture will probably be usable, but just barely.

Left = bad.

Here are some larger parts that show the effect in the ‘banding’ you see every couple of layers, and the lower layers that are %100 solid internally, are a bit wider, which they should not be.

Notice the horizontal banding.

The code I changed isn’t *much* better, but it helps some, if you’re using the tonok-MMM firmware fork look at the file Tonokip_Firmware.pde in the manage_heater() function:


The original code was this:

if(current_raw >= target_raw) digitalWrite(HEATER_0_PIN,LOW);
else digitalWrite(HEATER_0_PIN,HIGH);

and I replaced it with this:

if (target_raw <= 50) {
analogWrite(HEATER_0_PIN,HEATER_0_OFF);
} else {
if(current_raw >= target_raw) {
analogWrite(HEATER_0_PIN,HEATER_0_LOW);
} else {
analogWrite(HEATER_0_PIN, HEATER_0_HIGH);
}

and added these lines to configuration.h:

const char HEATER_0_LOW = 85;
const char HEATER_0_HIGH = 255;
const char HEATER_0_OFF = 0;

The HEATER_0_LOW value should be a number in the 0-255 range that allows your heater to cool from your usual print temperature, be careful not to set it too high, or your nozzle will never cool down. As mine sits now it will idle at about 165C when the heater is on ‘Low’.

I’ve replaced my X axis, which was bronze bushings sliding on steel rod, with a recirculating-ball linear bearings and guide. The former X axis had enough play in it that you could feel it just by wiggling the print bed, and was affecting print quality quite a bit.

Between my new extruder hot-end, this new bearing, and lowering layer height to 0.36mm, I’m getting print quality that’s better than anything I’ve produced to date.

It’s also faster, so much faster that I’ve had the motor miss a few steps. I’m experimenting with feeding 24 volt power to the stepper motor drivers, and initial results seem good, although everything runs a bit warmer. I also have another linear bearing, and may use it on the Y axis.

Here’s a “before” picture of my previous X axis slide:

Bronze bushings sliding on steel rod.

And here’s a picture of the new linear bearing & rail:

Recirculating-ball linear carriage & rail

Here’s some of the first test prints I did with the new bearing:

Twist-cube, printed with new X axis linear bearing

A one-cent bottle opener

Here is some video of it in action, if you listen carefully you can hear the *tick* *tick* *tick* *tick* of the ball-bearings clicking around their recirculating channels inside the carriage.