text:
Making a 3D printed surface easily cleanable
I want to FDM 3D-print an object, and be able to effectively clean the surface with standard kitchen cleaning solutions. While the 3D-printed object would not come in direct contact with food, it would come in contact with utensils used with food (e.g. forks, measuring cups, etc.). One of my main concerns is with being able to adequately clean the object when layer lines and general material porosity create areas that dirt/germs may accumulate. I believe my general requirements are:

No high temperatures are anticipated
Common FDM materials (PLA, ABS, PETG)
Coatings or post-processing is fine

How do I make a 3D-printed surface easily cleanable and relatively food-safe?

There is a huge difference between "Certified food -safe" and "is actually perfectly safe for you to use at home" . – Carl Witthoft Sep 18 '18 at 14:54

Regarding certified food safe I point to Ender 3 is capable of food safe printing? - you probably can't get the certification with a 3D printer, but, as Carl said, you might manage a pretty safe at home. So let's assume you go for that.
To make a surface easily cleanable, it is best to make sure that the imperfections of the print are filled up and that there are no undercuts that are not easily cleanable. If you need it smoothed, do it mechanically (e.g. sanding)! Heat or chemicals as a smoothing method are to be avoided, as they can damage the print and accumulate the chemicals used in smoothing in the plastic from where they are released over time.
To make the material both smooth and more safe at the same time, a generous coating with a food-safe lacquer or similar coating would be possible. This also might alleviate the problems with possibly having contaminants in the printing material - we don't know always what is in the printed plastic.

Trish has the right idea. ABS sands more easily than PLA (opinion based on experience) and you can get quite good results with high grit count abrasives. Pro-net up to 3000 grit makes for a very smooth surface and Micromesh (wet sanding only) will create a shiny/glossy surface.

Thanks, I've read those answers and I'm not aiming for "perfect" food safety, like a SS nozzle. Not using vapor smoothing is good feedback as well. I think I'd go nuts trying to sand something with the shapes, contours, and size that I'm thinking of, but then epoxy costs might break the bank as well.

Have you tried spray or dip in polyurethane? It should make a good food-safe coating if it adheres and smooths well. Some claim to be self-leveling which might help with layer smoothing.

Lacquer does fill up grooves to some degree.


text:
Lack of smoothness / homogeneity in several first layers of print
I have a LultzBot TAZ 6 3D printer and the software I use for my prints is "Cura LulzBot Edition - 3.6.3". All of my printing settings/parameters are at their defaults (i.e. no personal customization is employed).
Below, two pictures are included that highlight an issue I have observed in many of my prints; these prints are carried out using the "default settings" provided by Cura for PLA. The two pictures are different orientations of the same printed out object; the volume of interest is outlined in red. Additionally, this volume represents the first several layers that are laid down by the extruder.
I am not familiar enough with 3D printing jargon to know if this has a particular name, but as you can see, there is clearly a lack of homogeneity in the laying down of several consecutive layers. Depending on the object being printed, this is not necessarily an issue. However, some of my objects have features that occur near the first several layers and are therefore affected by this issue.
Additionally, some of the these objects are inserted into other pieces, which are designed to be very tight-fitting. If you look carefully, you will see that this lack of homogeneity in the layer deposition leads to bulging of the PLA, which can increase the thickness of the part by ~0.5 - 1.00 mm for several layers. This increased thickness prevents these insertion pieces from fitting into their appropriate locations.
Any suggestions for fixing this issue? Is it an issue of over-extrusion for the first layer that then propagates for a few additional layers? Remember, all settings are at their software defaults for PLA.

Difficult to see but my best guess is that the first layers curl up hence the next few layers have too less space to deposit the filament and it over-extrudes outside the print part. Maybe you can spare some words on the bed and what you do to adhere the filament to the bed. Note that you also have a ringing problem, your print speed might be too high.

@0scar♦  To provide you with the requested information, it's just a standard heating bed that comes with a Taz6 (@ 60 degrees Celsius) and I use a raft. Also, what is "ringing"?

Try printing without a raft, rafts aren't necessary for PLA. Ringing is the echoing of edges, see the hole and the waves to the right. Usually printing slower and increasing belt tension fixes this.

There are several solution you should check in this order :
1"
The part is printed too close to bed: measure the first layer with a digital caliper to mach your first layer thikness, usualy 0.35 mm like so:

2"
Verify that there is no bevel on the first layer if the part looks like this : U make it look like this  ■ and see if it changes something.

3"
Maybe it is a cooling / temperature problem. the bed should be at max 70 °C for PLA and check the cooling of the noozle.

4"
Check for an over extrusion problem! When you ask for 100 mm of filament, does it push 500 mm through? If so change this soon.

I am looking into "Shell :  Initial layer horizontal expansion" right now to get you a perfect first layer.

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

authors: Роман Панченко

sort: votes


text:
Printer places prints off the bed after change in bed Z-probe area settings
I really don't know what I am doing wrong. Since changing my bed level sensor from left of the extruder to back mount, it doesn't work proper anymore and I have some fundamental thing I don´t understand.
My settings:
#define LEFT_PROBE_BED_POSITION -89
#define RIGHT_PROBE_BED_POSITION 90
#define BACK_PROBE_BED_POSITION 145
#define FRONT_PROBE_BED_POSITION 10

#define X_PROBE_OFFSET_FROM_EXTRUDER 6
#define Y_PROBE_OFFSET_FROM_EXTRUDER 60
#define Z_PROBE_OFFSET_FROM_EXTRUDER -1.4

Now the first thing I don´t get is how especially LEFT_PROBE_BED_POSITION works. Cause when I set it to 11 here (I want it to measure 5 steps from the home) it measures almost in the middle not at the left edge. It seems that I need to subtract from where the printer homes (X99 Y45) which is why I choose X-89 but then it seems that the printer assumes a totally wrong size of the bed and ties to print off the bed...
Here where it measures:
16:02:44.774 : Bed x: -89.00 y: 10.00 z: 1.28
16:02:59.326 : Bed x: 90.00 y: 10.00 z: 1.23
16:03:13.466 : Bed x: 90.00 y: 145.00 z: 1.28
16:03:27.959 : Bed x: -89.00 y: 145.00 z: 1.30

Measures exactly where I want it to but the values make no sense. The first probe is actually about X10 Y10 but the display shows X-95 Y-50 while the above values are from the slicer log. That makes absolutely no sense to me!
I hope anyone can enlighten me.

How to set up the area for the sensor to reach, please read: "How to set Z-probe boundary limits in firmware when using automatic bed leveling?" This explains exactly what you need to do to determine the correct values.

Yes I use that of course but according to this manual my settings would be the following:
#define LEFT_PROBE_BED_POSITION 16
#define RIGHT_PROBE_BED_POSITION 210
#define BACK_PROBE_BED_POSITION 210
#define FRONT_PROBE_BED_POSITION 70
If I would use these settings my extruder would keep crashing into the frame. The manual might be good to explain but for calculation it seems wrong...

Also everything what I set at FRONT_PROBE_BED_POSITION higher that 60 causes the error "The Y axis probing range is not enough to fit all the points defined in AUTO_BED_LEVELING_GRID_POINTS".

If I set FRONT_PROBE_BED_POSITION to zero my printer display shows coordinates x: 24 and y: -60 as if it assumes the sensor be in front... But isn´t that defined by the offset from extruder? Both + values which means the sensor is on the back right.

The manual works perfectly, the calculations are fine, you just need to set the correct endstop to origin offsets. To be able to help you, you need to post the following things in your question, the X and Y offset for the probe and the X and Y offset for the endstop to origin. You should also mention that you are using Marlin 1.1.9, for 2.x it works differently, but it is also described in the answer.

My offsets are in my first post. I think I figured it out also I don´t know how... I was finally able to set FRONT_PROBE_BED_POSITION to something above 60 and that seems to work. That value always produced negative values in my y coordinates which somehow screwed up my print coordinates as well. Since the nozzle is still not at the edge while the display shows x:10 y:0 it is still weird but at least prints are in the middle of the bed again.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Help troubleshooting: wavy/lifting lines
Can someone help me troubleshoot? Seems like it's sticking to the bed, but not well, as lines are somewhat wavy or lifting. Is it related to adhesion? Or maybe I need to clean my extruder?
I think I'm levelling the bed too close to the extruder.  Maybe it's rubbing or the heat from the extruding is warping it.

Your nozzle is probably too close to the bed, use a thicker piece of paper. Please look at this answer, it describes what to do against the waves in the first layer.

Possible duplicate of "What causes ripples on part of first layer?".


text:
Simultaneous heating of extruder and bed at start of print
I notice that if I print from Cura without preheating the printer, it will first raise the bed temperature and then raise the extruder temperature. The G-code it generates is:
M140 S55     ; set bed temperature to 55 C
M105         ; report temperatures
M190 S55     ; wait for bed temperature to reach 55 C
M104 S210    ; set hot end temperature to 210 C
M105         ; report temperatures
M109 S210    ; wait for hot end temperature to reach 210 C

The "Preheat" feature of Cura presumably send the "set temperature" commands without the corresponding "wait" command.
Wouldn't it be more efficient to do something like this:
M104 S210    ; set hot end temperature to 210 C
M140 S55     ; set bed temperature to 55 C
M105         ; report temperatures
M109 S210    ; wait for hot end temperature to reach 210 C
M105         ; report temperatures
M190 S55     ; wait for bed temperature to reach 55 C

Then the bed and extruder heat up simultaneously, and we wait for the higher temperature one first assuming that the other will reach its target temperature in the meanwhile.
If this is sound, is there a way to set this in Cura, or would I need to submit a patch?

No patch needed, just add it into your start G-code, works fine. I've been using it for a while using place holders in Cura. I'll post an answer when I'm behind my desktop computer. Note that Slic3r allows arithmetic on place holders, that is even more powerful. I allow my bed to heat up to 75 % and then start heating the hotend while the bed continues to 100 %; this results in bed and hotend to reach their final temperature at the same time.

The bed is usually much slower, its temperature sensing less accurate and has no adverse effects if it stays at the target temperature for a while, while the hot end warms up quickly and will start leaking plastic as soon as it is warm. Sequencing the warmup phase allows the bed temperature to stabilize, and allows printing to start immediately.

FWIW in my experience (Ender 3 with PLA, TPU, and PETG) both take roughly the same amount of time. With PETG the extreme bed temp can make bed take slightly longer. This might indicate I should tune PID for hotend better, as the last 10 degrees of hotend heating take inordinately long.

I agree with  Simon Richter. The time adds only a few minutes to the total that is usually hours. It prevents the hotend from oozing and also heating up the material for too long, which can start clogging. The bed temperature and enclosure temperature stabilize and also the printer power supply is less stressed.

