3D Printer Supports, Anyone?

I’ve been having a great time with the 3D printer. It’s a bit tedious to constantly adjust every setting to tweak things into a better print, but it really is a fun hobby! Lately, I’ve been working on the supports. For those who are new (like me) to 3D printing, supports are used to, well, support the 3D object while it is being printed. Below you can see the chess knights that I just printed. The broken pieces in between them are the supports I took off, that were used to hold the snout while it was being printed.

IMG_20190730_162910

Here is a picture with them in place:

IMG_20190730_162743

What can be interesting, is when your supports really are not needed, but get built anyways. Take for example, this king and queen chess set, where originally it wanted to build supports, but I opted not to, and it fared well without them.

IMG_20190730_042032

The slicer program (slic3r) wanted to put supports in between the “arms” of the pieces to hold them up during printing. But it seems to have printed fine without them. Another interesting problem was this spiral pawn chess piece (incomplete). I stopped it while printing because I realized that I couldn’t take the supports out of the spiral.

IMG_20190730_042015

So I’m still tinkering with supports, when to use them, when not to use them, how to use them better, etc. It’s pretty interesting to mull over, and hopefully I can come up with some sort of “truth table” on when and how to use them. The general rule is that a “Y” shape is okay, and a “T” shape is not. This spiral set is more or less “T” shaped, but having the supports inside that are impossible to remove sort of defeats the purpose of the spiral set….. I guess I will have to think on it some more.

Linux – keep it simple.

Advertisements

Colido 3D DIY Slic3r Settings

IMG_20190720_091201

As promissed, I wanted to make a post with my slicer settings that I use for my Colido 3D DIY printer in Slic3r. Why? Because I’m learning that slicer settings matter, big time. If the above picture loaded for you, then you can see that the same 3D model will drastically change when sliced with different slice settings. Warping, crummy prints will plague you if you don’t get this right.

I learned this the hard way, and, after dozens of test prints, I finally found something that prints decent for my modest printer. If any of you happen to have a Colido 3D DIY printer, then maybe this can save you dozens of prints spanning days or weeks of free time. At least, that’s the goal.

Here is my colido3Ddiy.ini file:

# generated by Slic3r 1.2.4 on Wed Jul 17 17:27:12 2019
avoid_crossing_perimeters = 0
bed_shape = 0x0,200×0,200×200,0x200
bed_temperature = 0
bottom_solid_layers = 3
bridge_acceleration = 0
bridge_fan_speed = 100
bridge_flow_ratio = 1
bridge_speed = 60
brim_width = 0
complete_objects = 0
cooling = 1
default_acceleration = 0
disable_fan_first_layers = 1
dont_support_bridges = 1
duplicate_distance = 6
end_gcode = M104 S0 ; turn off temperature\nM140 S0 ; set bed target temp\nG28 X0 ; home X axis\nM84 ; disable motors\nG1 Z169 F200;
external_fill_pattern = rectilinear
external_perimeter_extrusion_width = 0.35
external_perimeter_speed = 70%
external_perimeters_first = 0
extra_perimeters = 1
extruder_clearance_height = 20
extruder_clearance_radius = 20
extruder_offset = 0x0
extrusion_axis = E
extrusion_multiplier = 1
extrusion_width = 0.35
fan_always_on = 0
fan_below_layer_time = 60
filament_diameter = 1.75
fill_angle = 45
fill_density = 30%
fill_pattern = line
first_layer_acceleration = 0
first_layer_bed_temperature = 0
first_layer_extrusion_width = 200%
first_layer_height = 0.32
first_layer_speed = 70%
first_layer_temperature = 195
gap_fill_speed = 20
gcode_arcs = 0
gcode_comments = 0
gcode_flavor = reprap
infill_acceleration = 0
infill_every_layers = 1
infill_extruder = 1
infill_extrusion_width = 0.29
infill_first = 0
infill_only_where_needed = 0
infill_speed = 20
interface_shells = 0
layer_gcode =
layer_height = 0.16
max_fan_speed = 100
min_fan_speed = 35
min_print_speed = 10
min_skirt_length = 0
notes =
nozzle_diameter = 0.4
octoprint_apikey =
octoprint_host =
only_retract_when_crossing_perimeters = 1
ooze_prevention = 0
output_filename_format = [input_filename_base].gcode
overhangs = 1
perimeter_acceleration = 0
perimeter_extruder = 1
perimeter_extrusion_width = 0.21
perimeter_speed = 20
perimeters = 3
post_process =
pressure_advance = 0
raft_layers = 0
resolution = 0
retract_before_travel = 2
retract_layer_change = 1
retract_length = 3
retract_length_toolchange = 10
retract_lift = 0
retract_restart_extra = -0.01
retract_restart_extra_toolchange = 0.5
retract_speed = 40
seam_position = nearest
skirt_distance = 6
skirt_height = 1
skirts = 1
slowdown_below_layer_time = 30
small_perimeter_speed = 30
solid_infill_below_area = 70
solid_infill_every_layers = 100
solid_infill_extruder = 1
solid_infill_extrusion_width = 0.59
solid_infill_speed = 60
spiral_vase = 0
standby_temperature_delta = -5
start_gcode = M104 S195 ; set temperature\nG28 ; home all axes\nG1 Z5 F200 ; lift nozzle\nM109 S195 ; wait for temperature to be reached
support_material = 1
support_material_angle = 0
support_material_enforce_layers = 0
support_material_extruder = 1
support_material_extrusion_width = 0
support_material_interface_extruder = 1
support_material_interface_layers = 3
support_material_interface_spacing = 0
support_material_interface_speed = 100%
support_material_pattern = pillars
support_material_spacing = 2.5
support_material_speed = 60
support_material_threshold = 0
temperature = 195
thin_walls = 1
threads = 2
toolchange_gcode =
top_infill_extrusion_width = 0.2
top_solid_infill_speed = 50
top_solid_layers = 3
travel_speed = 130
use_firmware_retraction = 0
use_relative_e_distances = 0
vibration_limit = 0
wipe = 0
xy_size_compensation = 0
use_volumetric_e = 0
z_offset = 0
before_layer_gcode =

