Monday, January 11, 2016

3D Printer happiness

I knew this day would come, but never thought it would take this long to come.  Am happy to announce I'm pregnant..  OK, well, not really pregnant, but do have a new "kid" in the terms of a functional 3D printer.
First print, little dismal

After I wrote this article, over a year ago, put the RigidBot project on hold for couple of reasons.  The primary reason being didn't have any place to permanently keep it.  Now, as I transformed my dining room table into a U-shaped desk, refocused my efforts on the 3D printers I do have (with more on the way).

To that effect, here is my lengthy story on what I did to get this working.  While not everything is in it's final form yet, it's come a long way and is in a great place now.

Reason for changes

No matter what change is being done, or suggested, there's always a reason change should be considered.  Sometimes we're not sure why go down a different path than we do, but in the long run will get back on the proper, and right, path.  Such is so with this printer, and what I've replaced from stock.


As identified in my previous article (linked above), the electronic components were in pretty bad shape overall.  While I did give up on them fairly early, almost immediately, a fair number of people have had success.  Others took similar routes to me.  Some switched to a 12V system (more options) while others kept with the same 24V system, but different electronics.  The main difference between 12V and 24V (or others) is heater cartridge for the extruder (what melts the plastic) and the heated bed.

I chose to use the Rambo board, due to it's compatability with 24 Volts, and it's all in one quality design and manufacture.  Granted, it's a little pricey, especially as had to buy a second one due to a bad solder job after I snapped the USB connector off due to carelessly placing it.  With that aside..

Install and configuration, in hindsight, is fairly easy.  Will cover software configuration later on.  In short, the board is based on Marlin, and not the fish silly.


Every one craves and/or needs power, muahahahaha (evil laugh).  What I'm talking about is of the electrical power variety.

I chose to replace standard power supply with a higher quality one, and gave the old RigidBot power supply to someone as I drove through Salt Lake City.  The guy who received it was very happy, though not sure if it truly worked, or was a dud.  Just hope it didn't start smoking like some others reported, as smoking is bad for your health....  Oh how I know.
Meanwell SE-600-24

The power supply I decided on is a Meanwell SE-600-24, and ordered it from TRC Electronics.  Will order from them again if have the need to.  Hooked it up with some heavy duty power cord 12x3 (12 gauge stranded with 3 wires in a housing) around for a project I didn't finish, so utilized that for this.  Cut the length in two and attached all three legs (output) of the power supply to the three different in puts to the board.

One input is for the heated bed, one for the extruder itself, and one is for power to the electronics board (which then changes it to 3.3 or 5V).  This is all spelled out in the diagram for this board.

Here is where I did something not so good, in that for each leg, I use the same color for both the positive and the negative.  I know, I know, but at least kept all positive in one wire bundle and all negative in the other.  Maybe that'll atone for some of my sins here?  Or elsewhere?


This also took some time to overcome..  My RigidBot extruder was one of the faulty ones where the heater block had a flaw in the manufacturing process.  This flaw was that there were some things drilled to close to each other which resulted in a hole between the melt channel and where the thermistor screwed in.  Through the little tiny holes it is possible, and highly likely, that the melted plastic would cause a mess.

To this end, my extruder search ended up with me qetting a QU-BD MBE V9 Dual Extruder, with stepper motors and 24V stuff.  Had to order the fans separately as believe 12V came included, but did get 24V heater element.  Now, there were a few problems, which I remedied, by replacing a few parts.

In the picture on their website, there is a big white thing between the motor and the fan / heatsink.  I removed this as didn't like that there is one set screw to control feeding pressure.  It's also somewhat of a hassle to adjust.  Replaced this with the stock RigidBot extruder parts.  I like these as had them on hand.  Thought would like them more, but think would have chosen metal parts to help dissipate heat from the stepper motor controlling extrusion rate.