This works well in my Cura 4.8 but not Creality Slicer 1.2.3. For some reason the Creality Slicer 1.2.3 ignores the M140 and M104 commands completely. I have tried different variations (e.g. "M140 S60" "M140 S{material_bed_temperature}" "M140 S{material_bed_temperature_layer_0}" and none work with Creality Slicer 1.2.3. Does anyone have a similar experience or fix for the M104 and M140 commands in Creality Slicer 1.2.3?

This can be achieved with start G-code adaptations, this requires no software changes. Cura, and most slicers, have the ability to use placeholders (basically variables or maybe better: constants). These placeholders are substituted with the correct value upon slicing.
To sequentially heat the bed and hotend you would need to add the following into your start G-code:

M117 Heating bed 1st...
M190 S{material_bed_temperature_layer_0}
M117 Heating core 2nd...
M109 S{material_print_temperature_layer_0}

For simultaneous heating you need to add:

M140 S{material_bed_temperature_layer_0}     ; set bed temperature to e.g. 55 °C and continue
M104 S{material_print_temperature_layer_0}   ; set hot end temperature to e.g. 210 °C and continue
M190 S{material_bed_temperature_layer_0}     ; wait for bed temperature to reach e.g. 55 °C
M109 S{material_print_temperature_layer_0}   ; wait for hot end temperature to reach e.g. 210 °C

Note that Cura is very limited in using placeholders. E.g. Slic3r allows for arithmetic using the placeholders. The following example shows heating the bed first to the bed first layer temperature minus 10 degrees Celsius; then the hotend starts heating and heatbed starts further heating up to the final temperature. For my machine this results in the bed and hotend being at final temperature at the same time; so no time is wasted and printing can start.

M117 Heating bed...
M190 S{[first_layer_bed_temperature]-10}
M140 S[first_layer_bed_temperature]
M117 Heating core...
M109 S[first_layer_temperature_0]
M190 S[first_layer_bed_temperature]

I have an open bug report/feature request for this. Apparently Cura doesn't do it because some of Ultimaker's printers have underpowered power supplies that will shut off if you try to do both at the same time. I've been carrying a patch (note this is against CuraEngine not the Cura GUI) that fixes this:
diff --git a/src/FffGcodeWriter.cpp b/src/FffGcodeWriter.cpp
index de3c771c..ced22017 100644
--- a/src/FffGcodeWriter.cpp
+++ b/src/FffGcodeWriter.cpp
@@ -500,7 +500,7 @@ void FffGcodeWriter::processInitialLayerTemperature(const SliceDataStorage& stor
                 const Temperature bed_temp = scene.current_mesh_group->settings.get<Temperature>("material_bed_temperature_layer_0");
                 if (bed_temp != 0)
                 {
-                    gcode.writeBedTemperatureCommand(bed_temp, scene.current_mesh_group->settings.get<bool>("material_bed_temp_wait"));
+                    gcode.writeBedTemperatureCommand(bed_temp, false);
                 }
             }
         }
@@ -547,6 +547,18 @@ void FffGcodeWriter::processInitialLayerTemperature(const SliceDataStorage& stor
                 }
             }
         }
+
+        if (scene.current_mesh_group->settings.get<bool>("material_bed_temp_prepend"))
+        {
+            if (scene.current_mesh_group->settings.get<bool>("machine_heated_bed"))
+            {
+                const Temperature bed_temp = scene.current_mesh_group->settings.get<Temperature>("material_bed_temperature_layer_0");
+                if (bed_temp != 0)
+                {
+                    gcode.writeBedTemperatureCommand(bed_temp, scene.current_mesh_group->settings.get<bool>("material_bed_temp_wait"));
+                }
+            }
+        }
     }
 }

    import os

    for filename in os.listdir():
        if filename.endswith(".gcode"):
            with open(filename, "r") as file:
                lines = file.readlines()
            for i in range(len(lines)):
                if "M140 S" in lines[i]:
                    lines[i] = "M140 S50\n"
                elif "M104 S" in lines[i]:
                    lines[i] = "M190 S50\n"
                elif "M190 S" in lines[i]:
                    lines[i] = "M104 S185\n"
                elif "M109 S" in lines[i]:
                    lines[i] = "M109 S185\n"
            lines = [line for line in lines if "M105" not in line] # remove first two M105 lines
            with open(filename, "w") as file:
                file.writelines(lines)

I wrote the above Python script to edit my G-codes in bulk for a plane I'm creating. This makes both extruder and bed heat up at the same time. It changes the places the code comes up in the order that @0scar listed above. And removes the grab temp M105 lines. This makes my prints start at least a few minutes faster which is nice when you have many to do.

Install python3 in Windows or Linux,
Create a file called something.py
Paste the code above and save
Move the script to the same folder of G-code
Open cmd or PowerShell or Linux terminal and type python3 something.py
or python3 ./something.py

It will update all G-codes to heat simultaneously. For modifying yourself edit the temps I have S50 for the bed and S185 for the extruder.

It is a little annoying, what Cura is doing for me is forcing to wait. On start G-code I have:
; Ender 3 Custom Start G-code
G92 E0 ; Reset Extruder
;*** Start Dual Nozzle/Bed Preheating ***
M140 S60 ; start preheating the bed
M104 S200 T0 ; start preheating hotend
G28 ; home
M190 S60 ; heat to Cura Bed setting
M109 S200
;*** End Preheating ***M420 S1; Load Mesh Bed Level

But on the generated G-code I have:
;Generated with Cura_SteamEngine 4.9.0
M140 S60
M105
M190 S60
M104 S200
M105
M109 S200
M82 ;absolute extrusion mode
; Ender 3 Custom Start G-code
G92 E0 ; Reset Extruder
;*** Start Dual Nozzle/Bed Preheating ***
M140 S60 ; start preheating the bed
M104 S200 T0 ; start preheating hotend
G28 ; home
M190 S60 ; heat to Cura Bed setting
M109 S200

In the end I'm changing it directly on G-code what is a pain


text:
Gobs of filament during initial movement of extruder
I have successfully printed a few models on my Maker Select V2 (Wanhao Duplicator i3) including 3D Benchy, but I'm seeing a consistent problem with a model that I've sliced with Cura.
The extruder starts by doing a little filament wipe at the origin, then moves to the center of the build plate where the part should be printed. During this move, it extrudes a big burst of filament (PLA), several centimeters worth, which completely ruins the print.
I debugged the initial G-code that Cura uses, and am able to reproduce the problem with this:
M104 S200 ; heat to 200 C
M109 S200 ; wait to reach temperature

G21 ; metric values
G90 ; absolute positioning
M82 ; set extruder to absolute mode

; move to home
G28 X0 Y0
G28 Z0

G1 Z15.0 F120 ; move up 15 mm
G92 E0 ; zero the extruded length

; problematic!
G1 F200 E6 ; extrude 6 mm of filament

What this is doing is moving to the origin position and pushing some filament through the extruder.

As a note and information, G28 X0 Y0 and G28 Z0 are not completely correct G-code commands, substitute the 2 lines for G28 instead or just use the axis flags solely. The digits after the axis flags are ignored.

The G-code you posted indeed extrudes a blob of filament at the origin (6 mm). During this extrusion pressure is build up in the nozzle/heatbreak, if you command a move after this prime blob, the nozzle will leak filament releasing the leftover back pressure, it is normal to include a retraction before moving to the start of the print, e.g.:
; problematic!
G1 F200 E6 ; extrude 6 mm of filament
G92 E0
G1 F1500 E-1
... ; End of start G-code, move to skirt/brim etc.

An example Cura start G-code could look like:

G21 ;metric values
G90 ;absolute positioning
M82 ;set extruder to absolute mode

G28 ; Auto Home All AXIS

M117 Heating bed 1st...
M190 S{material_bed_temperature_layer_0}
M117 Heating core 1st...
M109 S{material_print_temperature_layer_0}

M117 Priming...
G1 X0 Y0 F2500
G1 Z2
G92 E0
G1 E15 F250
G1 Z4.0 F500
G92 E0
M117 Wiping...
G1 Y5 Z4.0 F500
G1 Y10 Z0.2
G1 Y15 Z0.2 F500
G92 E0
G1 F200
G1 E-3

M117 Printing...

Thanks. The start code does have the G1 F1500 E-1 actually, but it does not put the genie back in the bottle, so to speak. Is there another improvement I could make? For instance, this extrusion happens at Z=15mm, perhaps I could do it closer to the build plate so the blob sticks to the plate first?

@rgov raise to 2 mm, then it should stick. Personally, I also do a wipe afterwards, then you are certain the nozzle is clean.


text:
Heat bed wires get hot (12 V connected to RAMPS 1.4 shield)
I'm using a 200x200 mm PCB Mk2B which connects to the MOSFET of the D8 pin on a RAMPS 1.4 shield. I used 12 V power source for heat bed so I connected positive to pin 1 and negative to both pin 2 & 3 of the bed. Heat bed worked properly. But the wires that connects power source to power supply pin on RAMPS were being heated badly. I think the problem is come from heat bed because when I unplugged heat bed, wires were cool down instantly.
Can someone helps me with this problem. I'm just a newbie in this area.

Its normal for the wires in a 12v system to get hot. What was the bed temp? how long was the print?

The bed temp is 60 degree. The wires were getting hot just after the print begun. But replaced the wire with a thicker ones had solved the problem

What AWG did you use? (NB: it supposed to be printed on the cable)

The PCB heatbed Mk2B has a reported resistance between 1.0-1.2 Ω. The current that is drawn from the power supply equals about 12/(1.0 or 1.2) = 10-12 A. Note that this amount of current requires cables that can carry that load, too thin cables heat up.
Note that you have wired the bed correctly for 12 V (see image below), the wires might have a too-small cross-section, try thicker wires. Personally I use AWG 12-14 silicone wires depending on the bed resistance.

AWG 12-14 size silicone, multiple threads (these are the best for the bed because they are more flexible), should be able to handle the load fine. Note that cables also have resistance; if there are heat spots in the cable or the connection, this indicates that the cable may be broken or the connection has too much resistance.

Yes, the heat spots were indicated in the cable. I will replace its with a thicker ones. Thanks for your help

@DrPortgas, don't use that machine again until you replace that cable.

yes, i had replaced the cable and its works very well. Thank a lot

Check the diameter of the cable. The smaller the diameter the higher the resistance, thus the heat. AWG14 seem a bit small.

Sure, i will check again the diameter of the cable

14 awg should be sufficient. Moving to 12 awg won't really reduce the heat.


text:
What is the distance between two consecutive material jetting holes in a series in a polyjet printer?
In a material jetting 3D printer (polyjet printer) there are multiple holes arranged in series and multiple such serieses are arranged in rows. (See image below).  These holes jet the material onto the build platform.
What I want to know is what is the typical distance between two consecutive holes in a series.

Do you ask abotu a specific printer? This is printer-model specific!

@Trish what would be the typical distance? I mean between what ranges of disatnce are the holes spaced in most models?