So in these 125 settings are the keys to a successful print on my 3D printer. I’d like to point out just a few things about them though:

  • perimeter_speed = 20 ; Going slow on the perimeters really helped define the shape of my prints. It does make it take much longer, since I’ve slowed down all the speeds, but it does make a huge difference on the quality of the finished product.
  • layer_height = 0.16 ; Having a finer layer height also drastically improved the print quality.
  • infill_speed = 20 ; You could probably make this faster by raising the infill speed, but with my cheap printer, the slower the better. However, most of my prints take hours longer at this speed.
  • perimeters = 3 ; Having thicker walls for the edges of things made my prints significantly stronger without having to up the fill density, which I usually keep at 30-40%.

It’s a bit tedious if you are playing with a new to you printer and don’t know where to start. Having 125 settings to work with really makes it a daunting task, considering the best thing to do is to change one setting at a time. Hopefully these settings will help point someone else in the right direction, or at the very least, help another Colido 3D DIY owner.

Linux – keep it simple.

Slicing the perfect 3D print….

Hopefully all of these higher resolution photos show up well in this post, as I wanted to show you what I’ve been working on. Previously, I talked about the difference between using Slic3r to slice my stl files into gcode, and I was pointing out that with the exact same settings, the slice comes out different between slicing inside the printing program, or if I slice directly in the Slic3r program itself, even though the printing program calls Slic3r to do it’s work.

Overall, it was and still is always better to open up Slic3r and slice the files directly. It does add an extra step, but also adds much better quality to the print.

That said, I’ve been tinkering with making the perfect slice.

If there ever was a tough part to 3D printing, I believe it is slicing your stl into gcode. It has taken me about dozens of slices of adjusting settings one or two at a time to get what I consider the best possible print out of my printer. And by God’s grace, I *think* I’ve finally got it down. But you can check out the pictures and judge for yourself.

For all of these prints, I am using a test print pattern that I found on Thingverse. I wanted to provide a direct link, however, as I write this, Thingverse’s website seems to be down at the moment.

IMG_20190720_091221

Here you can see one of my early prints compared to one of my later prints. Neither of these is the best my printer can do, but it is interesting noting the difference in quality. The upper print was sliced with Cura directly inside the program, with the “fine” settings. It was a complete waste of a print. The lower print was sliced with Slic3r using settings that I thought would work for my printer. It is better, but not much.

