Wednesday, July 29, 2009


Doorstop Heater Block

Wandering B'n'Q the other day, I checked the bargain bin and found this:
From ResistorHeater

It is a brass doorstop: Basically a 1 inch brass rod with a M6 threaded hole down the centre. It's just about the right size to make a heater block! And, it's reduced to £3!
I picked one up to play with.

Closer inspection revealed that the central threaded hole projects all the way through the block, stopping at the small indent for the O-ring.

I hacksawed through at the indent, cutting off a 20mm chunk - the m6 thread goes right through.
I drilled a couple of 6.5mm holes through for my resistors - and widened them a little, as my resistors are not straight, and added a small hole for a themistor.
Widening half the m6 thread to m8 allows me to screw in a Peek insulator.
From ResistorHeater

Here's a pic of the components:
From ResistorHeater

and assembled:
From ResistorHeater

Firing it up, I found that it reaches 220C in about 7 minutes, with no insulation. The heater seems pretty sturdy and well-attached. Starting up my (fixed) BfB extruder drive, I waited expectantly....
From ResistorHeater

Hurrah! It extruded several cm of filament - reasonably quick too!

If it starts up again later, then I might be able to build something soon!

Extrusion: 220C at motor speed of 120/255. Nozzle 0.8mm welding tip, 1.01mm filament

Labels: , ,

Monday, July 27, 2009


Heater Blocks

In my quest to ignore conventional wisdom and make my own extruder, I've started playing around with resistor heaters in blocks like NopHead.

I looked around for a while, and found a mild steel block (30x30x10mm) at my local engineering suppliers. They also supplied me a couple of 1 inch (25mm) cubes of copper.

With one of the steel blocks, I drilled two 7.5mm holes laterally and filled them each with a resistor wrapped in tinfoil to provide a tight fit (and better heat transfer). I drilled a 5.5mm hole through the block and tapped it to M6 thread.
From ResistorHeater
With an M6 welding tip, I extended the m6 thread to all the way down the barrel. Then, drilling it out to 3.2mm, I made a mistake and drilled it all the way through. I now had a short copper tube with m6 outer thread. This screwed through the heater block, leaving 5mm top and bottom. The existing BfB nozzle screws nicely onto the copper thread.

Screwing a m6 coupling nut onto the top allows me to connect a drilled stainless steel bolt. Stainless steel is a poor conductor of heat - not as good as PTFE insulation, but helps stop the heat transfer up the shaft.
From ResistorHeater
Firing it up, there is a lot of thermal inertia - it takes a while to get going (2-3C per second). It finally tops out at 210C without any insulation. The stainless is not a brilliant insulator - it gets fairly hot (70C) at the washer/support end, but should be usable.

Labels: ,

Sunday, July 26, 2009


First meeting of the Michigan RepRap Users Group

Saturday, July 25th 2009

The meeting started at noon, and lasted until after midnight. Approximately 15 members attended, several leaving throughout the night. Our host, Phil Frost, provided an excellent workspace with an incredible workbench, an impressive assortment of tools, and enough
space for all of us to work simultaneously. Five RepStraps were in attendance, though one left early in the day. Much progress was made on the remaining four. I believe everyone wielded a tool at some point during the night.

Devon's (stmaus) McWire:
- Phil and Devon hacked steadily on the McWire throughout the night. They replaced suspect directly soldered wiring with modular headers, mounted all the electronics neatly to the machine, installed software, achieved motion on all three axes, and were working on mounting a bits-from-bytes extruder head as the meeting ended.

Nicholas's (mccoyn) MDF Darwin:
- Nick worked on wiring, and assembled an MDF pinchwheel extruder. Near the end of the meet, he borrowed a 4th stepper controller from me to test it's functionality.

Ben and Tim's wrench-buildable machine:
- Ben worked throughout the night with Bill Putt on this machine reminiscent of Lego. Two motor mounts were added (as well as two motors), lead screws cleaned up with a die and installed, the X stage was coupled to it's lead screw, and some planning was done for the Z