It depends on the system setup! In FDM the lowest achievable distance is "1 perimeter", the smallest reliable one "2 perimeters", where the perimeter is related to the nozzle diameter; for SLA/DLP it is "2 pixels", for SLS it's "2 laser diameters". Polyjets again are different in setup. I can't find any numbers for any of these machines...


text:
Photon S DLP first layers adhere but support will not
Recently I changed the FEP bottom of my Anycubic Photon S and I'm having problems with prints now. The bottom layer sticks super well, but none of the supports or the prints do.
I've tried tensioning the vat, releveling, and changed supports of the structure. Nothing works and I don't know how to proceed.
I also tried tightening all of the screws on the build plate, but still errors.
I'm using Anycubic black resin, 8 bottom layers at 90 seconds, 7 second exposure with 2 seconds off.
The image shows a failed print example:

have you tried to a) increase exposure b) lay a print flat against the surface (like a test-u or something) c) releveling the bed after the swap?

@Trish I had tried increasing exposure and releveling. I tried printing flat against the surface and it worked! Does that just mean that I need to add more supports to what I'm printing? My supports already seem pretty dense, so I'd love to know of another way to prevent this from happening

I've also been having bad luck replicating it. When I changed files nothing worked again

I finally reached out to anycubic and their tech support answered and was awesome!
They had me update the firmware, tighten the fep film more ( instead of using the small lever I used the big lever this time), then level the bed again. I printed their test print and it worked!
After that I looked at their parameters and I saw that mine were very different. The main differences was in the lift distance, speed and retract speed. I only had 1 mm lift distance and much slower.
Here are the correct ones in the end

Many thanks for answering your question! Please accept after 48 hours.


text:
Ender 3 home location
I have an Ender 3 and I have a problem with auto home. I use auto home and then level the bed with the wheels beneath the bed. I then start a print and the first layer is well above the bed. Perhaps about a millimeter. If I stop the print at this point and level the bed so that the first layer prints the normal paper width above the bed, everything works fine.
The stops for the 3 axes seem to be in the right places and there is nothing noticeable obstructing them. When I use auto home it does touch the stops at all 3 axes. My belts seem to be tight and there is no movement of the bed if I try to jiggle it with my hand.
Is there a way to adjust the Z axis so that the auto home elevation and the elevation of first layer of the print will be the same?
This is an example of the first lines of G-code:
;FLAVOR:Marlin
;TIME:4724
;Filament used: 1.70716m
;Layer height: 0.16
;MINX:96.551
;MINY:96.545
;MINZ:0.2
;MAXX:138.448
;MAXY:138.455
;MAXZ:100.4
;Generated with Cura_SteamEngine 4.5.0
M140 S50
M105
M190 S50
M104 S200
M105
M109 S200
M82 ;absolute extrusion mode
; Ender 3 Custom Start G-code
G92 E0 ; Reset Extruder
G28 ; Home all axes
G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed
G1 X0.1 Y20 Z0.3 F5000.0 ; Move to start position
G1 X0.1 Y200.0 Z0.3 F1500.0 E15 ; Draw the first line
G1 X0.4 Y200.0 Z0.3 F5000.0 ; Move to side a little

Does this answer your question? Recalibrating Home-position

Welcome to the Stack Exchange. You need to define an offset of the home from the endstops. Here are one two three questions about the same thing!

To me, this sounds more like an incorrect start G-code script. Maybe you can post the G-code? Also, please explain if this is a vanilla firmware, or have you flashed a new firmware version onto the board?

I was having the problem with the original firmware so I flashed a new version (Ender 3 Firmware_1.1.6) and get the same problem.  I don't see any way to attach a file. I doubt that it is an error in the G-code because I've updated Cura and it still does it. I'm using Cure 4.5.0. I've also had this issue with Thingiverse  files

Marlin 1.1.6 is not a new version ;-). The latest is 1.1.9 (of the 1.x branch). You can't attach a file but you can post a link to the file when you upload it to sites as PasteBin. You could also post the first 30 or so lines from a G-code file. We just want to help you out, but without too less information, that is not going to work! Please add links to the Configuration.h and a G-code file of a print that fails (or did you upload a hex file of version 1.1.6)?

I kind of have an idea why it might be: there are variants with a glass bed out there, you might have grabbed one of those!

I'm having the same issue. Please have a look at this answer to Ender 3 Z-limit now unreliable - possible causes and solutions?

It sounds like there’s two things that could be going wrong here:

Your starting G-code has some code in it that’s making it think that you want to treat a few layers up as Z0. If I were you I would minimize the start G-code until you get this sorted out. A quick fix would Be to add the following code to the end of your starting G-code:
G28: Homes all axis
G28 Z0: Homes the Z-axis
G29: Auto-bed-leveling (optional if you’ve already attached a leveling device)
G1 Z3 F5000: Raises the Z position up 3 mm relative to where it was (G1 tells the machine to move, Z3 tells it how much to move and along which axis, F5000 is the speed of movement)
G92 Z0.3: Treats the current position as Z = 0.3 (applying an offset of -0.3 and creating a sort of false home for the Z-axis).

Any commands made after this simple code will assume the print bed is lower than what it actually is (to account for any original gap between the nozzle and the print bed). If you want to have the nozzle raised, you’ll have to insert a negative value after the G92 command.

You have a Z-offset set in your slicer software. This is a super easy fix if you find that you have one set, and it’s usually just because the slicer is using the preset for an Ender 3 with a glass bed. I would try setting it back to 0 if there is one already and try the G-code above.
Even if the starting G-code I provided doesn’t solve your problem you should still find the Z-Offset setting in your slicer software and set it down -0.1 mm at a time until your printer starts printing in the correct Z-Axis position.

Here’s an All3DP article that helped a ton when I first got started: Ender 3 (Pro) Z Offset: How to Adjust It

Your second point is not supported by the G-code presented by the OP, it starts printing at 0.3 mm height, so there is no slicer offset, then the value would have read e.g. 'G1 X0.1 Y20 Z3.3 F5000.0 ; Move to start position ' not Z0.3 (you see no redefinition of the Z height).

The Z stop can be loosened and moved up but it seems weird that it would need to be moved and I don't think that would fix your issue. The Z height should be the same for the auto home and printing. I auto home then disable steppers and slowly move to all 4 corners. I have caught myself resting my arm on the X axis and moving it down. If that happens I manually move the Z until it just barely presses the Z stop in when I hear the button click. I have heard some say that they got a warped bed. I wonder if that's the issue. A glass plate would be a good way to be sure or maybe using a straight edge to check.You could also double check the tightness on the wheels is just right. Tomb of 3D Printed Horrors has a really good setup video called "Creality Ender 3 assembly and pro build tips" that has a few other tips that really helped me get set up well.

I don't think its a warped bed because once I get it going I dont have any issues with the bed. The Z-offset is currently set at +.2. I can't get it to move to negative numbers. Is this normal?

@Daknife What do you mean with a 0.2 mm Z-offset, maybe you should explain this in the question as if you use the endstop for levelling, an offset other than a piece of paper during levelling would not be necessary. It's unimaginable that the Z axis homes lower than the bed requiring you to insert a positive Z-offset.

I guess I used the wrong term. I was refering to the value under Prepare>Move Axis>Move Z

From the added G-code instructions you can see that the printer is instructed to go down to a height of 0.3 mm (G1 X0.1 Y20 Z0.3 F5000.0 ; Move to start position). If the printer nozzle is not at 0.3 mm height, there must be a Z-offset present in the firmware or incorrect placement of the endstop.


text:
How to compile Marlin for Melzi board without bootloader?
I'm trying to enable a lot of features on my custom build of Marlin, and I'm having trouble fitting into a reasonable space limit. I'm compiling through the standard Arduino IDE with Sanguino board set, and I'm barely not fitting -- when I click compile, I get an error informing me my code won't fit.
My understanding is, the IDE is set to assume I'll be uploading through a bootloader, and therefore reserves some space for it. If I'm not planning to use the bootloader, how can I inform the IDE that my program can use more space?

Have you tried compiling with Visual Studio Code and the PlatformIO plugin? I'm wondering if this expresses the same issue?

have you looked into compiling into a .hex file and uploading that? You could conserve some space by removing unneeded features.


text:
Ender 3 Y-Axis Stretched (I don't believe it's layer shifting)
I've got a peculiar issue today, and was looking for some help with it.
Of the six Ender 3s I manage at my college, one of them seems to be stretching the Y axis of all the prints I make with it.
Some points about the issue:

It's variable, but is much more pronounced in larger prints:

A raspberry pi frame-mounted case I printed came out too long along the Y-Axis by over 2 mm.
To troubleshoot, I printed a calibration cube but the Y-axis was only 0.5 mm longer.
It seems to affect only part of some prints; a bit over half of the pi case was stretched, but a section at the top appeared normal (screw holes were perfect circles, but towards the other end they were ellipse-shaped).

I tried tensioning the Y-belt, and while I noticed it was loose before tightening it, this didn't make a noticeable improvement.
It doesn't occur in any of the other five Ender 3s, all of which are equal in modifications.
A re-flash of the Marlin firmware didn't fix the issue. It's a preconfigured Marlin version that I pulled off github based on a recommendation. I flashed this version to try and solve the problem, the previous version was installed by the printers' previous caretaker but the new version didn't help (makes me think we might have both grabbed the same version).
It means that I can no longer print any components that require high tolerances, as they simply won't fit together.

The most recent print was a 40 mm fan shroud for a "hero me" setup (which I'm working on installing on all six printers).

I ran two of them, one on the printer with the issue and one on a perfectly functional printer.
They were run this morning, in identical conditions and started at the same time.
There are no other structural defects aside from the stretching, it simply looks like a normal, print but as if someone used the photoshop transform tool and pulled it.

Here is a side by side of the two finished prints, comparing them along both the X and Y axes. As you can see, the X axis is perfect on the problem print, but the Y is consistently stretched (visible in the shape of the round cone and the screwholes).

This issue has been consistent and I'm honestly stumped, any help is appreciated! If anyone needs me to obtain more documentation or test something, I'll be back in with the printers in the morning (roughly when this post is 10 hours old) and I'm happy to get any documentation needed.

@Finn, check that the set screw on the tooted pulley on the stepper motor hasn't come loose. (I've had that problem on a different machine)

So, what I've now done is extruded two dots, and moved the y axis 70 mm between them (according to Marlin). Using calipers, the actual distance between them is 72.55 mm (pretty out of whack), so I used this formula to find a new steps/mm value for Y: 77.18. I re-ran the test and got a slightly too short distance, so I've re-done it one more time and left another one of the original prints. Problem solved!

You should not change that Y value if it read the same as for the X! You have a hardware issue!

@0scar Changing it down slightly resolved the issue entirely, what other solution would there be?

You probably need to replace the belts and ensure in the future to not over-tighten them.

@0scar Alright, thanks. I'll definitely look into replacement belts in future!

If an axis doesn't print the sizes you command it there are basically 2 options causing this.

The printer is incorrectly configured,
The printer has an hardware issue.

