3D Printer

From All Hands Active Wiki
Jump to: navigation, search

All Hands Active has two Makerbot Industries Cupcake series 3D Printers and a Replicator. The cupcakes are both heavily modified from their original state so aside from the chassis saying Cupcake, refer to documentation shown below. As of 11/02/14, Creamcheese is in the process of being upgraded, it works except for a sticky Z axis. Blackbottom is for experimental use, and now has the same Ramps1.4/Arduino board as Creamcheese.


Creating a 3D Model

Lots of software exists to create models. As long as the software can export to STL file format, you can print your model. Check out the following software packages that we recommend.

  • Trimble (previously Google) Sketchup Make - [1]
    • Skethcup STL Plugin - [2]
  • OpenSCAD - [3]
  • Blender - [4]
  • Rhyno

File Types


The slicing software needs your 3D model as an STL file before it can slice it. Slicing produces a file which has GCODE to describe the toolhead movements for each layer. It is important that your STL file only include one solid water tight object. Missing faces, open verticies and improper normal calculations will cause the slicer software to produce errors. You can fix some of this issues in an automated fashion by using NetFabb Basic, Blender (recalculate normals) and MeshLab's repair mode.

How to fix an STL

You've got holes, or inverted normals? You can fix this by hand, try Blender or Meshlab. For a quick fix either try netfabb basic on client or NetFabb cloud [5]. These can fix basic problems and possibly produce a better file. You need 1 shell, non-inverted normals and no holes to get a good print.

The newest versions of Slic3r will automatically try to fix holes and other errors in your stl files. This can work, but make sure that your model hasn't changed dramatically before printing. Take a look at it in the 3d view.

You can also try these awesome pieces of software:

  • MeshMixer
  • MeshLab
  • NetFabb Basic
  • blender


This is a description of the tool path that is generated by a slicer. The file includes commands which instruct the printer how to move to produce the final object


Replicatorg converts a GCODE file into this reduced and compressed file type. This is equivalent to the GCODE but the smaller and easier to parse file type can be read off an SD card with less work. Use the build to SD card function in Replicatorg to produce this file.


  • Layer Height - The size of each layer the printer produces. This is limited at it's maximum by the size of the nozzle and at it's minimum by the amount of plastic produced and how much stretching occurs.
  • Infill - The pattern and amount of plastic put inside the model to support it.
  • Shells - The number of solid outer layers the model has
  • Raft - A piece of plastic generated to stick to the print bed. This also includes support material for the object
  • Filament - The plastic fed into the printer
  • Extruder - The part responsible for filament melting and forming it into a continuous profile.
  • Slic3r - Produces a GCODE file from an STL file
  • Skeinforge - Produces a GCODE file from an STL file, built into Replicatorg
  • Replicatorg - Produces a S3G file from GCODE and controls the printer
  • OpenSCAD - 3D Solid Modeling software

Creamcheese Cupcake

Current Status

  1. 11/26/2014 - Working. Acrylic available for cutting new Z stage, but not critical.
  2. 11/2/2014 - ACME threaded rods are installed, need to cut out a new Z stage. Current stage is binding against the rods.
  3. 10/4/2014 - New config files from Nick provide excellent prints using latest Slic3r version.
  4. 2/2/2014 - New config files created by Josh provide better looking prints!
  5. 1/4/2014 - Working! Heater was replaced along with the extruder stepper driver. Frank assisted with tuning and all is now well in the world. Go print something!
  6. 12/19/2013 - Karen from Makergear shipped us a new 12V heater! Ours is 24v and can't be driven by the current bot hardware! This needs to be replaced before it works again!
  7. 12/12/2013 - Joshua from MakerGear says check resistance. ~4 Ohm = 12v V3b Extruder. ~14 Ohm = 24v V3b Extruder
    1. Ours is measuring right around ~16 Ohms.
    2. Awaiting feedback from Joshua (MakerGear)
  8. 12/04/2013 - Sounds like Extruder might not be correct version? Emailing MakerGear
  9. 12/01/2013 - Temps of extruder not reaching >195 deg C. Also taking significantly longer. Contacted Tyler.
  10. 12/01/2013 - HBP wire mount added
  11. 12/01/2013 - Wire from RAMPS board to Heater Core connector. Connection on our end was loose. Recrimped.
  12. 12/01/2013 - New MakerGear Extruder mounted
    1. One of the white temp. sensor wires fell out of connector, recrimped.
  13. 11/24/2013 - Sanguino board replaced
  14. 11/21/2013 - Dead! Heater core has melted out of the extruder barrel.
    1. Parts have been ordered, repairs will be made over the next week / weekend

