3D Printing – Settings, Photos, Problems

With more than expected traffic on the 3D printer setup and instructions… a few comments that might help.

PROBLEM: Leak in printer nozzle

The printer nozzle initially leaked melted plastic through the threads and later broke when I tried to tighten it… (while it was hot).  If you look at the last photo in the build instructions, there was a small puddle of white plastic on the top of the printer nozzle as it made the test part.  This is not supposed to happen.  The threads are large and didn’t seal correctly to hold in the melted plastic. 3D printer nozzle leak

Eventually, the plastic flowed over the printer nozzle and onto the part.  Not good…  So, I removed the plastic and cleaned the extruder head with solvents – very messy.  Re-assembled everything, tighter.  Yea, it didn’t fix the problem.  Actually, plastic started leaking from both ends of the extruder.  When I tried to over tighten the nozzle and feed tube, the threads cracked in the housing (see photo below).  I ended up replacing the entire heated nozzle assembly.  Lesson: Do not try to over tighten anything on the printer.

Broken Print Nozzle

SOLUTION: With the new extruder, I wrapped PTFE (Teflon) pipe tape on the threads.  Problem solved.  No more leaks.  Also, PTFE melts at 327°C.

New Printer Nozzle

 

QUESTION: Close up of the filament path in the feed mechanism.

Here is a photo of PLA filament as it enters the extruder nozzle.  Yep, it just sits in there and can be difficult to get in the tube at the bottom if the filament is curved (as most are).  Make sure you press down on the thumb screw area when installing the filament (while supporting the extruder from the bottom).  This compresses the spring and moves the silver wheel away from the motor driven gear to allow the filament to pass to the intake tube.  If the nozzle is hot, you should see the plastic squirt out of the nozzle when successful.

Please note: The cooling fan and exchanger has been removed to show the filament path (these need to be reinstalled). Also, the cartridge heater and temperature sensor have been pulled out for this photo… These must be in place before trying to heat anything (else the heater will be damaged).

PLA Filament Enter Nozzle

 

QUESTION: Can you show a photo of the drive belt connections? 

The drive belt is held in by these little gripper teeth with two parts.  Push the belt through the part with the slot, insert the screw, and tighten into the part that mounts on the extruder assembly (with teeth facing outwards to grip the belt).

Drive Belt Back View

side-view-of-extruder

 

QUESTION: Print not going well.  What are your typical print settings?  

I have been using PLA and had a few problems.  First, make sure your print bed is level and very close to the printer nozzle (0.3 mm is my initial layer thickness).  Move the printer nozzle to all corners of the printer bed, make sure the distances are the same at all corners.  The build bed cannot touch the nozzle!  Yet, if it is too far way the material will not stick.  I have tried glue stick, wet glue coating, masking tape, bare metal and now the cheapest painter’s tape possible – it didn’t seem to matter as much as the nozzle position to the print bed.  The closeness is important.  Almost touching…

For the settings:  Too hot, it warps, too cold it doesn’t stick, too much inner fill and the part can curl up into a ball (this happened to me when I tried to print a flat part).  Too hot of an extruder and the part comes looking melted.  Too fast and the extruder just grinds away and does nothing.  Too fine of a build and the layers just melted together loosing all details (I had to lower the temperature to <205 for really fine details to work).

Lately, I have been using Cura with a slightly hotter temperature… It seems to work alright… Here is a screen shot of the settings.

Cura Settings 1Cura Settings 2

 

 

 

 

 

 

 

 

 

 

Good Luck!

Finished DHT-Trinket-LCD in Frame

Trinket Pro Humidity and Temperature Sensor for Your Desk

So, I wanted to measure the temperature and humidity in my office.  Typically, a simple hygrometer and thermometer could work.  But, how do you log the information?  Paper and pencil?  What happens when I am away?  So, in this project we wire up a small micro-controller, temperature and humidity sensor, screen, and a micro-SD card adapter to log the data. Then we use the 3D printer to make a nice little frame.