To find out which of the 2 is applicable, you need to look into your setup and into the firmware settings. E.g. from the printers display you can read the amount of steps the stepper needs to make to move the axis 1 mm. Alternatively, send M92 through a terminal and look at the steps per mm. If X and Y are the same, the firmware is correctly configured and you are facing a hardware issue. Note that for the stock Ender 3 the value for X and Y needs to be 80 steps/mm. Do not alter these values!!! These values are based on the mechanical layout and the micro-stepping used by the stepper drivers.
Since you have flashed a stock hex firmware file it is highly improbable that the firmware contains the incorrect steps per mm value for the Y axis (unless you accidentally changed this through the interface/display). This leaves you with a hardware issue. Common reasons that could identify the source of the problem are:

Loose grub screw of the pulley on the stepper,
Missing steps, e.g. due to too much friction (if dimensions are smaller, in your case this is not the problem, it is added for completeness),
Loose, under tensioned belts,
Stretched belts as a result of over tensioning the belts.

Considering the stretched Y dimensions, the most logical explanation would be that your belts are stretched, you cannot fix this by changing the steps/mm value, it requires mechanical attention; i.e. replacing for new belts.

It is likely you have PU belt and it is likely it stretched in some area. I had all my PU belts finally stretched with big tension and high speed printing.
Now I am using reinforced rubber belts.


text:
Is 3D printing useful for making everyday objects or is it more for special hobbies?
Have people been using 3D printing to genuinely create a number of needed objects in their homes, and if so, what? Or is 3D printing better for special niche interests like art projects, home engineering projects, etc?

Can you add some explanation of why you want to know this?   As it stands it's not much different from askiing whether people buy a hammer to put together home projects (bird feeder) or to repair their barn.

3d printing is currently being used to help fight covid-19.

Hello! Have you read the [help]? I think this question needs more clarity, and is a bit broad at the moment.

Have people been using 3D printing to genuinely create a number of needed objects in their homes, and if so, what?

Yes, but in a very limited sense. If there is widespread demand for an item, then it will always be available from stores. This is basics economics: if there is enough demand for something, somebody will step in and provide the supply. The store-bought alternative will almost always be of better quality and relatively cheap.
3D printing can be useful to create a niche part that is needed but not readily available, such as replacement parts for appliances long out of production. This unfortunately takes a lot of time since you need to make a 3D model of the part yourself, which also requires considerable skill.
Some examples of items that I made for my home:

Custom brackets to hang blinds when the store-provided ones did not fit my window.
A special mounting bracket to more easily hang a ceiling light panel.
Replacement wheel for a vacuum cleaner.
Cover plate for a deprecated telecom socket.
Fix for a broken clothes drying rack.

3D printing can also be used to create "trinkets" such as custom vases or similar objects.
I would say 3D printing is a bit like woodworking as a hobby: it is a skill that can be used to make genuinely useful items, but going to IKEA is a perfectly viable alternative.

Or is 3D printing better for special niche interests like art projects, home engineering projects, etc?

It is ideal for this. I do not know of anybody who has a 3D printer specifically for home use. However, there are many hobbyists that use 3D printing for another primary purpose that occasionally find their 3D printers useful around the house.

3D printing is a tool. A really versatile one. I have myself used it in various applications:
Spare parts.
I have broken a couple of appliances in the past and then made spare parts with my printers, skipping on delivery and full replacements. The hanger in the wardrobe got a replacement disk, the vacuum with the broken hinge got the break briged and a couple of other items have gotten simple but effective custom spare parts.
Education
Be it taking the Colosseum into the class or a miniature of a Roman Castra, a Danish longhouse, it is different to have a picture of something or allowing to turn the item around and look at different angles.
And there are ways to teach physics or geography with it too! For example, a simple sextant can be printed and then used to determine the longitude of your school, or you print the fixings of a Blackburn Pendulum or a harmonograph and ask your students what influences the patterns of the complex shapes that appear.
In languages, the use larger (~30 mm) dice with the forms (for example in Latin: ego, tu, is/ea/id, nos, vos, ei/eae/ea) or tenses generates questions for the students in training and self-study.
And then there is the use to make custom boxes to transport all the learning aids.
Cosplay & LARP
I have printed decoration and art pieces for Cosplayers and LARPers that would take a lot of handiwork to make otherwise. Be it helmets, masks or shoulder armor, 3D printing allows manufacturing complex items for such.
Engineering & Tools
I have not used it myself a lot, but on the 2016 SMM, I had talked with a fluid dynamics laboratory that used (miniature) FDM prints of static propellers to test an evaluate designs in water basins.
Similarily, on the 2018 didacta, I had seen projects by several universities to combine engineering with education and getting basic training in engineering into schools as extracurricular activities.
There are numerous tools for spacing and such that you can easily make or adjust to your needs. A friend of mine works in wood professionally, and they printed themselves drill-jigs for parts they repeatedly use.
Art & Decoration
Here 3D printing can shine, and I have made pure decorative objects too.

Both.
3D printing is especially useful for creating replacement parts for things for which it would otherwise be difficult, expensive, or impossible to obtain a conventionally manufactured one. You may have seen in the news recently the story about 3D printing being used to replace hospital ventilator valves that were not available in time to save patients who needed them, and that normally cost \$11000 from the manufacturer. But the same kind of thing applies to regular household items too. For example, I've replaced broken wheels on my child's toy cars, a broken windshield washer fluid coupling in my car, and various similar things. I'm also planning to replace broken plastic wheel bearings in my vacuum cleaner (the manufacturer's design was atrociously bad and I'll probably adapt it to use real bearings with a 3D printed adapter), a window switch in my car, and lots of other things I can't remember at the moment.
Of course you can do craft and hobby things too. I don't think this really calls for examples/evidence.


text:
Ender 3 build surface is sticking up in the middle
I have had my Ender 3 for a few months now and have loved it! I recently noticed that the build plate, the black removable part of the print bed, is sticking up in the middle. If I poke it, it goes back into place, but will not stay there. It shows especially when I print my leveling squares and find the the corners are near-perfect, but the center is crazy thin.
I am using a stock Ender 3 with Cura 4.5.0.
For those who may find this to be helpful, I am looking to find a good replacement build plate. In the meantime, I managed to get mine (without the sticky back) to lay flat by increasing the temperature of the bed from 50 Celsius to 60.

So your (clone) BuildTak bed surface is not sticking to the bed anymore, time to remove the surface and clean the heatbed and apply a new one. These build surfaces (usually) have a sticky 3M sticker to stick it to the bed (or the surface bottom is covered with a sticky surface). When this sticking layer fails of subsequent heating cycles you need to replace the build surface. The higher the temperature the more the build surface expands the higher the surface gets when it doesn't stick in certain places.
Note that the build surface is a consumable, it needs to be replaced once in a while.


text:
Bad print quality on Creality Ender 3
About 1.5 months ago I changed the springs of my printing bed and since then I have had the same problem again and again. Strangely enough, it only happens sometimes.
I have already realigned the printing bed several times, cleaned it etc. Maybe one of you can tell me what my problem is based on these pictures.
I have also already tried out various underlays.

I print with an Ender 3 , PLA, quality: 0.2 mm, speed: 25 mm/s, initial fan speed: 0 %.
I'm not sure if it helps but on the pictures I tried to print: https://www.thingiverse.com/thing:3495390.

Your printer nozzle is too far from the bed, it need to be closer. The skirt isn't squished to the plate.

Thanks for your reply.
To level my printer I use a pice of paper and move it between the nozzle and the bed while I move the bed using one of the 4 screws. I stop doing this when I feel the nozzle scratching the paper. Is this the right method to level the bed?

That is the correct way, but clearly the nozzle it too far away if you look at your printed results.

Okay I will try readjusting the distance between nozzle and bed. Thanks for you help. Have a nice day.

No problem, I'll compose an answer!

This is why I recommend a feller gauge not paper. The nozzle head should be the same distance from the bed as the layer height. This is impossible to achieve with paper. https://www.amazon.com/Hotop-Blades-Feeler-Imperial-Measuring/dp/B06XHXJG31/

The nozzle should not be a layer away from the bed, paper is more than enough.

From the images you can see that the filament is not squished to the bed, e.g. the extruded skirt looks as if a round rod lies on the bed. The bottom picture shows that the skirt is even dragged (top left); this indicates that the initial bed to nozzle distance is too large. Please decrease the distance or look into your slicer if there is a height offset active.

I dont found something like height offset in cura. Right now my printer is printing the model sliced with the slicer software made by my printers
manufacturer. This seems to work.


text:
Equally spaced surface flaws
I'm having an odd effect in my prints. There is some sort of surface problem that seems to be evenly spaced in z. I tried to tighten my belts, the print speed is 75 mm/s using a 32 bit board, on an Ender 3 Pro.
Any recommendations?

The surface defects you describe is caused by Z-wobble. Basically this leads back in a defect in the Z axis gantry where X and/or Y movements are transferred into the print head. This can be cause by:

a damaged nut,
lead screw not straight,
stick-slip,
binding,
lead screw out of alignment with the coupler,
lead screw touching the stepper shaft in the coupler,
the Z guide (at the other side of the X-axis arm; the one without the extruder mounted on it) has too much friction of the wheels on the profile,
play on the carriage,
lead screw should be the same distance from the extrusion profile from top to bottom,
etc.

...and possibly a cummulative rounding error

@Trish Didn't you write a previous answer on that? Please add an answer or link to it.

It was discussed in https://3dprinting.stackexchange.com/questions/10986/how-to-calculate-the-proper-layer-height-multiples


text:
3D Printer only printing half of an object
My 3D printer is only printing half of the object I want to print. I have a WANHAO i3 Mini and i use Cura, I've added some images below that shows the problem:

I entered this values as Settings:

Final Object:

Just a note, does the Duplicator mini use 2.85 mm filament? It says so in your settings. On topic: this is a peculiar issue, never seen this before in years of printing, I have no clue. If you load the G-code file back in Cura or an online G-code visualization tool, how does the virtual print look?

I'm guessing it involves an STL file with half the triangles reversed, probably because someone designed half of the object then mirrored everyting as STL (including the triangle orientations) to make the other half. The solution is going to be either going back to create a proper/valid STL file or using one of the many mesh fixer utilities available.

please preview the movement paths. I agree with R.. that there might be an isssue with the STL


text:
Prints coming out very stringy

So these past few days I have been 3D printing again with my Ender 3 with PETG and 0.4 mm nozzle and while I have been using the same setting as usual I am seeing an unusual amount of stringing between the prints. Does anyone know why? If you're wondering regarding the settings here they are, I'm using Cura for slicing, see options:

PETG is just more stringy! Two things that pop out immediately; First: your perimeters are not bonding together, this may be caused by the under-extrusion you have set (90 % flow), you should always print with 100 % flow, also the temperature might be a bit low for PETG, I've printed kilometers of 2.85 mm PETG at 240-245 °C, but 1.75 mm may be printed at a lower temperature (heats up faster). Second, you have a lot of left over filament that collects at the printed outside perimeters, this may be caused by too much left over pressure.