You can see that it has a star and a hexagon, and three circles. The pyramid, cup, and dome are all there, but it is not a good print. Between the dome and the three circles on the bottom, there should be “comb” like teeth, but they don’t go all the way through to the table, and between the circles and star are words, that should be clear all the way through to the table, but are not. So more work was needed.

Then, I found a printer settings file for the Colido 3D DIY printer that was for Mac users, and I loaded that into Slic3r. It worked better, but still had issues.

IMG_20190721_102416

This picture is a bit hard to see, but on the bottom, the print was not adhering to the platform, making the base of the print unstable for the prints made on top of it. There also was a bad “shift” through the middle of the print, where every print came out with a few layers shifted over to the left or right, making the prints very poor.

IMG_20190721_170829.jpg

Notice how the “cup” and pyramid in this picture shift slowly to the left, instead of being centered and growing up like they should.

IMG_20190721_170000

Finally, after literally dozens of prints, I was able to make a pretty good one. The one on the platform just finished and is the best one yet. The one next to it was the previous best, for comparison. Notice on the good one that the circles and holes are very clear and distinct. Also notice that for the first time of all the prints, the spire, or skinny tower actually printed.

IMG_20190721_170020

In this close up, you can see that the cup is not shifted over at all, and the words are visible! The clarity of the print is dramatically better as well.

So, how’d I get here? What is the point of this post?

Well, next post I’ll share my configuration file, in case you have a Colido 3D DIY printer, but chances are you don’t. I wanted to put out a few tips for other beginners (like me) who may be ready to throw in the towel on their 3D printer, and hope that it generically helps someone else out.

So, my newbie tips:

  • Make sure your belts and gears and motor mounts are tight. If there is any slop or play in them, your pints will turn out bad.
  • Double check that the bed is level, mine is ever so slightly warped, so I found one corner I don’t use for prints. Instead I move the object to be printed to the other corner, which is flat.
  • If, like me, your printer is not one of the select-able options in the list of printers, be sure to reference your manual for the printer details to put into the slicing program you use. I know this seems too easy, but it will give you a better starting point that adjusting all the settings from the default. The default extruder was 0.35 mm, but mine was actually 0.4 mm. So I had a kind of overlap in my prints, or it would melt another part that was already laid.
  • Choose the filament settings to match your current filament. Again, seems to easy, but I didn’t realize the first few prints were with “2.85mm” instead of the actual “1.75mm” filament that I really had. This made for wide gaps between things because it thought the filament was wider, and would feed less to the extruder.
  • Once every thing is set per your machine and filament, now you need to start adjusting the settings one at a time, performing a print, and then seeing the results. For me, I made a small 10 mm block with an angled cut across the face to print dozens of times and see the differences, before moving on to bigger and finer prints.
  • Don’t be afraid to waste some filament. If you don’t do it now, you will be wasting it later on bad prints.
  • If you change filaments between prints, I found that it actually completely changed to game. Switching between two brands seemed (for me) to change the quality of the print. Stick with one filament brand, to keep things simple. I’m not sure if changing colors within a brand matter, because I changed brand and color all at once, which had a dramatic impact on my print and required more adjustment.
  • For me, slower speeds seems to make a better print. Faster print speeds make sloppy prints, probably due to my low cost, low grade printer. Remember, “fast is slow” because you will waste time reprinting bad prints.
  • You don’t need to make an object fill solid to make an object feel solid. Having 3 top, bottom, and wall layers that are solid will really make a part rigid while keeping the internal fill down.
  • That said, I prefer higher fills than recommended, like 40% rather than 20-30% as recommended.
  • Temperature matters. My filament says 180-210 degrees. The print quality is best for me at 195 degrees. I don’t know if it happens to be in the middle or if the middle temperature is always best, because I don’t have enough to try. But, making it too hot will make it impossible to remove from the platform and can make bridge areas kind of droopy. Having it too cold will make the layers stand out as separate.

Your mileage may vary, but I want to encourage other newbies like me that good prints can be made. If your prints turn out poor, spend a little more time adjusting your slicing software, because it will make a difference.

Linux – keep it simple.

Using my Colido 3D DIY printer with Cura