This bots history

This machine started as a Cupcake with Gen3 electronics and Gen3 Extruder.

DO NOT LEAVE THIS BOT PLUGGED IN WHEN NOT IN USE! If power supply is on, bot is on!

  • 6/10 - Bot recieved
  • 7/10 - Changed to makergear hot end
  • 1/11 - The X and Y axis were made a low rider and changed to be quiet and more accurate.
  • 5/12 - The DC extruder died during a 3D printing talk at Penguicon 2012. Switched to Stepper extruder
  • 7/12 - Replaced stepper drivers with Pololu
  • 10/12 - Accelerated
  • 11/12 - Converted to RAMPS motherboard. Use pronterface to run
  • 11/13 - New hot end.
  • 12/13 - New RAMPS and stepper drivers

Things this bot has:

What do I need to run Creamcheese? (UPDATED 10/04/14!)

  • Get Printrun, it comes with pronterface. Grab the newest tested with August 2014 version.
  • Get Slic3r 1.2.0 Experimental -- Updated 10/04/14
  • Get the Creamcheese config files from here: Tyler's repository of cool stuff! - Updated 10/04/14
  • Place the 3 directories (filament, printer, print) and their contents into the Slic3r config directory.
    • Linux: /home/user/.slic3r (hidden)
    • OSX: /Library/Application Support/Slic3r/ (Not tested)
    • Windows 7 : C:\Users\Username\AppData\Roaming\Slic3r\
    • Windows XP: C:\Documents and Settings\edutainment\Application Data\Slic3r
      • You may have to run slic3r once before these directories appear
  • In Pronterface (printrun) options set the following
    • Baudrate: 115200
    • Builtemp_abs: 110
    • Build_dimension: 100x100x100-50-50+0
    • temperature_abs: 215
    • xy_feedrate: 3000
    • z_feedrate: 555

Printing with Slic3r and Pronterface

-- Please use this checklist when using the printer. It helps us track settings and walks you through using the printer. [| Printer Checklist]

  • Get a model in STL format ([Thingiverse.com] or cad program)
  • Start Slic3r and make sure Creamcheese settings are loaded Creamcheese, 3MM ABS, Creamcheese
  • Under Print Settings, change fill density and shells. We recommend .10 fill density and 2-3 shells.
  • Under platter drag your STL files into slic3r or use the Add button. Move things so they will fit.
  • Press export GCode.
  • Save the result.
  • Open Pronterface.py and connect to CreamCheese with baudrate 115000.
  • Load your newly generated GCode file
  • Preheat platform to 110 and head to 215c. Enable "watch" to see it rise.
  • Once at temp, raise the head (either manually or with button) and extrude a little bit of plastic to prime the extruder.
  • Clear plastic, lower head to just touching platform in the center
  • Press print.
  • Bot will check platform temp and raise it if needed.
  • Bot will check nozzle temp and raise it if needed.
  • When at temp a count down will begin in the W:? from W:5 to W:1 and then print will begin.
  • If it doesn't stick, hit pause, re-position everything and hit restart in pronterface. It's also possible to put down blue painters tape, a bit of slurry on top of it, wet it with paint thinner and print on that. See a member for example before you try it yourself. If done incorrectly it can damage the heated print bed.
  • After finish, let print cool on platform. When cool the print should remove easily without deforming. If using slurry, you need to remove the painters tape first.

