Introduction: Turning a 3D Printer Into a 2D Plotter? Drawer? Choco Nozzle!

A 3D printer is a beautiful thing. I have one in my classroom, but I use it sporadically. I have done a few projects with my students, but I am still not too familiar with the ins-and-outs of it. I love getting the emails from Instructables on new projects and contests, and I saw that there was one with chocolate. My 3D printer was looking at me. Over my shoulder. Whispering, "Do something. Come on." I wondered if I could print chocolate with my 3D printer. Do chocolate printers even exist? (They do, and they are expensive.)

Could I modify my 3D printer to put chocolate on page? Or paper? Or some edible surface? After some sleuthing, I got the idea to modify my 3D printer into a 2D plotter using melted chocolate as the ink. I hope you enjoy my entry into the chocolate competition as much as I enjoyed making it.

Supplies

Hardware

  • Creality Ender 3 Pro 3D printer
  • PLA filament
  • Wilton Dessert Decorator Plus Cake Decorating and Icing Tool
  • Ball Bearing - 8mm
  • Food grade heat shrink tubing
  • Heat gun
  • Creality Ender 3 heating cartridge (optional)
  • Aluminum foil
  • Elastic Bands
  • Mini binder Clips
  • Cable ties
  • Microwave
  • Various hex and screwdriver bits

Software

  • TinkerCAD or modeling software of choice
  • Inkscape with KM-Laser and J Tech Laser Tool Extensions
  • Ulitmaker CURA
  • Text editor software like Notebook ++ or texeditor.co

Foodware (?)

  • Melting chocolate
  • Wax paper or edible paper

Step 1: Printing the Syringe Holder

I modified their pen holder in TinkerCAD to be a cake decorating syringe holder. I printed the holder on the Creality Ender 3 Pro, using Ultimaker CURA to generate the gcode file for printing. I printed with PLA on the recommended settings from the manufacturer. There are channels for cable ties to mount the holder to the printer head and to hold elastic bands to hold the syringe to the holder. There is also a notch in the holder to fit the syringe neck into.

Step 2: Add Extensions to Inkscape

Inkscape is a free drawing software. https://inkscape.org/release/inkscape-1.2/

You must install two extensions for this project, the KM-Laser extension to hatch fill in your drawing and the JTech Photonics Laser Tool to generate the gcode for the project.

KM-Laser: https://github.com/KnoxMakers/KM-Laser

Click on the Code button and then download the zip file. Inside the zip file there will be a folder labeled 'extensions.' You will need to open it, copy all the folders and files that live there and paste them into the Inkscape 'extensions' folder. This one allows you to create a "hatch fill" on an image.

J Tech Photonics: https://jtechphotonics.com/?page_id=1980

Download the extension that matches the version of Inkscape you have.

You will copy all the files in the zip (both of them) Once you have both zip files, find your Inkscape folder and find the extensions folder. Paste the files from the KM Extensions folder and the J Tech folder into the Inkscape extension folder.

Step 3: Modify Some Gcode

We now will modify some of the code in one of the extensions that you downloaded and dropped into the Inkscape extensions folder.

Find the Laser.py file and open it up in a text editor (such as texteditor.co or Notepad ++)

In the file, there is no start Gcode to heat the extruder nozzle (more on that later), lift up the printer head, or move it home. There is no ending GCode to lift up the print head and disable the stepper motors to remove the print. In the Laser.py file, we will add this code to give us some time before the print and move the print head at the end.

In the Header and Footer of the code, we will add the following details

For the Header

'header': """

G90

M109 S50

G0 Z20

M117 5 You like Chocolate?

G4 P1000

M117 4 Well its coming!

G4 P1000

M117 3 ChocoChocoChoco!

G4 P1000

M117 2 Patience!

G4 P1000

M117 1 YUMYUMYUM!

G4 P1000

M117 Drawing..

""",

And now the Footer

'footer': """

M109 S0

G0 Z20

G28 X0 Y0

M18

"""