I don't quite understand this point "Second, you have a lot of left over filament that collects at the printed outside perimeters, this may be caused by too much left over pressure", but for the temperature I already did try to print at 240-245 and it gets even worse, and for flow I tried at 100% and the stringing is reduced but it just ended up as blobs on the outside perimeters of the print.

The travel speed of 160 mm/s is a big red flag. PETG is not tolerant of a hot nozzle moving over it at high speeds, especially unretracted (combing). The nozzle will drag material in a stuttering pattern, every so often, marring the surface and pulling what it dug up into strings.
Lower the travel speed to the same as the print speed, and then experiment with whether you can increase it without problems. I would not try going over 80 mm/s and probably not even over 60.
For what it's worth, this sounds like softened/molten PETG is a non-newtonian fluid, where at low stress (slow moving nozzle pushing/pulling) it deforms gracefully, but at high stress (fast moving nozzle) it strongly resists deformation and has a discontinuous breaking point. A quick Googling turned up this article, Thermal, Rheological and Mechanical Properties of PETG/rPETG Blends, which might explain what's happening.

Petg it stringy material, all I can do is keep it dry to prevent blob. but I live in hot country with high moisture so I decide to keep filament in heat dryer box while print. It help a lot.


text:
Can model used for 3D printing be later used for mold mass production?
I am working on a project that requires an enclosure that I am thinking to prototype using a 3D printer (which is pretty easy and overall awesome).
My question is simply whether this same model can be used later on for mass production (i.e. mold injection)? What adjustment (if any) need to be done to model between prototype and mass.prod. stages? What areas in design to look out for that can make model viable for 3D printing non-viable for mass production?

What kind of 3D printing process are you thinking and which material (plastic or metal)?

@0scar I guess PLA for material,  and just common 3d printers like prusa i3 or similar.

Plastic injection molding, where hot plastic is injected into a mold under high pressure and typically from various places, will not have the internal layers & fill that 3D printing can have.  So components will likely be heavier and balanced differently.  I've not done any prints that were 100% fill (mostly because they take longer).  If you are printing a part to make a mold from to use with other materials, like plaster or something, I guess that would not be so inportant.

@CrossRoads I’m doing a prototype, but I am hoping that source step file can then be reused for mold injection without much changes (ideally none). The amount of possible changes is what this question is about not about making a mold itself where it would (hopefully) be done by a manufacturer.

You'd have to check with the manufacturer then to see if they can import whatever design files your creation software (such as Fusion360) can export.

I respectfully disagree with the hard no answer.  There are many casting methods, some of which are not compatible with 3D printed parts and at least one that definitely is.  See investment casting, aka lost wax casting.  (Ref 1)  Also search YouTube for "investment casting using 3D printing".  Formlabs, the company that makes the Form 2 and Form 3 3D printers, sells a 3d printable resin specifically for investment casting. (Ref 2).
There is a whole world of casting, so I will describe, as an example, a very simple process that will make a replica of your 3D printed part.  I will briefly address the steps necessary for making multiple copies at the end of my answer.  First you need to add a cylindrical extension to the shape that will create a sprue.  See the two models shown in the image below.  Next make a foil cup a little larger than your 3D printed part and place your part in the cup, suspended by the sprue.  Pour liquid plaster of Paris (POP) into the cup, covering the 3D printed part, with just the top of the sprue sticking out.  Once the POP has hardened, you can remove the 3D printed part by dissolving it in an organic solvent (acetone for acrylic) or by heating the part to several hundred degrees C so it will burn out (convert to gasses).  You will now have a block of POP with a void shaped like your 3D printed part plus a cylindrical hole to the outside that acts as a sprue.  Once you have heated the POP to drive out any remaining water, you're ready to cast.  Fill the void (via the sprue hole) with, for example, copper powder and heat it to well above its melting point.  Once everything has cooled, lightly tap the POP with a small hammer or equivalent, to remove it, leaving your final part plus the sprue.   You can remove any remaining POP with some warm baking soda and patience.  The final step is to cut or saw off the sprue shape.
Please understand that the process described above is just to give you a basic idea of the process.  There are many alternate or additional steps that may produce a better final product.  Also, the process described should work of the rook model shown on the left of the image below, but not the model on the right, which has a small hole through the middle.  There are ways to solve that issue, but as I said before, there is a whole world of this stuff.
Casting is a way to create parts out of materials that you otherwise could not 3D print directly (on a home budget).  For mass production, you would need to start with an inverse of the final shape.  For example, a cylindrical slug with a rook-shaped void.  Then you would use the investment casting process to create a mold out of a rigid material that you could use to, for example, create rubber copies of the original part that could, in turn, be used as the "wax" for copies in the final material.
I urge you to experiment, maybe following one of the tutorials on YouTube.  Good luck.

Ref 1 - Investment Casting
https://en.wikipedia.org/wiki/Investment_casting
Ref 2 - FormLabs 3D printable casting resin
https://support.formlabs.com/s/article/Using-Castable-Resin?language=en_US

Which part of my question did you disagree with? Also I don’t see how this answers my question. I asked about specific of CAD design. Not about manufacturing process.

@Alexey Kamenskiy, I was not disagreeing with you, but with the "hard No" answer.  That answer seemed to imply that there is no way to use 3D printing for casting. I didn't expect my answer to be placed above the previous answer, so understand the confusion.  I've edited the beginning of my answer to clarify that.

I think that should’ve been a comment on that answer instead of new answer. Because this answer is implied to be to my question which it doesn’t answer.

It has been done. Spartan Games did print parts of their masters, then modeled on that, then took that master and made a latex mold from that, casting the result in resin.

That's a hard No.
Models used in industrial injection molding are very specific to the process sometimes even the machine. When they build those molds they have to include constructs like spurs and runners; things to get the molten plastic to where it needs to go. Further the wall thickness of an injection molded part can only be so thick, because the plastic will contract when cooled, which will distort the final part if it is too thick.

That’s a hard no even with adjustments?

I don't see how the second paragraph establishes the "hard no" claim. Rather it seems to suggest there are a number of constraints you could follow that would make it transformable to an injection mold with minimal changes.

@R..GitHubSTOPHELPINGICE, the changes are not minimal; that's why the hard no.

If the initial design follows certain constraints about compatibility with injection molding, then it seems the changes needed should be minimal and mostly mechanical.

@R..GitHubSTOPHELPINGICE, The OP said that they are thinking about making a 3d printable model for the enclosure. When you design for manufacturing you start with the manufacturing process in mind. If your thinking starts as "this is for 3d printing", then that model can be simply used to create an injection mold later on. That answer is no; not without major modification that will amount to a complete redesign.


text:
How do the Mechanical Properties of 3D Printed Metal Parts Compare to Parts Made by Investment Casting?
I have read quite a few articles discussing various issues with 3D printed metal parts, a few are listed below. (Ref 1 thru 4)  However, I was not able to find any sources of information quantitatively comparing 3D printed metal parts to similar parts created by investment casting.  I'm interested in any quantitative comparison to metal parts made by powder bed fusion, direct energy deposition, or binder jet printing.  I'm specifically interested in strength, stiffness, and porosity for 3D printing versus casting.
Ref 1 -
https://www.llnl.gov/news/llnl-finds-reason-behind-defects-3d-printing
Ref 2 -
https://amfg.ai/2018/05/01/5-problems-faced-when-3d-printing-metals-and-how-to-fix-them/
Ref 3 -
https://all3dp.com/4/researchers-detect-defects-metal-3d-printed-parts-using-neural-networks/
Ref 4 - https://insights.globalspec.com/article/7458/how-strong-are-3d-printed-metal-parts-metallurgical-integrity-in-metal-additive-manufacturing


text:
How do I access Configuration.h?
I am very new to 3D printing and I am trying to adjust my firmware. I use the Arduino IDE 1.8.12.
I downloaded the firmware from GitHub that suits my printer, but every time that I try to open the marlin.ino file within, it opens in the Arduino with only the blue "marlin" tab. It doesn't load the other tabs such as Configuration.h and Configuration_adv.h.
I have watched a few YouTube videos, and in all of them, these tabs seem to open automatically.
Thank you very much for any help, I've been struggling to figure this out.

Did you download Marlin 2.0.x and opened it an older Arduino IDE? Older versions of Arduino IDE do not work with directory structure layout of Marlin 2.0.x.

Thanks for the reply, I have arduino 1.8.12 and Im trying to open Marlin 2.0.x

You can also use VSCode and PlatformIO plug-in

Does this help to answer your question? Updating Marlin Firmware - Step by Step Guide

Can you copy the files to a "real" PC and open the  .h files in a text editor?

authors: عبد القادر العيد


text:
Nozzle cleaning tool broken inside nozzle
Recently I opened up my printer (PowerSpec Duplicator i3 Mini V2)to clean the nozzle (it comes with the little tool to get tiny bits of filament out of the nozzle). Well, I was using that and when I pulled it out I discovered the tool broke inside the nozzle. Filament is still coming out but obviously not properly. Can someone please help me fix this?

Welcome to 3dPrinting.SE!

please share a photo of th enozzle so we can tell you waht design of replacement nozzle you need.

Time for a new nozzle.

Your best fix is to get a replacement nozzle. Nozzles are relatively cheap. Having and replacing them on a regular basis is a good thing. Replacement can help you maintain proper printing. You can probably get the cleaning tool out of the old nozzle, but most likely you'll damage it further, making it nearly useless.


text:
Is 12V and 15A enough to make work a Ramps 1.6 Plus and two stepper motors?
I want to make an order with this configuration

Arduino MEGA 2650 R3
Ramps 1.6 Plus
2 TMC2130
2 Stepper motors 17hs3401
1 Fan

But I am not sure what voltage and current would be enough to make it work. The Ramps 1.6+ board has an input of 12V as you can see in the picture, but I have read that other people had to increase the voltage with a DC-DC converter.

So, would be 12V and 15A enough to make work that configuration?

Are you going to be powering a heated bed from the same PSU too? And perhaps a heated nozzle?

@AndrewMorton Thanks for your insterest. Actually, I am not going to mount a 3D printer. I am going to use those printer parts for another purpose. I will connect just the few components I have listed in my question

15A of 12V is 300W... that's a LOT of power.

The easiest way to know how powerful the PSU should be is to download from https://github.com/rcarlyle/StepperSim the Excel workbook which simulates the power absorbed by the stepper motor. Input the motor specifications, check in the graph the max speed at which you plan to run it, check the absorbed power, add 20% for the various losses. Once you know the absorbed power, you can multiply by the number of stepper motors and obtain the current required, add 20% not to stress the PSU too much.
In you case, this is the result

Your motor will never absorb more than 7 W, 14 W for the two motors, around 20 W considering losses in the motors and overcapacity of the PSU. This means that around 2 A PSU will be perfect for your setup.