Changing Filament

Connect to the printer using Replicatorg and open the control panel. Heat the extruder up to 220c (for ABS) and the platform to 110c. When at temp, release the latch on the extruder (blue spring part) and pull the filament upward.

Take the new filament and using wire cutters make sure the end is flat. Feed it down the tube in the extruder and when at the bottom, fasten the latch. Using Replicatorg run the extruder forward until filament comes out. Continue to run it until the color changes to a solid color. Changing from dark to light filament requires significantly more time running the extruder forward to clean it out.

Experimenting with the 3D printer configuration

The firmware for the 3D printer is included with the zip file of configurations found here: Tyler's repository of cool stuff! - Updated 10/04/14

The configuration.h file in the marlin directory includes all the settings neccessary to run Creamcheese as it is currently tuned and configured.

If you are curious how we've done the calculations for running it or if you wanted to try out Creamcheese using Skeinforge instead of slic3r, we've done some work in the past. You can find it documented here: Experimental Config

Repetier-Host: A very limited trial was done using repetier host. The bot heated successfully and moved. Slic3r also picked up the config files provided in our zip. We did not try printing and found repetier to be rather resource intensive compared to pronterface. This was performed on 01/04/14 by Tyler W.


Questions? Can you borrow it? Break something? Contact one of the following people!

  • Tyler W.
  • Michael Sh.
  • Josh W.

BlackBottom Cupcake

This bots history

November 2014, installed Ramps1.4/Arduino board. Firmware loaded. New controller cannot move x-y stage, too much drag with original hardware. Need to print a lowrider x-y stage similar to what is installed on Creamcheese.

This machine was confirmed working on December 19th 2013 by Tyler!

This machine started as a Cupcake with Gen3 electronics and Gen5 Extruder. The DC extruder was upgraded by Ox to a Gen5/6+ stepstruder. The bot originally was given a 3G5D board but it never worked well. As a result we did the ugly cable hack.

At some point Ox decided to donate this bot to AHA!

It was renamed from Ox's bot to BlackBottom Cupcake (alternate name for a creamcheese cupcake) on 7/1/12

Things this bot has:

  • Gen3 Electronics + Gen4 stepper for extruder
  • Mk6 Stepstruder
  • Acrylic Platform
  • .40MM Nozzle
  • Sailfish Firmware.

===What do I need to run Blackbottom?=== (this section deprecated)

Tyler's repository of cool stuff! - Updated 10/04/14

  • Put the *.xml files in your replicatorg machines directory
  • Place the 3 directories (filament, printer, print) and their contents into the Slic3r config directory.
    • Linux: /home/user/.slic3r (hidden)
    • OSX: /Library/Application Support/Slic3r/ (Not tested)
    • Windows 7 : C:\Users\Username\AppData\Roaming\Slic3r\

===How Do I run BlackBottom Cupcake?=== (this section depricated) Using Slic3r, alter settings and produce gcode file. Use the following config to start: Blackbottom - 3MM ABS - BlackBottom (These show up if your XML files are in the right place!)

  • Open ReplicatorG and connect to CreamCheese with machine type BlackBottom - Slic3r
  • File->Open and pick your newly generated GCode file from Slic3r
  • Pick build to file
  • Save the resulting .x3g to an SD card with a filename no longer than 7 characters.
  • Put the SD card in the bot
  • In ReplicatorG open tools->control panel.
  • Preheat the bot to 220. When it reaches temp, turn on the extruder until plastic comes out.
  • Clear nozzle and lower to center of platform only a very tiny (practically touching) bit above it. You can use the controls in the control panel to do this or manually move it. (If the Z axis moves up when you press down the Axis is reversed and settings need to be changed in ReplicatorG!)
  • Close control panel and pick build from file.
  • Choose your .x3g file from the list.
  • If print doesn't stick at start, hit cancel, clean platform and try again. You can adjust the Z height during the start of the print!
  • After finish let print cool on platform. When cool the print should remove easily without deforming.