Parts:
Adafruit Pro Trinket – 5V
10k Ohm Resistors (3)
DHT11 basic temperature-humidity sensor
Small Prototype Boards
SainSmart IIC/I2C/TWI Serial 2004 20×4 LCD Module Shield For Arduino UNO MEGA R3
MicroSD card breakout board+
A small SD card
Jumper Wires
Old USB phone charger

Step 1: Solder on the header pins to the trinket micro controller and SD card breakout board

Adafruit Pro Trinket 5V Chip new and pinsheader pins in prototyping boardadafruit 5V microSD breakout board about to have pins soldered onSolder chip to pins
New Trinket Pro Chip
Pin Header
Set on Chip
Solder in Pins

Step 2: Press the trinket, card board, and DHT into the prototyping board

Trinket Pro on prototyping board - onlySD board, DHT, Trinket Pro on prototyping board - no wires yet
Pro Trinket
SD Board, DHT, Trinket

Step 3: Connections:
— Trinket Pin 10 to SD Card “CS”
— Trinket Pin 11 to SD Card “DI”
— Trinket Pin 12 to SD Card “DO”
— Trinket Pin 13 to SD Card “CLK”
— Trinket Pin “5V” to SD Card “5V”
— Trinket Pin “G” to SD Card “GND”
— Trinket Pin “5V to DHT Pin 1 (looking at it from the front Left pin is 1)
— Trinket Pin “GND” to DHT Pin 4
— Trinket Pin 8 to DHT Pin 2
— 10kΩ Resistor from Trinket “5V” to Trinket Pin 8 (this is a 5V digital pull-up)
— 10kΩ Resistor from Trinket Pin A4  (this is a I2C 5V pull-up, hidden under chip in photo)
— 10kΩ Resistor from Trinket Pin A5 (this is a I2C 5V pull-up, hidden under chip in photo)
— Cable from Trinket Pin A4 to Screen Pin “SDA”
— Cable from Trinket Pin A5 to Screen Pin “SCL”
— Cable from Trinket Pin “BUS” to Screen Pin “VCC”
— Calbe from Trinket Pin “G” to Screen Pin “GND”

Trinket Pro, DHT, SD Card Board - Wired up on Prototyping Board

 

Step 4: Write the software
The software needs to do 3 things:
a) collect temperature and humidity from DHT
b) Format and display the info on the screen
c) Save a copy to the SD card

Software Structure:

// Libs for the Screen (Need wire for I2C and Liquid Crystal to setup Display
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// Libs for Sensor (Provides sensor functions)
#include "DHT.h"

// Libs for SD card
#include <SPI.h>
#include <SD.h>

// Constants for Sensor
#define DHTPIN 8 // What digital pin we're connected to?
#define DHTTYPE DHT11 // Sensor Type

// Constants for SD Card
const int chipSelect = 10;

// Setup DHT sensor's connection pin and type
DHT dht(DHTPIN, DHTTYPE); 

// Setup Screen Settings
// Set the LCD I2C address to 0x27
// It has 20 chars and 4 lines
LiquidCrystal_I2C lcd(0x27,20,4); 

void setup() { 
 lcd.init();          // Initialize the lcd
 lcd.backlight();     // turns off the backlight for effect
 lcd.setCursor(0,0); 
 lcd.print("Initializing SD card...");
 
 // See if the SD card is inserted and can be initialized:
 if (!SD.begin(chipSelect)) {
 lcd.print("Card failed, or not present");
 // can't do do anything with it
 return;
 }
 lcd.print("card initialized.");  //Found the card!

dht.begin();  //Start the DHT functions
}