Final extruder in action
Was able to successfully extrude for quite awhile, though after about 10-20 minutes it would plug up.  No matter how hard manually push the filament in it wouldn't extrude any more.  If pulled it out, let the end cool, insert and push, it would extrude beautifully.  Heat buildup outside of the "melt zone" caused this as it starts to melt the filament before the barrel was designed to.  It's a common problem with this extruder.

There are a couple ways to overcome this.  Could have used some thermal adhesive to dissipate the heat faster, but instead chose to get an M6 x 30mm heater barrel, drilled out some to accept a PTFE sleeve.  Long story short, without the buzzwords, is it's a standard heating barrel, but there's a lining (not silver) that is a good insulator and is very slick to make things slide smoothly.  This prevents the early expansion, yet limits barrel temperature to about 260C or below.

One reason why chose this extruder initially is it came with it's own mounting plate, they call it a universal one, which was somewhat close.  Of course, it was much more involved than just sliding that on.  Had to manufacture another build platform before could use the universal building plate.  This is because the original one didn't have enough room where needed it, and didn't want to chop the original to shreds.  Picked up a sheet of light steel from Ace Hardware and made something which works.

With the remanufactured extruder base, another problem appeared.  Wanted to still use the Universal one as am looking to use the second extruder, so needed way to mount it.  Came up with a solution in where would use one of the M3 bolts attaching the base to the bearings, and then a bolt on other end to keep it from moving.  Will have to revisit how have it aligned when add second extruder.  Wrote this in hopes that it'll give someone an idea on what to do.  What could have done is just made the new base accept the two extruders, but wanted to easily remove extruders instead of having to undo eight screws.  They made it hard to work on.


Including stepper motor wiring here also.  This was done contrary to what is illustrated in the wiring diagram, contrary on many levels.

  1. Diagram shows wire colors, as connected to the stepper motors (along bottom edge) as being red - green - yellow - blue.
  2. Wiring to have stepper motor work, is red - blue - green - black (black).
  3. Final stepper motor wiring (reversed) is black (black) - green - blue - red.

Granted, this is confusing, and it is to me too,as was baffled when the extruder motor (from Quintessential) used colors that didn't seem the norm...   Not that I know what the norm is, nor do many people just yet.  Their motors seem to have same wiring as ones from RigidBot and the colors still don't match wiring diagram.

Needs to be organized, works though!
It seems that the original firmware settings for RigidBot had these wires reversed, so kept it that way if only to ease my stress level with getting it running.  If do this again will make sure it's the "standard" that's found in original firmware.

The end stops were somewhat functional though the included wiring for them was abysmal.  I also chose to replace these and had to hack away at the plastic end stop bracket to mount these new ones.  Used some guerilla glue to secure.

I had an additional problem, as documented here, where extruder motor would cut off.  Thankfully, after several wasted days, due to my own blindness, it was discovered to have been loose wires.  A quick bit of solder fixed it all up.

As mentioned above, to provide wire to the Rambo board, used some 12x3 (or 12/3) wire which had.  Total output of the power supply is 25 amps @ 24V.  Over 3 channels that's about 8 amps per channel, if equal output.  Max fuse on the board is 15 amps, for heated bed, and believe this wire is rated at 20 amps, give or take.  This should give me enough leeway to stay happy and healthy and relatively safe.  Everything's relative, right?  Or a relative..


Originally had no idea which firmware to use, then remembered, that Pronterface tells you when connecting to a printer, and it listed Marlin 1.0.0.  Turns out to be a customized Marlin, which is linked above, but also linked here too.  I did download Marlin, and then modified appropriately with customized settings, such as changing values for the extruder, choosing a different mainboard (301), automatically having extruder cooling fan turn on when it reaches 50C (or off if fall below), plus couple other smallish things.

The current firmware I'm using is listed here.  It's my own repository so it's a point in time, but something known to me.  Will be updating as necessary, though updates could be sporadic.