As you’ve probably seen before, I’ve got a Colido 3D DIY printer that I’ve used for some of my projects. Prior to today, I was using Repitier-Host as the software for handling the printing, and it worked great. The thing is, I’m big into open source, so I wanted to find an OS alternative. I stumbled across Cura, but I couldn’t figure out how to input my own parameters for the printer, until today.

By default, Cura comes with the option to choose between multiple printers, unfortunately, my do it yourself printer wasn’t one of them. Not to worry, though, they created a feature where you can add a new type of printer. My only problem was, I didn’t know enough about 3D printers to fill in all the details.

So, after some tinkering, I found a setup that works great and produces great prints!

colido_set1

As you can see in the pictures, you will set the fields as follows:

Printer:

  • X (width) 200 mm
  • Y (depth) 200 mm
  • X (height) 170 mm
  • Build plate shape rectangular
  • Uncheck Origin at center
  • Uncheck Heated bed
  • G-code flavor Repetier
  • X min 20
  • Y min 10
  • X max 10
  • Y max 10
  • Gantry height 999999999999 mm ( I think you can adjust this better, but for me it works, because it uses this at the end to go to the stop. )
  • Number of extruders 1

Extruder 1:

  • Nozzle size 0.35 mm
  • Compatible material 1.75 mm
  • Nozzle offset x 0 mm
  • Nozzle offset y 0 mm
  • Cooling fan number 0
  • End and start G-Code for the extruder can be left blank.

For the printer Start G-Code, use this:

M104 S195 ; set temperature

G28 ; home all axes

G1 Z5 F200 ; lift nozzle

M109 S195 ; wait for temperature to be reached

G21 ; set units to millimeters

G90 ; use absolute coordinates

M82 ; use absolute distances for extrusion

G92 E0

M106 S155.55

G1 E-3.00000 F2400.00000

G92 E0

And the printer end G-code, use this:

M104 S0 ; turn off temperature

M140 S0 ; set bed target temp

G28 X0 ; home X axis

M84 ; disable motors

G1 Z169 F200;

If you fill in these fields, then hopefully your Colido 3D DIY printer will work great for you too! It’s not the best printer, but for about $100 on Amazon, it’s a great starter kit for understanding and getting started with 3D printing!

Linux – keep it simple.

LTE project fitting, part 1.

As you can see in the pictures, I fitted several of the parts to my LTE project. Add a little hot glue, and viola! You have an LTE project under way! I still have to wire in the buttons, the battery, and the back case needs to get put on, but as of now, it is taking shape!

The button configuration will work something like this:

– 4 left side buttons for choosing which line on the screen.

– 2 right side buttons for special purposes.

Essentially, every screen will have up to 4 lines of text, not counting the status bar. This will allow you to select one of the lines by one of the four buttons on the left. Essentially, it will page through menu options to do what you want to do. Then, on the “unique” screens, the buttons will have functions.

My overall plan is that on the text message view screen, you can scroll through your messages with the last button. On the text message write screen, you can scroll through the letters/numbers/punctuation in an up/down sort of fashion, and then “select” it with the special buttons, but we will see. I might play with it a few different ways to see what works best.

Either way, stay tuned, because it is really coming along!

Linux – keep it simple.

Slic3r and 3D prints for my LTE project….

After printing the low resolution LTE project case, I found that I needed to make a few adjustments. Fortunately, since I had saved all the work, I could just edit the file and print again. This time I tried several “hi-res” prints. If you are working through this project, or want to see the stl files, you can download them from my MediaFire account.

Overall, I think the new version of the print will work well. However, I had several issues with the Slic3r settings that made things interesting. Slic3r is a program that takes your stl file and slices it into layers of G-Code that the 3D printer actually reads to build objects. What I found was rather interesting to me, perhaps you’ll think so as well.

Using Slic3r as a stand alone program with default settings yields different results that using Slic3r through the Repetier-Host program with the same settings.

This may seem odd, but with the same default settings applied to Slic3r, you get entirely different results if you slice it in Repetier than if you run Slic3r stand alone. For convenience, Repetier (the 3D printer controller program) can call Slic3r for you, meaning you just load an stl file, click slice, and it calls Slic3r, gets the g-code, and prints. Or, you can open Slic3r by itself, load the stl file, and slice it there. Doing this both ways with the same default settings will print two very different looking objects.