Previous answer, which may not be completely correct but still provides a useful background knowledge:
The TMC drivers limit the current to the value you set, which is most of the time lower than the datasheet. In no case you will need more than 1.3 A * sqrt(2) * 2 motors = 3.6 A. In fact, you won't need this much either.
When there is no field in a coil, the driver applies full voltage, but the current is low (initially zero) so you don't hit the 1.3 A per coil.
The current increases (the higher the maximum voltage available to the driver, the faster it increases) and the driver (probably) keeps the full voltage until the preset current is reached. Just a moment before that, the current is almost there, but you still have full voltage from the power supply. This is the theoretical worst case, but it applies only for a very short amount of time.
As soon as the current reaches the preset, the driver "cuts the voltage" to keep  2.4 ohm * 1.3 A = 3.2 V (because V = R * I). This means that the power supply sees 3.2 A/12 V*1.3 A = 0.35 A.
When running, the motors almost never start from zero to max current: both coils are powered and when one increases, the other one decreases.
In fact, the microstepping makes the steppers act more or less like AC motors with two phases. This means that overall the current is the max current per phase multipled by sqrt(2). Also, when using microstepping one phase (coil) is not completely shut off, but two of them work at the same time (with different current levels). This means that in total one compensates the other, and the power supply only provides, more or less, 0.35 * 1.4 = 0.5 A per stepper. You have two, so it's 1 A total, therefore 2 A PSU considering the inefficiencies.
A very easy and complete explanation is provided here:

By controlling the duty cycle of the chopper, an average voltage and
  an average current equal to the nominal motor voltage and current are
  created.
...
As the current increases, a voltage develops across the
  sensing resistor, which is fed back to the comparator. At the
  predetermined level, defined by the voltage at the reference input,
  the comparator resets the flipflop, which turns off the output
  transistor. The current decreases until the clock oscillator triggers
  the flip-flops, which turns on the output transistor again, and the
  cycle is repeated

So you never have coming out of the PSU more than the preset current.

Supply current is not the same as the motor current in a copper drive. It is the motor current multiplied by the dutycycle, at
  standstill typically Isupply = IM · ( VM ⁄ Vsupply )
...
Depending on
  how the H-bridge is switched during the turn-off period, the current
  will either recirculate through one transistor and one diode (path 2),
  giving the slow current decay, or recirculate back through the power
  supply (path 3). The advantage of feeding the power back to the
  power supply is the fast current decay and the ability to quickly
  reduce to a lower current level.

You do not need anywhere near 6 A. The stepper motors do not draw their rated current from the supply because they operate at a (much) lower voltage than 12 V. From the phase resistance being 2.4 Ohms and the phase current being 1.2 A, you can deduce that the rated voltage is 1.85 V. So the steppers only draw around 560 mA from the power supply (2 steppers x 1.3 A x 1.85 V x sqrt(2) / 12 V). A 2 A supply would easily suffice.

@TomvanderZanden, that information is entirely incorrect. (your answer actually crawled my blood). The phase resistance will result in around 5 amps if operated at 12 volts.     V= IR

@TomvanderZanden that's true in static conditions. But when the winding current is changing, the driver will provide much higher voltage, in fact the full voltage, to speed up the rate of change of the current in the coils. That's why 24V supply provides higher rpm.

@FarO, not exactly. The reason why 24V supply provides a higher RPM is because it resists the effects of the Back Electromotive Force.

@user77232 It is incorrect to use V=IR and assume that the current will be 12V / 2.4 Ohms = 5A. The stepper motor does not only have resistance, it also has inductance. The inductance, combined with the chopping action of the stepper driver, limits the current.

@FarO Of course the stepper sometimes sees a higher voltage applied across the coil, but that doesn't change the calculation. The 1.85 V figure is an average. Moreover, the energy put into the coil when increasing the current is recovered when decreasing the current. In theory the increase of current in one coil balances out with the decrease in the other, so no additional current is drawn from the power supply. Of course there are inefficiencies, losses and mechanical work (hence why I recommended a 2A supply) but the static current draw is a good approximation of the actual current draw.

@TomvanderZanden I think you calculated wrong the 1.85 V: since V = RI it should be 2.4*1.3=3.12 V, not 1.85V. Also, I tried to rewrite the answer, please check it in case I still have errors in it.

@TomvanderZanden, Pulse Width Modulation does not actually limit the current; it switches the current on and off rapidly. If we were to put a current probe in the circuit and measure it on an oscilloscope, you would see a square-ish wave peaking at around 5A. Some stepper motors can sense that and will say "Nope, over current detected". (e.g. the L6470). Also, that 1.85V figure on the data sheet matters to persons who are using current mode stepper drivers; which use a low voltage continuous current (no PWM) to drive the motor.

maybe these two links can help clarifying everything: https://electronics.stackexchange.com/questions/306712/stepper-motor-waveforms and especially the answer https://electronics.stackexchange.com/questions/248381/calculation-of-supply-current-in-stepping-motor-driven-using-chopping-driver where someone measured the current of the supply and found that it is as mentioned by Tom. The coils' inductance in series with their own resistance form a low-pass filter, therefore the current will NOT peak at 5 A for short periods of time. The coils will see an high voltage applied but not a high current.

@user77232 see the graph in figure 2 https://www.njr.com/semicon/PDF/application_notes/Drive_circuit_basics_APP_E.pdf it clearly states that the rate of change depends on the applied voltage, but the current in the coils (= provided by the PSU) increases smoothly

@FaO, are we confusing current mode stepper drivers with voltage mode ones?

The driver has a potentiometer to change the voltage. Range of Vref values: default: 1V (±0.2); MAX: 2.4V; MIN: 0V;. As you are saying the voltage should be 3.2 V to make the motor work well. What would happen if I set the value in 2.4V then?

I assume that if I don't exceed the current value that the driver can bear it does not matter right? The voltage just affects the time that the motor takes in order to get the maximum speed. Am I right?

Well, I have written another question with some more doubts if you want to take a look. Thanks !

@TomvanderZanden what about this answer? https://electronics.stackexchange.com/questions/221764/using-a-dc-dc-boost-converter-to-run-a-stepper-motror-through-a-chopper-drive

Yes, A power supply that can deliver 12 volts and up to 15 Amps will work. Since that board says 12 V, that means it is designed to work at 12V. The components on the board might not survive 24V. The TMC stepper motor drivers specified can tolerate a max of 2.5 amps. That current draw is dependent on the per phase winding impedance of the motors that are used. @2.4 ohms phase resistance, that 12 volts could generate a max of 5 amps (more than the Trinamic can tolerate). Therefore, if you configure the stepper drivers to operate at more than 50% power, they will overheat and shutdown.

Are you saying that I cannot use the TMC2130 with the stepper motor in my question because it will overheat?

@ChesuCR, I am saying that if when you are making your configurations in Marlin you set the power level for the TCM2130 to more than 50% then it will overheat. However, it may only do so when running at low speed. I doubt it will over heat if running at a high speed.

Thank you. Anyway, I still have some doubts. I have written another question


text:
Will the TMC2130 V3.0 stepper driver work with the Ramps 1.6 Plus board?
I want to buy the board Ramps 1.6 Plus. The description in the link says that is compatible with the driver TMC2130, but I found that there are two versions soldered in SPI mode.

BIGTREETECH TMC2130 V3.0. Where the diagnosis pins are soldered as well
TMC2130 V?. In this other product those pins are not soldered and I believe it will fit in the board

As you can see in the image other boards like the SKR 1.3 have some socket to plug in the diagnosis pins. But I don't see something similar in the Ramps 1.6, which has male pins instead.

Should I remove those pins in order to plug the driver? Or is there a better way to proceed?
I don't really know what the diagnosis pins do, are they really necessary? Should I buy the second option without those pins soldered to avoid problems?

Well I found that I can use a DuPont cable to connect the diag1 pin to the right endstop

There is also a beta functionality in the Marlin firmware I haven't tried: Just uncommenting SPI_ENDSTOPS definition
    * SPI_ENDSTOPS  *** Beta feature! *** TMC2130 Only ***
    * Poll the driver through SPI to determine load when homing.
    * Removes the need for a wire from DIAG1 to an endstop pin.
    *
    * IMPROVE_HOMING_RELIABILITY tunes acceleration and jerk when
    * homing and adds a guard period for endstop triggering.
*/
#define SENSORLESS_HOMING // StallGuard capable drivers only

#if EITHER(SENSORLESS_HOMING, SENSORLESS_PROBING)
    // TMC2209: 0...255. TMC2130: -64...63
    #define X_STALL_SENSITIVITY  8
    #define X2_STALL_SENSITIVITY X_STALL_SENSITIVITY
    #define Y_STALL_SENSITIVITY  8
    //#define Z_STALL_SENSITIVITY  8
    //#define SPI_ENDSTOPS              // TMC2130 only
    //#define IMPROVE_HOMING_RELIABILITY
#endif


text:
How to fix a Duet3D board on an Ender 3 frame pausing mid-print
I have just installed a Duet3D Wifi 2 on an Ender 3 Pro. I sliced my first print using Cura and uploaded it via the web interface. It prints fine, except that it pauses for 10 seconds several times per layer. This occurs at the same points on each layer. Here is a video I recorded to show the idea: https://vimeo.com/400385336
I have used the Ender 3 profile in Cura 4.4.0, only changing the G-code flavor to RepRap.
I have not been able to identify what is going on, any ideas?

"changing the G-code flavor to RepRap." - The printer runs on Marlin as shipped. Did you flash a different firmware?

The Duet3D board runs on RepRap https://www.duet3d.com/

by swapping the board you turned your printer basically into a new machine. Ender3 fixes won't help, you need to use RepRap fixes now. Retagged.


text:
3D Printer does not print whole object
Just took delivery of a massive Anycubic Chiron to my house and have been trying to get it printing successfully for supplies for fellow clinic staff. For some reason, it is only printing a portion of the test shape that Cura is putting out. I am using 1.75 mm ABS Filament, with an enclosure and proper adhesion. Attached is the preview image from Cura. The next pic shows what the printer is actually laying down, some sort of rectangular crop of the test cube and skirt. I just stop the print when I see it repeat the issue.

Print settings:

Layer Height 0.2 mm
Initial Layer LW 110 %
Infill 20 % Gyroid
Print Temp 240 °C
Build Plate Temp 106 °C
Flow 92 % (thought there was an overextrusion issue)
Speed 50 mm/s
Travel 80 mm/s
Initial Layer 15 mm/s
Z Hop 12 mm/s
Z Hop Height 0.15 mm
Retraction Dist 2 mm/s
Retraction Speed 15 mm/s
Cooling Off
Min Layer Time 10 s
Skirt, 3 lines, 10 mm distance, minimum length 250 mm
Retraction Minimum 1.5 mm