Tim's MDF router:
- Matt Michielsen and Nick McCoy worked tirelessly to debug a firmware problem while I looked on, over their shoulders, and occasionally pointed them to the right website. A few possible causes were eliminated. Daniel Eakin diagnosed and fixed a wobbly dremel collet. Carpenma's partner (who's name I have forgotten) generously completed the Gen3 electronics for this machine with an assembled extruder controller v2.1 board.

Among other activities at the meeting were:
- several (unsuccessful) attempts to program the bootloader on a RepRap motherboard and two extruder controller boards (later followed by success with one of the extruder controller boards, sadly after the other two boards had left with their owner)
- Installation and initial toying with HeeksCAD
- beginning construction of a MDF router
- A great deal of cross-pollination of ideas and knowledge about various open-source projects
- distribution of donated NEMA-23 tin-can style steppers
- great conversation and food

With respect to the group purchase of extruder components to build
Generation 2 pinchwheel extruders:
- I was able to collect $30 from everyone who had pledged and attended last night! I should be able to put in the group order as soon as the last couple payments come in through paypal. We might have parts in time for the next meeting (if Zach isn't out of stock). Currently, that means 16 pinchwheel extruders under construction by MiRUG members!

And the last business of the meeting, we decided to re-convene in the same location on Saturday, August 8th 2009.

Thank you all.

Timothy Schmidt

Wednesday, July 22, 2009


GCode scripts, software anti-backlash and simulations


It's been a while since my last posts.

There has been a lot of talk on repeatable positioning. I've created a gcode processor in php. Find download information and documentation here. You should not even consider it beta, but It Works for MeTM. I will try to maintain and improve it.

It allows you to rewrite 3D Gcode from tools like Skeinforge and use them with the 5D firmware. I've added a number of other neat features, one of the cooler ones is backlash compensation. I was having trouble increasing the quality of my prints any further, I've tried everything with the hardware, but there still is some play on the Y axis. Eventually I mitigated the problem in software. The picture below shows the effects:
From 3D printing!

On the left, you see a chess pawn printed without backlash compensation. On the right, this "software" setting was turned on. This is a very effective way to reduce backlash, which in hardware becomes disproportionately harder when you need to go further. You hit constraints like exceeding a healthy belt tension, running the motors with too much power, etc.

This play is not there on my X axis, because that one doesn't use microstepping and has more resonance/vibrations. Vibration can actually be a good thing (no, I didn't mean it like that :-) ). My theory is that this vibration causes the XY-carriage to settle closer to where it's supposed to be, instead of lagging a bit behind when it was supposed to move.

Now, my script adds an amount of movement that you can configure per axis. It was actually easier than I thought, so it's definitely something to add to the Java host and to skeinforge as well. You need to set up 4 variables, backlash_X_forward, backlash_X_reverse, backlash_Y_forward, backlash_Y_reverse. The compensation simply needs to know the direction in which it was moving, and add the backlash (right?). The static friction seems to be symmetrical, but the length of the belt (that stretches slightly) connecting the pulley to the Y axis, is asymmetrical.

I've made a simulation of the RepRap's Y (or X) belt drive in Phun, which really is Phun...

You can find more information on the simulation (including downloads) here.

The GCode post-processor can also do simple find- and replace's on Gcode lines, which I currently use to speed up the raft making (of which the base layer is slow in Skeinforge, with a reason I now learned). It can perform actions on X, Y or Z variables based on criteria (e.g. Z-position / height of the current layer). All of the features can be turned on or off in a configuration file or in the top section of the php script, but again, please accept that it's unstable and use it for inspiration for a more robust solution.


Labels: , , ,

Thursday, July 16, 2009


RepRap taking off in Michigan

A couple of us kicked off a RepRap users' group for people in Michigan ( just a few short weeks ago, and we're already pitching in to buy parts for 10 extruders as a group. A few of us can also be found on IRC at #mireprap on freenode. Our first real-life meeting is on the 25th of this month, near Brighton MI, during which we intend to bodge two nearly-complete machines into working condition.

If you're in Michigan, or anywhere near Detroit, Lansing, or Grand Rapids (the three major population centers in Michigan - and consequently the three areas most group members inhabit), please join the group and show up to a meeting!

Thursday, July 09, 2009


RepRap Website Down

Update (12.06 UTC):