//Main program Goes HERE!
void loop() {
 // Wait a few seconds between measurements.
 delay(30000);

 // Clear the Screen
 lcd.clear();
 
 // Get humidity from Sensor and store as variable "h"
 float h = dht.readHumidity();
 
 // Read temperature as Celsius (the default)
 // Store temperature in variable "t"
 float t = dht.readTemperature();
 
 // Read temperature as Fahrenheit (isFahrenheit = true)
 float f = dht.readTemperature(true);

 // Compute heat index in Fahrenheit (the default)
 float hif = dht.computeHeatIndex(f, h);
 // Compute heat index in Celsius (isFahreheit = false)
 float hic = dht.computeHeatIndex(t, h, false);

 // Print info to the screen
 lcd.setCursor(0,0);  // Top Line
 lcd.print("Humidity: ") & lcd.print(h) & lcd.print(" %");
 lcd.setCursor(0,1);  // 2nd line
 lcd.print("Temp: ") & lcd.print(t) & lcd.print(" *C ");
 lcd.setCursor(0,2);  // 3rd line 
 lcd.print("Temp: ") & lcd.print(f) & lcd.print(" *F "); 
 lcd.setCursor(0,3);  // 4th line
 lcd.print("Heat Index: ") & lcd.print(hif) & lcd.print(" *F");

 // Make a string for assembling the data to save in log file
 // This a comma separated file that will look like this:
 // H = 10 %, T = 32 *F, T = 0 *C, HI = 12 *F
 String dataString = "";
 dataString += "H = " ;
 dataString += String(h);
 dataString += " %, T = ";
 dataString += String(f);
 dataString += "*F , T = ";
 dataString += String(t);
 dataString += "*C , HI = ";
 dataString += String(hif);
 dataString += "*F";

 // Open the file. Only one file can be open at a time
 // The file is or will be called datalog.txt
 File dataFile = SD.open("datalog.txt", FILE_WRITE);
 
 // If the file is open, you can write to it
 // You print the assembled string (called dataString) into the file
 // println command prints the string and moved down one line in the file
 // the next reading will be printed on the next line
 // then close the file and start all over again, go back to the top of loop code 
 if (dataFile) {
 dataFile.println(dataString);
 dataFile.close();
 }
}

Step 5: Upload the software

Step 6: 3D print the screen holder

You can get the stl file here.

3d printing of a lcd screen frame holder

3D Printing the Frame

Step 7: Insert LCD into the Frame, stick on the control board

Screen Connected to Trinket Pro For DHT Sensor Project

Screen and board inserted into the frame.

Temp-Humidity-Sensor Frame Assembled Back

Control board fits on the frame ledge.

Step 8: DONE!

Finished DHT-Trinket-LCD in Frame

Finished Temperature and Humidity Sensor Powered by a USB phone charger

 

3D Printing – Anet A8 – Build Instructions

So, I finally purchased a 3D printer… I am old enough to remember when the RepRap project started way back in the early 2000s. You know, before it became a commercialization race.  So, I’ve been watching, waiting, and finally had the free time to start a new hobby. Well, not really.  I’ve got some design work that needs prototyping.

China finally came online as a cheap manufacturing center for low cost consumer 3D printers.  Distributed via the Amazon network with 2-day shipping, and presto I’ve got a box of parts that purport to be a 3D filament extrusion printer.  The instructions are a silent video on YouTube. Nothing is labeled. And everything feels cheap.  But the reviews are good.

3D Printer as Packaged

3D Printer as Packaged from Amazon.  This is an Anet A8 (sold as a Prusa i3 type). The top smaller box is the PLA filament. This is plastic extruder type. It has a 0.4 mm nozzle, uses a 1.75 mm filament, and can to an alleged 0.05 mm layer thickness.

 

 

Layer 1 of Printer Parts

Layer 1 of Printer Parts: Build Platform, wire covers, tools, screws, display assembly, power cable.

Layer 2 of Printer Parts

Layer 2 of Printer Parts: Frame parts, z-axis mounts, control board, cooling fans, usb cable.

 

 

 

 

 

 

 

 

Layer 3 of Printer Parts

Layer 3 of Printer Parts: Frame parts, power supply, extruder, stepper drive motors, rails, linear bearings.

 

Remove Paper from Plastic Parts