It is printing the whole object, but the print head is not moving far enough reaching all the coordinate it is supposed to go to. It looks like the carriage is not moving freely. Remarks that have not to do with the problem you are facing: 1) Flow should always be 100 %, if you need to change it you probably need to calibrate the extruder. 2) Also, 1.5 mm retraction might be a little low for a Bowden setup.

I agree with @0scar ... this looks like a mechanical issue, where the extruder isn't traveling where it needs to go to get the job done. You might try re-slicing the object, placing it in a different position on the bed, moving it away from the side which is producing the sharp corner. Also, the extrusion is ugly. You'll want to double check your bed to extruder clearance as it looks like they are too far apart. You aren't getting enough squish which is causing you gaps in your initial layer.

Please see comment left below for Carl. Also, for reference, the print on the left is the most recent. I spent some time manually leveling the bed until it was squishing better and that seemed to make an improvement. I face an issue though where the nozzle is rubbing up against corners/edge and burning that area.

It looks like either the mechanical travel is constrained or, possibly you have the origin of the X-Y plane in the wrong place in Cura.  Usually Cura won't even slice if it thinks the object extends past the printable area, so check the display in Cura "Layer View."
If that's OK, then try using the control panel on your printer to manually drive the print head all the way in both X and Y axes.  If it doesn't then the commenters are correct thatyou have a mechanical interference somewhere.   If it does, then somewhere between Cura and your printer the "soft limit" of maximum excursion is set wrong. I'm not familiar with your printer model, but there should be a control panel command to "zero all axes," and typically the origin is the front left corner of the build plate (facing the printer, so "Stage Right" in theatre coordinates)  .

Initially I had a problem where the homing command would go off the bed, so I set the GCode to manually move to the center: [M82 ;Set extruder to absolute mode
G92 X0 Y0 Z0 ;First move X/Y/Z to location
G1 F1000 Z0 ;After homing lift the nozzle 0mm before start printing]. Based on your comment it seems this would cause the issue, but then how would I prevent it from homing dangerously?

@nuggetchris that's your problem then!   The homing command went off the bed because the defined origin in Cura does not match the origin of your printer.  See if Cura has a  Preset for your printer model -- probably under   Settings/Printer .

The preset in Cura for this printer, with 'Origin at Center' checked gives the GCode [M82 ;Set extruder to absolute mode too
G28 X0 Y0 ;First move X/Y to min endstops
G28 Z0 ;Then move Z to min endstops
G1 F1000 Z15 ;After homing lift the nozzle 15mm before start printing]. This homes it off the bed, at the SW corner. It is not normal. How do I prevent this? Do I change Printhead Xmin/YMin?

What happens if you turn off "Origin at Center" ?  @nuggetchris

It has no effect @carl. Also tried XMin/YMin to no avail

@nuggetchris  looking at the preamble I use:  G90 and M82 to set Absolute Positioning,  then move all 3 axes to zero (endstop switches).  About the only other thing I can suggest is to go into Machine Settings and make sure the X,Y,Z values  are set to 400, 400, 450 mm per the manufacturer spec.


text:
Layer Separation Where A Previous Layer Ends
I have a problem with my prints having a small separation gap between layers when I have a corner and the Z layer ends or starts for a partial distance. The gap reminds me of a gap between a print and its raft. Usually 1 layer just seems to be missing in places.
I've been printing about a year now and I've tried different temps, line width, layer thicknesses. The problem has even been a problem after installing new firmware. I use Cura V4.5.0 and an Ender 3 printer. The problem is rather difficult to describe so I've attached an image demonstrating the problem.

Almost certainly the material that was supposed to be deposited there was lost (oozed out) somewhere else during travel moves due to no retraction, insufficient retraction, or retraction being skipped due to combing. Make sure retraction is on, at least 6 mm, and try disabling combing or setting the max combing distance very low, around 2 mm or less.
If your new firmware is Marlin 2.0, you can try enabling linear advance too. If tuned correctly, it will largely correct for this along with improving lots of other things.

Thanks for the reply. I made the changes you recommended. The retraction distance was set at 5 and I changed it to 6. The max comb was set at 30 and I changed it to 2. I couldn't figure out how to add an image to a comment so I changed the image in the original post. The new image shows a "before" print in the background and the new version in the front. As you can see, the place where the layer appears to be skipped is better but there is still a problem (arrow). The top of the print completely falls apart though. Any idea why it turned to a mess higher up?

That looks like your nozzle is clogging or something. I'm not sure so I'll see if others have comments to add.

The problem is definitely related to Cura settings because I installed Slic3r and the prints are fine with it.

What are your speed settings in Cura? Do you perhaps have "coasting" enabled?

I have print speed at 50 and wall speed at 25. These are the defaults for the Ender 3 with PLA.. Coasting is turned off.


text:
PRUSA likes the bed to be cleaned with isopropyl alcohol. What else should I use?
I have the original Prusa i3m3 printer.  Prusa recommends cleaning the bed before each print with isopropanol (isopropyl alcohol), with only occasional cleaning with acetone.  The textured bed prohibits using acetone.
Given the SARS-COV-2 situation and COVID-19, isopropanol is impossible to find, and will not be in stock on shelves in the US for months.
What would you suggest as an alternative that might still be found on store shelves?

Why not order it on Amazon? Looks like they can get it for you and you don't have to go out to get it.

Do they have it now? Last I looked they were out. I'll look again.  Wow, $29/liter is pretty stiff.

When I looked yesterday, it was 1/2 that amount ... that said, beggars cannot be choosers. Besides, anything which acts as IPA is going to cost like IPA, considering the current world circumstance.

Everclear? Or maybe even just vodka? :-)

Ethanol (Ethyl Alcohol) should work just fine as long as it's around 80% or more. It's very similar to isopropanol as a cleaning solvent. What you're basically doing is removing any stray grease from the bed with a solvent that evaporates quickly.
Methanol would also probably work. It's very poisonous though, and shouldn't come into contact with your skin, so it requires a bit more careful handling. Methanol also has the benefit that it can't be used for hand sanitizer (since it's absorbed through the skin), so supplies shouldn't run out.
Look for alternative sources, for example, methanol is often sold as de-icing agent for pneumatic brakes on trucks. Just make sure it's pure alcohol without anything funky added.

Beware of methanol, it can turn you blind. It is easily absorbed by the skin.

Good point, just don't get it on your hands, don't drink it (10 ml will cause blindness, 30 ml will probably kill you), and don't use so much that you're huffing vapors and you'll be fine.

Don't use methaol, it's an unnecessary risk.

I'll stay away from methanol.  I wonder if the ATF would understand that my still was only so that I could clean my printer bed.

Methanol is not as bad as everyone says.  As a matter of fact for severe ethanol poisoning (over-drinking) they give you methanol because it flushes the ethanol.

You've completely misunderstood something, the treatment for methanol poisoning is ethanol, not the other way around. Methanol is very poisonous, but it won't kill you if you use it responsibly.

I've been using ethanol exclusively as that's what I had on hand. It's only 70% but it still seems to work well. Coupled with a micro-fiber rag it keeps the print bed looking fresh.

Dish soap will remove grease very well. Once you rinse it with a moist sponge and dry with a clean cloth most residues will be gone.

I recently tried cleaning a glass build plate with Dawn dish detergent and rinsed it thoroughly but the PLA wouldn't stick until I went over it with iso. I think it must have left a residue.

The Prusa manual also states that you can use Windex for PET-G:

use Windex instead as it degreases less thoroughly.

Also works with PLA, I've tested it, but for assured adherence, I also use a little swipe of the glue stick included with the printer.

For PET-G I'm been using the Aqua-Net hairspray on one side of the bed.  The other side is kept hairspray-free and is cleaned with IPA.  My 95% is now diluted to about 71%, and IPA is not yet in the stores.