To fix warping on corners it is advisable to first put down a layer of blue painters tape or masking tape on the non heated build platform.

===Issues?=== (this section depricated) If the bot moves from the center of the platform when you start a print make sure you have the following start g code and end gcode in Slic3r!

(**** begin initilization commands ****) M73 P0 (enable build progress) G92 X0 Y0 Z0 A0 (You are now at 0,0,0,0) M104 S220 T0 M109 S110 T0 M6 T0 (Wait for tool to heat up) (**** end initilization commands ****)

(**** begin final commands ****) M73 P100 (end build progress ) M104 S0 G91 G1 Z10.0 F2100.0 G90 (**** end final commands ****)


Questions? Can you borrow it? Break something? Contact one of the following people!

  • Tyler W.
  • Josh W.
  • Michael Sh.


Current Status

  1. 02/27/2014 Bot seems to be working fine! Frank says it needs new firmware for the extruder fan to run, and some other minor tweaks.

This bot's history

This machine was built by Frank. Build log here: http://dieselpoweredrobotics.com/?page_id=240

Some info on the Tobeca bot: https://www.thingiverse.com/thing:147011 http://www.tobeca.fr/en/produits-2/tobeca/ https://github.com/pyroboynroses/Tobeca

Things this bot has:

What do I need to run Tobeca? (UPDATED 02/28/2014!)

  • Get Repetier host, it comes with slic3r.
  • Get the tobeca config files from here: (frank, link?)
  • In Repetier, go to printer settings and set the following:
    • Under connection:
      • Baudrate 115200
      • COM port: whichever one says usbmodem and then some numbers
    • Under Dimension:
      • Home X: x = 0
      • Home Y: y = 0
      • Home Z: z min
      • Print area width: 180
      • Print area length: 120
      • Print area height: 180
  • Repetier is annoying and won't save settings if you don't leave the text box you put them into. So click into one of the other text boxes, and then hit Apply and Ok.
  • Now you should be able to connect to the printer!


  • Currently no SD card printing, so you must print tethered. Set your computer to not go to sleep or the print will stop!
  • No X and Y endstops, so set home position correctly (front left of platform) and make sure your settings under Dimension are correct or you will jam the printer into itself, which might break things.
  • If something scary is going on, hit the power button first and worry about what's going on second.

Printing with Slic3r and Repetier