Remove protective paper from plastic frame… 1 hour of paper removal. No labels.

 

Interesting Nut Holder Design. Where a screw holds the parts together.

Interesting nut holder design. Where a screw holds the parts together. You need to hold these tiny nuts in the slot and press the opposing parts together and fasten with a screw.

 

Assemble the frame by inserting the nut into the slot and then binding with screws.

Assemble the frame by inserting the nut into the slot and then binding with screws… tedious is an understatement, especially when a nut falls out.

 

The bottom of the frame is held together with threaded screws and opposing nuts.

The bottom of the frame is held together with threaded screws and opposing nuts. Measure to make certain they are equally aligned. The front smaller frame unit has a roller bearing for a drive belt. In the back center, you have the motor mount.

 

The Y-Axis limit switch screws into a holder.

The Y-Axis limit switch screws into a small holder. This will hold a nut and be screwed into the back lower frame.

 

Y-Axis motor is mounted on a flat plate on the back bottom of the frame. The limit switch is also mounted here.

Y-Axis motor is mounted on a flat plate on the back bottom of the frame. The limit switch is also mounted here.

 

Rail Holder

To the front and back of the lower frame, you attach these small keepers. A rail will be placed in the small hole that is under this keeper.

 

These are the Y-Axis Rails

These two smooth rods are the Y-Axis rails. On each of them you put 2 linear bearings. (Although, this picture shows only 1 on the left rail, that was corrected later).

 

Build Plate Frame

The build plate frame is held onto the Y-axis rails via the linear bearings. Each has 4 screws to anchor the 4 linear bearings to the build plate frame. Roll the plate a few times before tightening the screws. You might also need to adjust the lower screws on the frame to make certain the smooth rails are parallel.

 

The Y-Axis belt holder is attached to the center of the build plate frame with two screws on each plastic spacer part.

View from under the build plate frame. The Y-Axis belt holder is attached to the center of the build plate frame with two screws on each plastic spacer part. Here, you can also see the 4 linear bearings with the rails installed. The longer threaded rods on the outside edges are to hold the frame together and ensure the rails are parallel.

 

Looking under the build bed, attach a piece of drive belt from the motor at the back of the frame, through the roller bearing at the front and screw one loop side of the belt to the build plate frame center with the two mounting parts.

Looking under the build bed, attach a piece of drive belt from the motor at the back of the frame, through the roller bearing at the front and screw one loop side of the belt to the build plate frame center with the two mounting parts.

 

On each front side of the frame, build a small box that will hold the 2 z-axis drive motors.

On each front side of the frame, build a small box that will hold the 2 z-axis drive motors.

 

On both the right and left sides, install the Z-Axis stepper motors under the newly built support boxes. They screw in from the top.

On both the right and left sides, install the Z-Axis stepper motors under the newly built support boxes. They screw in from the top.

 

Assemble the z-axis limit switch with 2 plastic spacers and the switch. This is bolted onto the left frame side. Use the limit switch with the shortest wire.

Assemble the z-axis limit switch with 2 plastic spacers and the switch. This is bolted onto the left frame side. Use the limit switch with the shortest wire.

 

Install the left z-axis rail (smooth rod) and feed this rod through the x-axis motor mount holder - it is a white part that will hold two other x-axis rails and a motor.

Install the left z-axis rail (smooth rod) and feed this rod through the x-axis motor mount holder – it is a white part that will hold two other x-axis rails and a motor.

 

Insert the right z-axis rail (smooth rod) and x-axis mount. This mount will hold the x-axis rails. Hold these in place with same type of plastic keeps as in the y-axis bed rails.

Insert the right z-axis rail (smooth rod) and x-axis mount. This mount will hold the x-axis rails. Hold these in place with same type of plastic keeps as in the y-axis bed rails.

 

Install the left and right z-axis drive screws through the holes at the top of the machine and through the x-axis holders. Then fix them into the z-axis drive motors (located at the bottom).