I found the better option is to open Slic3r directly, slice the stl to g-code, then open it as g-code in Repetier. However, when I do this, I have to offset the Y coordinates to get it centered on the Repetier “plate”. This can be very annoying when your print is the maximum sized object that you can print. But doing it this way produces the best product.

There are dozens of settings that dramatically change what your print will look like.

There are settings for everything in Slic3r. And each setting seems to make an entirely different print when I’m done. A person could spend days fiddling with the settings to try to make perfect prints. I guess I sort of thought that by now the process would be a bit more “plug and play”. Any thing that I’ve downloaded thus far to print, the author must have known all of the good settings, because the objects print perfectly. But my own projects is another story. Lots of time was spent online trying to figure out what settings would work best, and then it still came down to a bit of trial and error.

Side notes about printing.

After having printed this project, I came to a few conclusions:

  1. Print smaller parts if possible. My LTE project top is twice the size of the LTE project bottom, and the bottom is a much better print than the top (smaller size, less warping, less defects).
  2. While I’m glad I bought this cheaper printer, you do get what you pay for. Although I’d still recommend it for beginners.
  3. If the power goes out in the middle of printing, you pretty much wasted 4+ hours and a lot of filament. (Suggestion: UPS battery backup for the computer AND the 3D printer.)
  4. If the print temperature is too hot, you can’t get your model off of the tray.
  5. If the print temperature is too cold, you can’t get your model to stick together.

Just a few random musings on 3D printing. Now on to using the new case for my project!

Linux – keep it simple.

First low resolution sample printed case for my LTE project!

Yesterday I printed up a low resolution (meaning less fill) plastic case for my LTE project. It is really low quality and not very structurally sound. I needed a quick print so that I could look at the design, hold it in my hands, and decide what needed changed.

Overall, I like it.

But, there is room for improvements. The Arduino and LTE shield are in a great spot with easy access to the USB/power plugs, which is great. But, the Nokia screen is larger than the hole I made for it to slip through, so I need to adjust that. Also, my screw holes are twice the size that I thought they would be, so I need to shrink those down. Also, the button holes, for the six functional buttons and one switch are a little too small, making them difficult to use.

lteproject1

I’ve been using FreeCad to build the case, and either my knowledge of 3D modeling is so low, or this program is really tough to use, but this is very difficult. I’ve actually taken more time on building the case (not designing, but actually building) than any other part of the project thus far. If you know of easier to use programs, please let me know in the comments.

The case will be rather large, about 7 x 4 x 1.5 inches. Seems a little overkill, but I need to fit the battery, the Arduino, the LTE shield, the Nokia screen, and the buttons all in there. I went with the raised sides to protect the buttons, so they wouldn’t get slammed or pushed when not in use. We’ll see how well that works.

Linux – keep it simple.

A 3D printer for my Arduino projects!

After receiving a generous gift from another developer with whom I worked on some projects on XDA, I procured a 3D printer! I purchased a Colido 3D do it yourself printer! What a blessing! This thing was really easy to put together, and I’ve really enjoyed playing around with it.

If you look through the pictures, you’ll notice that I took a picture after every step in the instructions.

Assembly was a breeze. There were two parts after assembly, however, that really made it difficult to set up. I suppose difficult may be too big of a word, perhaps time consuming would be a better choice.

The first was doing the alignment. They send a small flat “card” that you need to place in the tray at just the right spots to check alignment. This is all well and good, but after two attempts, it still didn’t work right. I noticed, though, that the card was very flimsy and thin, so it would warp or bend when stood up straight to perform a measurement. I realized that it was the exact same size as my Costco club card, so I used the thicker Costco card instead. Now when I lower the arm onto it, the card didn’t bend, so the measurement was more accurate. It even worked after that third alignment.

The second thing that was a little difficult was getting all the software needed installed. It did say it supported Linux, but it was a bit less intuitive than I thought it could be. Either way, the main issue was that I was installing it on Centos 7, rather than Ubuntu/Debian, so there was a bit less support available for setup. However, with a bit of tinkering, I was able to get it working.

The main app came as an all inclusive appImage. However, all inclusive still needed to fulfill some php dependencies, and the ones the instructions suggested for Linux were not available on my system. Either way, it worked out well in the end. As you can see from the pic, I printed my first object! You can even watch a video of it if you would like! Now I just have to spend  a few hours designing pieces for my new projects!

Linux – keep it simple.