text:
RAMPS 1.6 power connector caught on fire while heating bed
I built a 3D printer from scratch originally using a RAMPS 1.4 shield with Arduino Mega as a controller. About a week into the printer being finished and working well I installed a heated bed. It worked well at first, but after about a week one of the MOSFETs got really hot and started to smoke while the bed was heating up. After that I decided to get a new RAMPS 1.4 shield, and the same thing happened. After doing some research online, I found out that the MOSFETS on the RAMPS 1.4 typically under perform, and there are upgrades that handle the power much better. I decided to buy a RAMPS 1.6, as I had found it was rated to handle the extra current. The 1.6 worked really well for about a week, until earlier today while the bed was heating up for another print, the power connector began to smoke and caught fire very quickly. (Luckily I was aware of problems like that and watching it and was quickly able to unplug it). Note that this was a problem with the power connector and not the MOSFETs like the 1.4 board. To try and troubleshoot the problem, I plugged to power in and only the power (no USB connection) and immediately the power connection began to smoke again. So at this point I don't know how to approach this problem. I don't know what is causing it. Should I buy a new board? (I don't want to go with RAMPS again) or is there  a way to fix the power connection?

What heated bed and size are you using and at what voltage? It appears the connectors are not rated for the current. Apparently, the MOSFETs are not an issue any more with the 1.6, but you can always order external MOSFET modules to take the load of the board, but that doesn't seem to be an issue now.

The link to the specific heated bed I bought is here https://www.amazon.com/Anet-Aluminum-Upgrade-Printer-220x220mm/dp/B07B21CBYL/ref=sr_1_5?crid=2DSHPMU5C0VH&dchild=1&keywords=3d+printer+heated+bed&qid=1585436969&s=industrial&sprefix=3d+printer+heated+%2Cindustrial%2C183&sr=1-5, -- But in short it's 220mmX220mm and it takes 12V.

That particular bed is prone to catch fire, the connector is underrated for the current it needs to be replaced immediately. I have the same bed on my old Anet A8; I soldered the power cables directly to the pins. Your question is basically answered in "Anet A8 Hotbed Not Heating Correctly".

Possible duplicate of "Anet A8 Hotbed Not Heating Correctly?

Okay, so could a problem with an underrated heat-bed connector cause the fire/smoke on the RAMPS 1.6 shield? After inspecting the connector on the heated bed it looks to be completely fine other than one solder connection with a small black spot. And when you say the connector needs to be replaced do you mean the one on the RAMPS or heated bed?


text:
Can Cura alert me (give a warning) if it estimates times for layers are too long?
I occasionally have a problem with warping and peeling. Mostly this is fine; it only happens rarely. Recently it happened again on a larger item, and it gave me an idea. I went back and looked, and I noticed it's much more likely to happen when I have very large layers near the base of the print, where the time between layers is too long. The print cools down too much before the next layer can cover it, causing the warping.
To help avoid this issue, I'd like to have Cura alert me somehow if I'm gonna have times for individuals layers greater than, say, 4 minutes (I'll improve on that number over time).
Is this possible?

In posting this, I noticed an even better option for slic3r to automatically disable the cooling. If Cura can do that, I'd also like to know how. But I still want to know about alerting for those layers.

to disable cooling, set max fan speed to 0. Or change cooling to turn on only on a higher layer.

The actual problem you are facing is adhesion. When you master the adhesion, there is no problem at all. As suggested, be sure that you aren't using the cooling fan for the first layers. Also, investing in a premium adhesion spray (e.g. 3DLAC, DimaFix, etc.) means a world of difference. I've printed kilometers of various filaments, a premium adhesion spray makes all the difference, it is a small investment, but a 400 ml can lasts many prints. You don't even need to spray in between prints, once every few prints is more than enough.

this is highly material-dependent.   You will want to do your best to keep the entire print volume "warm" when using ABS, for example.  PLA and PETG are more forgiving.

Look at Cura's cooling settings. It doesn't have a warning like you asked for, but it does have options to control the fan to avoid over-cooling. I think you need to set "Regular/Maximum Fan Speed Threshold" to the number of seconds you want to consider a "long time" for a layer to take, then set "Regular Fan Speed" (for layers that take a long time) to 0 or something low, and "Maximum Fan Speed" to 100 or whatever you normally want to be using.


text:
.STEP/.F3D to .SCAD file?
I work with Fusion360 for designing lots of things. Recently I learned how to work with parameters that I can easily modify all at once, allowing to pretty much make easily customizable pieces.
Now, Thingiverse wants customizer pieces in the shape of .SCAD files, and some people just can't work with Fusion360 (.F3D) or proper .STEP files that can be imported by most CAD programs.
I have no experience with OpenSCAD. Can I import my .STEP into openSCAD, retain my parameters and export it as a .SCAD, and if yes, how?

Even though OpenSCAD can import a variety of formats, the file structure will not be accepted by Thingiverse in the manner presented by the OP.
OpenSCAD is a text-based description language. One creates parameters assigned to specific aspects of a model and implements those parameters to create the desired shapes/components by typing in a text editor. The native editor for OpenSCAD provides for some management, but notepad or equivalent would work just as well.
The file format of OpenSCAD is text. None of the CAD type modeling programs will provide equivalent text output.
For your objective, you'd have to learn the basics of OpenSCAD (not particularly difficult) and reference the parameters in the STEP files, then assign them to the appropriate labels in OpenSCAD.
If you have particularly complex designs, it can be a handful. It can also be rewarding when you change a parameter as a test and the complete model follows as expected.

I find pure text based input a PITA - and never worth the effort.

I find anything I can't edit as pure text a PITA and never worth the effort - the effort ends up being all wasted when you want to change something and have to start over.

WIth that said, though, I think there should be some reasonable way to automate conversion of these formats into clean, editable OpenSCAD source. It just might (or rather almost certainly will) take some programming (in whatever language you prefer) to do it.

Actually there's a solution, albeit not directly from within openscad.
I've just found this:
https://github.com/agordon/openscad-step-reader/tree/master
You will need to install or build yourself opencascade, and then it's a matter of running a command line tool to convert a .step to a .scad file.
I've just done it to be able to import a Thorlabs designed optomechanical item into scad and it works swell.
./openscad-step-reader --stl-scad RM1B-Step.step > RM1B-Step.scad

Then open the converted .scad file.
If you want to try, the item can be seen here, get the step file from the list of document.
The result in openscad:

I managed to get openscad-step-reader to compile, but I had to jump through a few hoops:

Run the apt-get install command from the beginning of the Makefile:
apt-get install libocct-data-exchange-dev libocct-draw-dev libocct-foundation-dev libocct-modeling-algorithms-dev libocct-modeling-data-dev libocct-ocaf-dev libocct-visualization-dev libtbb-dev

Ignore anything to do with cmake. I can get cmake to work by creating a CMakeLists.txt file, but I couldn't get the Makefile it generates to work.

Edit triangle.h and replace

ostream with std::ostream [2 changes]
endl with std::endl [3 changes]

Edit openscad-step-reader.cpp and replace

endl with std::endl [1 change]

Edit explore-shape.cpp and add

#include <GeomAbs_SurfaceType.hxx>
#include <BRepAdaptor_Surface.hxx>

Edit the Makefile and change

7.3.0 to 7.5.2 [2 changes]
(I realise a better solution would be desirable for this!)

Run make. The .o files should be created, but the cc command will fail (after a longish time), citing 'undefined reference' 783 times

Copy the cc command that was printed whilst running make, and put all the .o files before all the -l arguments, like this:

cc openscad-step-reader.o tessellation.o openscad-triangle-writer.o explore-shape.o -lTKSTL -lTKXDESTEP -lTKBinXCAF -lTKXmlXCAF -lTKXDEIGES -lTKXCAF -lTKIGES -lTKSTEP -lTKSTEP209 -lTKSTEPAttr -lTKSTEPBase -lTKXSBase -lTKStd -lTKStdL -lTKXml -lTKBin -lTKXmlL -lTKBinL -lTKCAF -lTKXCAF -lTKLCAF -lTKCDF -lTKMeshVS -lTKOpenGl -lTKV3d -lTKService -lTKXMesh -lTKMesh -lTKOffset -lTKFeat -lTKFillet -lTKHLR -lTKBool -lTKBO -lTKShHealing -lTKPrim -lTKTopAlgo -lTKGeomAlgo -lTKBRep -lTKGeomBase -lTKG3d -lTKG2d -lTKIGES -lTKSTEP -lTKSTEP209 -lTKSTEPAttr -lTKSTEPBase -lTKXSBase -lTKStd -lTKStdL -lTKXml -lTKBin -lTKXmlL -lTKBinL -lTKCAF -lTKLCAF -lTKCDF -lTKMeshVS -lTKOpenGl -lTKV3d -lTKService -lTKXMesh -lTKMesh -lTKOffset -lTKFeat -lTKFillet -lTKHLR -lTKBool -lTKBO -lTKShHealing -lTKPrim -lTKTopAlgo -lTKGeomAlgo -lTKBRep -lTKGeomBase -lTKG3d -lTKG2d /usr/lib/x86_64-linux-gnu/libTKMath.so.7.5.2 /usr/lib/x86_64-linux-gnu/libTKernel.so.7.5.2 -lfreetype -lpthread -lrt -lstdc++ -ldl -lm   -o openscad-step-reader

Now, for me, the program will compile. My system is running Ubuntu Focal Fossa 20.04.6 LTS. I contacted the author (Gordon Assaf) but he said he was no longer working on the project. For me, this has been a godsend, since it allows me to import .step files downloaded from the Swagelok website into my OpenSCAD design.


text:
Ender 5 Plus offset issue
Me: Experienced coder, Entry level 3D print person.
Setup

Ender 5 Plus
Creality V2.2 Board
BLTouch
Marlin
Titan Aero

Notes: Using a custom mount for the head and probe.

Front Left Top is 0,0,0
X/Y End Stops are at TOP REAR RIGHT

I am unable to find a configuration that sets the head to the center of the bed X Y after home
I have tried

Max Min Offset
probe to nozzle offset
hotend offset
moving the endstops
changing the bedsize
Setting G92 position 0 0 at the true 0 0
setting center to 0 0
setting front left edge to 0 0
setting right rear to 360 360
setting true center at 180 180
ender 3 screen (to use menu to align)
BTT-TFT35 Screen (to use menu to align)
Marlin latest
InsanityAutomation/Marlin Darwin
Th3d Marlin latest
Cura 4.4.1
Cura Latast
Octopi
Console (setting params and values manually, EEPROM)

None of the above trials, either alone or combined in appropriate ways are centering the head to the bed after home.
The only way I can even move where the hotend ends up after home, is by changing X_BED_SIZE and X_BED_SIZE (still unable to use the specified area of the bed and center the head).

To center the head after homing enable SAFE_HOMING in your configuration. Note that front left bottom is (0, 0, 0). Setting boundaries using a probe is described in How to set Z-probe boundary limits in firmware when using automatic bed leveling?.

Possible duplicate of How to set Z-probe boundary limits in firmware when using automatic bed leveling?.


text:
Prusa i3 MK2 Heated Bed Thermal Runaway Problems
I'm having an issue with my Prusa i3 MK2 MMU.
It starts printing just fine, and everything gets up to operating temp quite quickly. However, after printing the first few layers, it seems as if the heated bed can't keep up with the demand, and its temperature starts to drop, first it can barely hold 80 °C and then it slowly drops down to 77-76 °C before the printer shuts off due to BED THERMAL RUNAWAY.
The LED is continuously on for the bed, so it seems to be supplying power when this happens. Setting the printer down from high power to "silent" helps a bit, so could this be that it is not getting enough power?
Ambient temp is around 17 °C.

The local library makerspace (prior to COVID-19 shutdown) has a Prusa i3 MK2 (no MMU) that had a similar problem. The model being printed was relatively small, compared to the bed and was being printed nearly atop the temperature sensor.
The part cooling fan was cooling the bed sensor while the rest of the bed was not being used.
Moving the model away from the sensor resolved the problem. If you're printing in the center of the bed, consider to re-slice in a position offset from the center.
If you are using the PEI sheet as the library machine is/was, consider to shuttle your prints around the bed over time. The library's printer wore away the PEI from always-centered prints. It had to be replaced after about a year. The replacement is going on two years with little complications.

Spot on mate, I was printing a ½ inch cylinder in the middle of the bed. I'll try moving it around and see if that helps! Thanks!


text:
Makerbase MKS Slot2 V1.0 + RepRapDiscount Full Graphics LCD + RAMPS 1.4
I want to add an external SD card adapter on my RepRapDiscount Full Graphics LCD. My 3D printer is based on (Arduino Mega + RAMPS v1.4 + RepRapDiscount Full Graphics LCD).
I buy an SD Card Adapter from Aliexpress  (https://www.aliexpress.com/item/32873382195.html?spm=a2g0s.9042311.0.0.4f544c4d5UzB1L) and now I want to add this adapter on my RAMPS 1.4 while not disturbing the working of RepRapDiscount Full Graphics LCD.
Please guide me how can I add this to my RAMPS? Thanks!
My 3D Printer Details:

Model: A Standard DIY Prusa 3D Printer (Cartesian)
Firmware: Repetier Firmware

A RepRapDiscount Full Graphics LCD already has an SD card slot reader at the back of the board:

Basically one of the 10 pin headers is used for the display and rotary encoder and reset, the other header is used by the SD card reader.
The module referenced in the question is a breakout SD card slot reader for the TFT (touchscreen) display controllers. Whether these are compatible with the EXP2 header of the RepRapDiscount Full Graphics LCD should be compared with the schematics. The schematics of the RepRapDiscount Full Graphics LCD are available, but for the SD slot breakout cannot be found. It is therefore unsure if the EXP2 is fully compatible for the SD slot board. To use the EXP2 on a RAMPS shield, you need the L-shaped connector.
The description of the Slot2 explicitly says that it is meant to be connected to either a TFT35 or a TFT70 MKS touchscreen display. In order to use it directly to your RAMPS shield requires finding out which pin goes where.