Install the left and right z-axis drive screws through the holes at the top of the machine and through the x-axis holders. Then fix them into the z-axis drive motors (located at the bottom).

 

Push the two x-axis rails through the white holders (located on the z-axis drive). Make certain they are parallel. Also place 2-linear bearings on the top rail and 1 on the bottom rail.

Push the two x-axis rails through the white holders (located on the z-axis drive). Make certain they are parallel. Also place 2-linear bearings on the top rail and 1 on the bottom rail.

Install the x-axis drive motor on the left z-axis drive assembly (white part).

Install the x-axis drive motor on the left z-axis drive assembly (white part).

 

To the extruder's u-shaped carriage holder install two belt holders. These are double plastic parts with teeth to hold the belt.

To the extruder’s u-shaped carriage holder install two belt holders. These are double plastic parts with teeth to hold the belt.

 

Bolt the extruder u-shaped carriage to the linear bearings on the x-axis rods. Move the assembly a few times to ensure parallel movement before tightening.

Bolt the extruder u-shaped carriage to the linear bearings on the x-axis rods. Move the assembly a few times to ensure parallel movement before tightening.

 

Bolt on the extruder into the carriage holder. There is a single screw on the bottom that holds the extruder in place. Tighten the nut on the feed rod between the lower heater assembly and upper feed motors and gears.

Bolt on the extruder into the carriage holder. There is a single screw on the bottom that holds the extruder in place. Tighten the nut on the feed rod between the lower heater assembly and upper feed motors and gears.

 

Bolt on the cooling fans. One with a heat sink on the left side (to cool the filament) and one on the front to freeze the deposited filament.

Bolt on the cooling fans. One with a heat sink on the left side (to cool the filament) and one on the front to freeze the deposited filament.

 

The heated build bed is made of the black aluminum sheet with tape, 4-srews and the heating board. Tape the contractors on heated board with electrical tape before assembly.

The heated build bed is made of the black aluminum sheet with tape, 4-srews and the heating board. Tape the contractors on heated board with electrical tape before assembly.

 

Install the build bed onto the build bed frame by using the 4 screws. You will later use these screws to level the build platform relative to the extruder nozzle (with 1 mm of spacing).

Install the build bed onto the build bed frame by using the 4 screws. You will later use these screws to level the build platform relative to the extruder nozzle (with 1 mm of spacing).

 

Install the x-axis limit switch by the x-axis drive motor. This is the longest switch wire. Also, feed the x-axis drive belt around the motor and the slip bearing on the right of x-axis holder. Tighten the belt to the belt holder at the back of the extruder carriage.

Install the x-axis limit switch by the x-axis drive motor. This is the longest switch wire. Also, feed the x-axis drive belt around the motor and the slip bearing on the right of x-axis holder. Tighten the belt to the belt holder at the back of the extruder carriage.

 

Install the control board at the top of the frame with 4 screws, 4 plastic spacers and a few leveling nuts. There is also a backing plastic sheet for protection.

Install the control board at the top of the frame with 4 screws, 4 plastic spacers and a few leveling nuts. There is also a backing plastic sheet for protection.

 

Connect wires to power supply and attach to right side of the frame.

Connect wires to power supply and attach to right side of the frame.

 

Install the control board to the left side of the frame. Use the wire wrap to tidy up the wires. Match the connectors and plug in everything.

Install the control board to the left side of the frame. Use the wire wrap to tidy up the wires. Match the connectors and plug in everything.

 

Cura slicer software had a test part. A small toy robot figure. It seemed to work alright.

The included Cura slicer software had a test part. A small toy robot figure. It seemed to work alright. The white air scoop is to direct cooling air at the part to help the plastic freeze.

 

The bed alignment was off, the hot extruder nozzle melted into and burnt the release tape. We also have a plastic leak at the top of the extruder. That will need to be fixed later.

The bed alignment was off, the hot extruder nozzle melted into and burnt the release tape. We also have a plastic leak at the top of the extruder. That will need to be fixed later.