We are back up again. But I'll leave the information below in case it's useful.


Sorry folks - the main RepRap website at has temporarily caught swine flu. We are working on getting it back going. Meanwhile you can go to a backup here:

That's not the very latest content, but it should have most of the information you need.

The RepRap video that everyone's trying to see is at either of these locations:

And (despite this minor setback...) don't forget to vote for RepRap in the Sourceforge awards here...


Another Repstrap crawls into existance...

What I believe is Australia's first working Rep(st)ap.... I've built a *JunkStrap*.

it is defined loosely as:
"built from "whatever I had laying around".

more images here:

for those interested:
* top-left is a 2nd-hand torioidal transformer and diodes/capacitors for 45 supply ( drives steppers )
* black boxes at left are of-the-shelf stepper drivers locally sourced, using 45 supply.
* bank of 10W 18ohm white resistors near left is to prevent the 45V from frying my steppers. These resistors get HOT, so my steppers don't have to. :-)
* rails are extracted from 3x Ancient Epson A3 dot matrix printers, complete with big knarly steppers and belts. ( two of the rail sets are used for Y, and one sits on top and is used for X ( which runs on Y rails below it.) - one large stepper is visible middle-right.
* Z-axis is my least favourite, but does the job. It's a Aluminium framework with 2x U extrusion elements standing vertical. The timber between is NOT attached to the aluminium, and slides up-n-down between them, using them as guid rails.
* Picture above shows a hand-made ( hacksaw, plastic, bolts ) classic darwin threaded-rod extruder , which has since been replaced with a much lighter and more reliable pinch-wheel extruder. ( see other pics )
* circuit boards are Gen 2 electronics purchased from the shop, except for the controler which is a Arduino Mega, cause my firmware is a bit bigger than usual and 14K was just not enough. 128K is way overkill, but having an additional 4 hardware interrupts ( only on the mega) is very handly. I used them for 2x opto-end stops, and 2x encoder-wheels ( for my extruder, and my Z axis) .
* Y-axis was ( until a couple of weeks ago ) dual-threaded-rod driven ( as the above pick shows to the keen observer) , but is now dual-belt-drive ( see later pics in the link provided ) .
* Extruder "hot zone" is made with high-temp kneadable 2-part putty from local hardware store "Bunnings", it is labeled as "Farenheit 500" ( Manufactured by PC-Products Protective Coating Co. in Allentown , PA, USA) , nichrome wire ( from local electronics store "Jaycar" ), brass threaded rod drilled through, and dome-nut carefully machined and drilled to 0.8ish. ( could do to be smaller, if I had the drill bit )
* Extruder "optical-encoder" is from a HP printer, part number Q-9502. it's got a laser diode and lense enabling it to read quadrature signals from an encoder wheel with about 800 slots. ( no,not 8.... 800! ) - overkill, but it was free. ( not in photo above)
* ABS filament was sourced from New-Zealand, from the same people that supply Vik. :-) Import Duties were bearable, and I have about a 100 years worth now. :-)
* I'm running on very-customised GCode_Interpreter at the moment, and almost finished porting my code to run on the FiveD_Firmware that Adrian released.... it's non-trivial for me, as I use 2x DC motors ( extruder, and Z axis) , not all-steppers as the software is designed for... and my stepper-drivers are not the "step and direction" type. :-)
* Yes, it prints, quite well now. the java software says it travelled 9.4 meters, and printed 5.6m, to make a shot-glass, and took about 15 minutes.

Sorry for the long post, let me lnow if interested in more details and/or more specific pictures.


I am president of "Hackerspace Brisbane" - the First Hackerspace group in Australia! If you are local, get in contact with us!

Tuesday, July 07, 2009


PCB Making Tutorial

Hurro long time no post.

I have moved/am moving my blog over to :-

Partly because I wanted to do some things that the blog site was not really designed to do.

The first documentation set I have put up is a set of instructions on how to make single sided PCB's.

If these are of value to anyone you can link straight to them :-

Hope this is of value to someone and my apologies to the folks for whom this is just more wheel inventing.

Hope you are all well



This page is powered by Blogger. Isn't yours?

Subscribe to
Posts [Atom]