Make sure you save the file in the extensions folder of Inkscape (where we put it before). Now every time you run this extension, it will have the header and footer instructions already in place.

Step 4: Modify Your 3D Printer

Disassemble printer head (details on photos) and snip the cable ties holding filament tube and wires. Unscrew and take out the heating cartridge and the thermocouple from the aluminum block.

Fold a small piece of aluminum foil around the thermocouple, then continue wrapping the aluminum foil around the heating cartridge.*** optional step below ***

Slide about 6 inches food safe heat shrink tubing around the cartridge/thermocouple/aluminum foil and fold the other 6 inches up. Shrink with a heat gun and use a cable to attach the free end to the wires.

Reattach printer head housing.

Cable tie syringe holder to printer housing. Run cable ties through the cut-outs of the syringe holder.

Drop ball bearing into syringe nozzle.

Insert shrink wrapped heating element into syringe.

Secure syringe to mount. I used a few elastic bands, but cable ties can be used as well.

Secure edible paper to printer bed.

***Optional Step***

If your heating cartridge does not want to come out from the heating block, you can buy a new heating cartridge very cheap. I opened up the base of the printer and plugged in the new heating cartridge wires.

Step 5: Make an Image to Print

We are going to write some words in chocolate here and fill them in. Open up Inkscape and click on the text tool to write something. We will need to do a few modifications to this before we use our extensions that we downloaded.

  1. Highlight all the text and under Path select Object to Path. This will make the letters a vector so it can printed. You can check that it is a vector by clicking on one of the letters. They should turn into node handles that can be dragged.
  2. Set Fill to none and Stroke to a color. Fill is the middle coloring of an object and stroke is the outline. Laser programs read the Stroke values, so we need to turn them on and the Fill off.
  3. Make sure all the text is selected, then under Extensions select the KM-Laser and Fill-Hatch Fill. This will create a hatch fill pattern from your stroke that the printer will follow. You do not need to do this, but if you do larger images, it will fill them in. I have had success and failures with this extension. It really depends on your print and the settings you choose.
  4. Move the image to the bottom left of the print area.

Step 6: Turn the Image Into Gcode

  1. In Extensions select Generate Laser Gcode > J Tech Photonics Laser Tool..
  2. A toolbox will appear with a set of parameters. See the image for notes on what to set them to. Click Apply.
  3. This blue fuzzy looking thing will be the path that your printer head follows. There will also be two sets of coordinates. These are to tell us where the print will be in relation to the bottom corner of the printer. They will not be printed. I measured my syringe to be 0mm in the x direction 75mm in the y direction, so add 75 to the second value for both.

Step 7: Prepare the Chocolate

Place the melting chocolate in a microwave safe dish and heat at 50% power for 15 second increments. Remove and stir after every 15 seconds.

Pour into syringe and place heating cartridge into the chocolate.

Step 8: Load the File and Print Deliciousness

Print, let harden, and enjoy.

Just kidding. This was actually a very challenging step. Bed leveling, chocolate temperature, print settings... they all came into play while doing this. Many instances did not work, it took many, many iterations to get to something that would work. Luckily, I did get something to work.

Step 9: Text Success!

I got text to work...somewhat! Go me!

Step 10: More Complex Images

I wanted to see if I could print some images. This is where I messed around with the KM-Laser Hatch Fill extension. How it worked, that is up to you. I wanted to pick a recognizable image that shows that I am old, but also that I know that memes exists. I decided to pick Smudge, the salad cat. You know the salad cat.

I imported an image of the cat to Inkscape, Trace Bitmap'd it, turned off the fill and on the stroke. I tried to print it with and without hatch fill. They both worked to varying success. I feel that if I had a smaller tip and had a more fine-tuned heating situation, I could print a higher resolution image. However, I am just trying to proof a concept. I am quite happy with my results and would love it if people remixed, improved, and iterated my many iterations.

Chocolate Challenge

Second Prize in the
Chocolate Challenge