-- Please use this checklist when using the printer. It helps us track settings and walks you through using the printer. (NEED CHECKLIST HERE)

  • Get a model in STL format ([Thingiverse.com] or cad program).
  • Prep your build surface. Frank recommends a thin later of glue stick. Another common option is painter's tape. If you use tape, flip the glass platform (it's attached by binder clip) and tape it on the clean non-gluey side.
  • Start Repetier and preheat platform to 55 and head to 225.
  • Home the printer: first, hit the Home button by the Z axis to home it against the Z endstop. Hit Stop Motors, move the X gantry allt he way to the right and adjust the z axis on the right side (by twisting the threaded rod) until the extruder is just above the print bed (you should not see a gap). Now move the X axis all the way to the left and adjust the left Z axis until it is also just above the print bed. Now push the platform as far back as it will go without forcing. The extruder should now be all the way on the left of the platform, pretty far in front (but not all the way in front, and nearly touching the platform). Hit Set Home.
  • While it is still preheating, click on the slicer tab, select slic3r, and click the configure button. Wait for slic3r to launch. Now, load tobeca.ini settings in Slic3r (File->Load Config). You will need to click the little disk button next to the setting name drop down and save it as tobeca for print settings, filament settings, and printer settings. It's weird that we have to do this but this makes the settings visible to Repetier.
  • Adjust anything else in Slic3r settings if you know what you're doing. Otherwise the tobeca.ini defaults should be fine. Things you might want to consider changing: infill (increase to 0.5 or higher for structural parts), support (if you have big overhangs).
  • Grab a caliper and measure your filament in a few places. Average the diameters from the measurements and put them into the Diameter box under Filament Settings. Getting this right will contribute a lot to good prints.
  • Now select tobeca from the dropdowns in the slicer tab: Print Settings, Printer Settings and Extruder 1 Settings.
  • By now we should be at temp. Click on the print panel, and verify that both extruder and heated bed are at temp. Raise the head by clicking the 10 button on the Z axis. Hit the extrude button by the extruder settings (should be set at 10mm). If the extruder is skipping or not extruding, raise the temperature to 230. Do not raise the temperature above 230: the extruder is rated to 235 but tends to underreport temperature. If it is still not extruding well at 230, you are using old or crappy ABS, try different ones (the white and black stuff in the shop are the most ancient and may create problems).
  • Set Speed Multiply to 50% to start. You can adjust this during the print.
  • Set Flow Multiply to 100% to start. You can (but probably don't have to) adjust this during the print.
  • Go to the Object Placement tab and click Add STL file. Pick your STL file now. You can select it in the selector box on the right, and click the button with the truck on the left to move it manually -- a good idea is to position it fairly close to the origin in the front left corner, but leave enough room for a skirt (~1cm or half an inch).
  • Hit Slice with Slic3r. If all went well you should now be in the G-Code tab. You can see the projected path the printer will take.
  • Before you print, double check:
    • On the print tab, are X, Y and Z at zero?
    • On the print tab, is your Speed Multiply at 50% and Flow Multiply at 100%?
    • On the Slicer tab, is tobeca selected in the first three dropdowns?
    • Is your object placed near the front left of the build area?
  • Get ready to adjust the Z height while the skirt is printing. During the skirt, you will want to adjust the Z axis slightly on both sides until it's sticking properly. You don't want a completely round noodle (this won't stick), but don't want a complete smear on the platform. You want to be in between. Ready? Now, hit print.
  • If everything's going well, you can try to crank up the speed above 50%. Presently, it's not recommended to go much above X% (Frank?) because the belts are not tight enough and will slip.
  • If your layers are too fat and splooshy, turn down Flow Multiply slightly (1-2%). If your layers are thin and not extruding well, make sure your filament is good, your temp is high enough, and then turn up Flow Multply slightly (1-2%). Also this means you didn't measure your filament accurately enough or your filament is super inconsistent, try better next time :).
  • After finish, you can let print cool on platform or take off the binder clip and pick up the glass platform so it cools faster. When cool the print should remove easily without deforming. If you used glue stick, you might want to wash the bottom.

Changing Filament

Connect to the printer using Repetier. Heat the extruder to at least 200C, ideally 225C (for ABS) -- lower for other materials. Pull firmly and the filament should come right out.

Take the new filament and using wire cutters make sure the end is flat. Feed it down the hole in the extruder. You will need to press firmly but don't keep pressing if it won't go and make sure it's actually going into the hot end. You shouldn't need to adjust the tension thumb screw, as it is sprung. Using Repetier, run the extruder forward until filament comes out. If you are changing materials or you don't want to get the dregs of the old color, continue to run it until the noodle changes to the new material you inserted.

Folding and Unfolding Tobeca

To set up Tobeca for action, you need to take out the gantry and stick the Z motors in their little holders on the sides. Then insert the thumb screws and tighten. There should be a USB cable in there ready to go. The power switch should be jumpered into pins 4 left and 8 right (is that correct) on the ATX connector.

To fold Tobeca into its home, first raise the Z axis pretty high (this is easier to do when the printer is on). Next, take out the side thumbscrews, gently lift out the whole Z stage, and lay it in its supports. It might be a tight fit. Then I have no idea what to do because it seems to hit the power supply, help!

Experimenting with the 3D printer configuration

Document everything you do!


Questions? Can you borrow it? Break something? Contact one of the following people!

  • Frank A.
  • Michael Sh.


This is a very large delta printer (over 10 cubic feet of build volume) with a new heated bed design and some other new tricks. When we finally finish it, it should be among the biggest deltas and among the fastest DIY printers out there. Perhaps unsurprisingly, it is very hard for people without mechanical design background to design and build such a device. We're working on it!

This Bot's History

The frame is designed and fabricated, motors mounted, heated build platform designed and built. Printed universal joints seeing too much tension from our huge delta geometry and snapping along shear lines, need redesign or sturdier print.

Want to help?

If you want to help, grab a tool and try to put a piece of the design together!

  • (done!) Motor mounts - Pete printed these but the motors need to be mounted and they must be attached to bottom of the frame
  • Electronics mount - The relays, arduino and stepper drivers need to be mounted somewhere along with the power supply.
  • Heated bed - The wire is run but needs to be safely connected with the ceramic connectors to the relays that are controlled by the arduino
  • (in progress!) Arms! The arms are finished and the ends must be press fit on them.
  • U joints - The inner pieces to all the U joints need to be reprinted in better quality. The existing prints had lots of slop in them after sanding and drilling the previous poor prints.
  • (in progress!) Motor wiring - The motors need to be wired and heat shrinked. Nick bought the connectors but they haven't been added. One of the wires has all connections for each pole of the motor labeled. The coloring on the others is the same. The center wire on each pole doesn't need to be used. This converts a 6 wire stepper to a 4 wire.
  • (in progress!) Tighten and square frame
  • Mount bed somehow squarely to the printer base.
  • Redesign belt tensioner mount
  • Document and clean up the OpenSCAD 3D Model file. Contact Nick or Tyler for this file!
  • Extruder - Lots of the parts have been printed, follow misery pusher instructions and assemble.
  • Extruder tube mount - The extruder when complete needs to have an attachment mounted to the bottom to connect to the feed tube. We printed one of these already
  • Extruder mount - The extruder needs to be mounted to the top electronics platform. Ideally we need room for 2-3 extruders here.
  • Hot end - We need to take inventory of parts we have, decide what needs to be ordered and get it setup. Mount for 1 hot end has been lasered and will connect to the center carriage. The tube mount needs to be cleaned up and also attached here
  • Firmware - Take the cupcake firmware, bring it to the modern version of Sailfish and enable the Delta option and begin configuration.
  • Design and build table to bolt printer onto, or use the existing Ikea table.


Current Status

  1. 2/2015 - Alex White has been working on a mount for the Kysan geared stepper. Currently working, and appears to be printing fine.
  2. 11/2014 - Bot received thanks to Ox and Larry. Hot end melted off, waiting for replacement.

Things this bot has:

  • Delta printer
  • Bowden Extruder
  • Heated bed
  • Arduino + RAMPS 1.4 - Marlin firmware
  • Endstops, automatic bed leveling
  • Mk VB J Head extruder with 0.4mm nozzle for 1.75mm filament
  • ~200x200x200mm print volume

Slic3r Settings

Up to date settings for Slic3r can be found here for all current printers. These settings give good results for most prints, but need to be tweaked for individual projects. It is highly recommended to read through the Slic3r blog and manual to learn what each setting does and how they can help make nice prints.

AHA printers Github repository

Changing Filament

Heat the hot end to 220 Celcius. Unclip the paper clip from the extruder and pull the filament completely out of the tube. To replace, push filament up to hot end and clip extruder lever shut.


Questions? Want to help us build or document it?

  • Tyler W.
  • Nick R.
  • Nate Y.
Personal tools