To load firmware, the Arduino software is needed.  If remember right, just this software is needed, as well as drivers included in the software, to update and load the firmware.  It's been awhile since done it so don't remember for certain.

The loading process is similar to connecting to printer via Pronterface.  First select the comm port, then click the upload button.  Arduino software compiles it first, then uploads.  Make sure that disconnect from the printer in Pronterface else might (will) get a cryptic error.

Couple more things to note, some settings are primarily firmware driven, such as steps the stepper mover must take to extrude 1 mm of filament, how many steps it takes to move platform, or printhead 1mm, how many amps are supplied to the stepper motors, and quite a few other things.

Reason bring this up is that if have problems, like I did, with the stepper motor not moving all the time, it could require changing the firmware.  There was also the problem of the up /down axis (Z) not moving up at the same time.  On the RigidBot there are two motors controlling that, and they must both move same amount each time, without issues.  For this maxed out the amps (1.0) can send.


While firmware is software, people generally refer to these two as separate, as firmware is run at the hardware level, handling all the low level, but important stuff, and generally doesn't need any user input to function at it's basic level.

Software, on the other hand, controls things in a different way, soliciting input from users, displaying output, and all sorts of other jazz.

From what I am aware of, there are two main software packages for controlling open source printers.  One is Pronterface (Printrun), the other is Cura.

With my limited viewpoint so far, Cura is more glitzy and keeps things simpler.  One major downside, for me at the moment, is it doesn't seem to let us control the printer directly as don't see any sort of "control panel" to raise / lower the bed, turn heater on (for preheat), etc.  Unsure if it expects to rely on "hard panel" on printer itself, or what.

While the name Pronterface doesn't evoke details of beautiful and stylistic printing, it does the job in a rather gung ho way.  Interface is different from Cura (which has softer colors), some things are hard to find, but it is rather full featured and gives people the most control over the printer.

For now, am sticking with Pronterface, though will give Cura a go later and see how it handles things.

Money Shot

Bed Leveling

This is of note, and pretty standard.  There are four metric bolts, and some springs, that control the bed.  What I did was to raise extruder to the top, turn off motors, and manually adjust each side so there was the same amount of gap.  From this point lowered bed using Pronterface until tip of extruder touched plate, then raised a little.  Turned motors off again.  Now I carefully moved print head around to each corner, adjusting as necessary until bed is leveled.

It is necessary to adjust as needed if noticed the first layer is little thick in someplaces or a little stringy in others.  With not much practice can see what's properly squished vs not squished.  When it's needed, adjust in small increments, 1/4 turn or less, to get the proper squishiness.

Additional printing enhancements

Makeraser - Got this from KickStarter as well.  Creates an ABS slurry (mostly acetone) which put on the print bed.  Using this creates a surface that PLA adheres to better, am assuming ABS would too.

Printing filament - OH MY GOODNESS, didn't realize had so much.  Need to find things to print now.  Have 5 kilo's (11 pounds) of 1.75mm PLA in various color spools, plus another 15 pounds of 3mm ABS, plus 20 pounds of ABS / PLA pellets for my FilaStruder.

Food grade silicone - To spray and lubricate the rods and threads and most anything that moves, except for motors.  Lubrication is KING!

Additional changes

As most any 3D printer owner will tell you, changes are inevitable.  My anticipated updates to the printer include the following:
  • Install LCD display to control printer
  • Print mount for LCD (already in print queue)
  • Print updated platform for main board (printing now)
  • Add Max end stops
  • Make dust cover for filament spools on the rack
  • Add second extruder
  • Possibly get big nozzle extruder to print super fast.
  • Make somewhat enclosed build area (reduce drafts)


  1. You can enable the expert control interface in Cura, which will load a prontrface UI, but I use Repetier Host instead.

  2. Thanks! Couldn't find expert control in Cura, though will start experimenting with Repetier host. I like that it uses Cura's slicing engine as Slic3r is notoriously sluggish...