text:
Stepper motors won't move on RAMPS 1.4
I have an Arduino Mega clone and RAMPS 1.4 together with A4988 drivers and NEMA 17 motors which won't move. Motors can be turned easily by hand both when the RAMPS is powered and is not powered. There is ~12 V between VMOT and GND on the driver. I don't have multimeter capable of detecting pulses. I have all pins under the driver connected to enable 1/16 steps. I didn't touch the pot on driver.
What I have tried:

Using Marlin 1.x, 2.x and RAMPS 1.4 test program https://reprap.org/wiki/File:RAMPS14_test.zip which lighted up the diodes but didn't move motors.
Different wiring (pin numbering looking on the connector on motor from the shaft side left to right)

2B -- pin 1             2B -- pin 4
2A -- pin 3             2A -- pin 1
1A -- pin 4             1A -- pin 3
1B -- pin 6             1B -- pin 6

Tried to wire driver separately with ATX power supply following this instructable: https://howtomechatronics.com/tutorials/arduino/how-to-control-stepper-motor-with-a4988-driver-and-arduino/ and motors still din't run. This means I either wired it all wrong, fried all my motors or all my drivers. Is that even possible?

Can you please help me to find out what's wrong?

Please note that the default pot meter position is undefined, it is not tuned or set for use, you need to adjust it.

Thanks! I have DSO138 oscilloscope on the way so I will update the question ASAP.


text:
Linear rails maintenace
On my delta printer I have linear rails and one of them (rail+block) started squeeking while printing. I have thought about these causes: 1) the rails are not lubricated well enough, they were always lubricated from the outside (grease put on rail) since the instalation about 4 years ago 2) they are wearing out and need replacing.
I have couple questions about both possible causes.
The everlasting question: which lubricant do I use? I have seen many to use grease and many others discouraging from that. If not grease, what else? I have Konkor 101 (might not be available in English) or WD40 as lubricant oils.
Should I remove the block from the rail, clear both and apply new lubricant from the inside (i.e. on the inside of the block, to the steel balls)? Or is from the outside enough? (I supect it is not.)
If the rail and block is failing, which one of them? I mean, most parts are designed that some fail sooner than others because they are easier to replace. Is the block wearing out (because it is more delicate) while the rail is still holding (because it is essentially just a block of metal)? Therefore replacing block could solve the problem?

WD-40 is not a lubricant, but that discussion can be found elsewhere on the internet. :-) If the rail is wearing out (the balls are hardened), it is probably a low quality rail. There is an enormous price difference in good and bad quality rails. Manufacturers of good quality rails provide a grease nipple on the carriages to grease the bearings, but light oil should work also.

WD40 is short for "Water Displacement - formula 40". It's designed as a cleaning agent and to get water out of applications that are to be greased or to prevent them from rusting.

The carriages have a hole on both sides but no screw/nipple. I also found in multiple sources that WD-40 can also be used as lubricant, among other use cases. However, I have found out just now, that it was not the rails nor carriages squeekeng but the magnetic rods from the carriage to the efector. But that is for a different discussion.

WD40 is a short term lubricant, not a proper machine oil or grease. It is called a "Kriechöl" over here - used to creep into rusted or stuck machinery to lubricate it for disassembly. NOT for permanent lubrication.

Thanks for clearing that out. Apparently, there is a lot of missinfromation out there

source: Stack Exchange

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

sort: votes


text:
Is there any way I can remap pins so the Z axis outputs through the extruder driver?
I have a Wanhao Duplicator i3 from which  I have blown the Z axis stepper motor. I would like to be able to have all three axes of motion available for another project. I am trying to see if there's an easy way so that instead of using the Z (blown out) motor driver, it uses the extrude motor driver to control the Z axis. Like when it gets the command to move the Z, it outputs that command through the extruder motor. I'm using Marlin firmware (i3 plus plus) if that helps.

Which Duplicator is this, a mini or a plus? This could matter for the printer controller board!

Yes you can, basically, you need to change the pin numbers in the pins_<boardname>.h file for the E0 and the Z stepper, like shown in "How to switch motor outputs and use E1 as X, in Marlin firmware?".

Does this answer your question? How to switch motor outputs and use E1 as X, in Marlin firmware?

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


text:
Homing damages limit switches Ender 3
I'm new to 3D printing and have bought an Ender 3. I have printed a few good prints but I'm noticing a worsening issue:
When I select "autohome" the axes head towards their limit switches, but the y axis in particular seems to slam into the limit switch, bending it away, meaning that the platform bounces off and doesn't activate the limit switch a second time
This causes the machine to slam against the back over and over until the limit switch is triggered or power is removed.
I've replaced the limit switch twice
I've tried supergluing the limit switch to its PCB but even with a needle and patience this caused the limit switch to be ruined
What can I do?
Edit: Here are some photos of the switch (2nd replacement). The OEM switch also did the same thing, but I don't have photos of that. The screws are loose in these photos, but this is just because my Allen key is lost - the previous two switches had the screws reasonably tightened with the correct Allen key, provided in the box

Photo please? this sounds like the switch is mismounted...

Possibly the gcode speed settings during these homing operations are way too high.  Can you post your gcode "preamble" so we can advise?

@Carl Witthoft I'm using the Auto Home function found on the Ender 3 - pressing the wheel and going to prepare, then auto home,

Can you move the Y to the opposite end and then time how long it takes to move across? That may be able to tell us if it's going too fast. Also, are you sure the Y limit switch is working? If you press it with your finger while its homing, does it stop?

The solution seems to be simply triggering the switch earlier, and making sure that it is triggered. The thin arm can end up bent over the actual button of the switch, meaning that the arm can be touching the switch without actually "pressing" the switch. For some, bending the arm seems to have worked, but for me I had to wedge a small piece of plastic between the arm and the switch button, meaning that it is a lot more reliable when you press the switch. The piece isn't stuck in there in any way, simply held by friction. This isn't the best solution as you have to keep an eye on that piece with every homing, but until a better answer is available, I recommend this solution as it was more reliable than bending the arm out or into a different shape.

Personally, I have found that if you bend the arm of the limit switch out, it gets triggered earlier and solves this issue for good, (broke a switch clean off at the bend on the pins, soldered old switch back onto the pins in the board) bent the arm to a greater angle, so the striker triggers 3-5 mm earlier, problem averted!

authors: Герман Борисов


text:
Why are my layers messy and curling off the print bed?
I use an Ender 3, with cheap Amazon "Eryone PLA", which states a range from 190-220 °C, 1.75 mm dia. I have had this for about a year.
I use the rough build plate, not the glass. I have tried my best to level the bed but I am an amateur
I was originally getting poor adhesion so I cleaned the bed, levelled it, increased filament temp to 196 °C and heated the bed to 40 °C, with no fans in a house around 20 °C with not much airflow.
This helped adhesion, but my layers are very messy - the first perimeter may adhere correctly, but subsequent layers curl off, meaning the inner passes lift off the build plate. Attempting to persevere, pulling out these regions causes the blobby, ridged mess shown below. This is still the first layer.
I have noticed the extruder makes a knocking noise every so often, and the edges of prints can be so thin they are translucent.
I've browsed the web for common 3D printing errors but nothing I've found or tried has helped.

If this isn't the first layer I would say over-extrusion. Are you sure the nozzle is about a sheet of paper away from the bed when Z = 0?

To the best of my ability, yes, I used a sheet of printer paper and lifted the platform until I got a small amount of resistance

This is clearly overextrusion relative to the volume the material is being deposited into, but that doesn't necessarily mean your extrusion rate is wrong. It could be:

Nozzle smashed down into the bed (bed way too high) but somehow still extruding
Problem in Z axis movement preventing the head from moving up the right amount for each layer (possibly not moving up at all?)
Extrusion (flow) increased significantly above 100% in slicer
Wrong extruder steps/mm setting (usually controlled on printer not slicer, though you can send a setting in the start gcode)
Misconfigued filament diameter (unlikely since there's no common setting smaller than 1.75 mm; larger setting would under-extrude)

I'd add to R..'s answer: It could be:

temperature is too high - which would cause the melted filament to flow a bit freely

Bad filament is my answer. I bought PRLine and both print terrible like your picture. Suspect 2 factors, one is that the line is less than 1.75, so they underextrude and so you see those lines and in some cases gaps, second is the material itself is slippery suggesting to me that it has florinated additives.

I just recently got my first 3D printer (Ender 3 v2) and am also using the Eryone PLA filament. After the first week, I was having bed adhesion problems as well. I think part of the problem is the bedsprings become loose rather quickly.
Here is my current solution, leveling the bed with a receipt paper (thinner than regular 20lb bond paper) and using blue painter's tape on the stock glass bed.
Since using this setup, I have not had any major issues with my prints. I have ordered new bedsprings (Ogrimmar Yellow Springs) and hope these will be a more lasting solution to the loose bedsprings.

uh, that sounds like... bad leveling - what distance does your bed have from the carriage plate below?

@Trish currently it is about 1 cm. I was following the instructions as per this video (Ender 3 V2 Easy Bed Leveling)

1 cm is about ok, your springs should be under lots of tension in that case.


text:
Cura imports FreeCAD stl wrong
I am trying to import an STL file, I created in FreeCAD. It has a hole in the hull of the object and behind that hole there are two pins inside the object (see attached FreeCAD screenshot).
When I import the STL in Cura, there are no walls around the whole object where there is the hole in the hull (see attached Cura screenshots). However the wall and the hole are visible in light grey, Cura just doesn't print it.
Update:
 I understand the problem. It's not a watertight solid. I found a way to import it somewhat fine using meshmixer to create a hollow with an offset which makes the outer Hull actually have a thickness to it. Now the problem is, that's not really what I want. The result in cura now can't be printed with infill since the actual inside of the model is only within the walls. Also cura sees both sides of the wall as outer Perimeter. I understand the problem but actually am looking for a way to just prevent printing part of the regular model's wall.. In other words: I would basically like to set the whall line count to zero in that particular area. I just tried to use the support blocker and "Modify settings for overlap" but that doesn't do anything.
CURA:

FreeCAD:

Is the wall a zero-thickness construct?

Yes it is. I figured that might be the problem, but I can't find a way to solve it. The base model, that I import to cut the whole into is an stl and I basically just need a way to have a hole in the object's hull and the two pins behind it.

the object is not a watertight solid, which results in misslicing.

I understand the problem. It's not a watertight solid. I found a way to import it somewhat fine using meshmixer to create a hollow with an offset which makes the outer Hull actually have a thickness to it. Now the problem is, that's not really what I want. The result in cura now can't be printed with infill since the actual inside of the model is only within the walls. Also cura sees both sides of the wall as outer Perimeter. I understand the problem but actually am looking for a way to just prevent printing part of the regular model's wall..

I suspect that your method to create the hole for the pins may not be consistent with the modeling practice that FreeCad and other programs of this nature require.
Consider the following:
Import your base shape.
Create a second shape that matches the hole you wish to create. It must be a solid object, not a plane or other single surface item.
Consult one of the many FreeCad tutorials that present the method to use next, that is to place the shape to be subtracted in the desired location, then perform a Boolean operation involving both objects. In the linked tutorial, it's referred to as a cut, which is an accurate description.
Performing this action will create a surface where the two objects intersect, removing the smaller one, leaving a solid, rather than a zero thickness surface.
You would then create and place the cylinders in a manner consistent with the original model.

That is exactly what I did. It seems this still leaves me with a non watertight result.

@Chry007 looks like you'll have to track down defects in the FreeCad model, and check the direction of surface normals, and so on.

Only proper solution that's worked for me on the .stl level like this is manually deleting and patching the triangles in FreeCAD's Mesh Design.  It's usually time consuming, but there are 3d scans and the like that just cannot be modified correctly without fixing the mesh (either before or after the mod).


text:
What kind of problem is this? How does it correct itself?
I fired up my printer again last night to print something (Printrbot LC that I have customized), and happened to notice the Octopi instance still had a file that I printed ~5 years ago. Also, I noticed i had files from ~2013 when I got started. My printer is from that time, so keep that in mind.
I've noticed that sometimes I will see a Y axis shift, and then the print will correct itself. It did it again last night.  Since this had happened before, I thought maybe the wires for the heated beds were getting snagged on something, so I made sure they were out of the way, and made sure they had proper strain relief before printing this thing.
However, about 1 cm up the Z axis, my print had a 1-2 mm shift of the Y axis for ~2-3 mm, and then corrected* itself somehow.
The Question
What is this kind of problem called?  What should I look for to try to troubleshoot it?  Let's make sure to include the possibility that one of my upgrades has gone awry to leave no stone unturned.
Stay on Target
My printer probably also has other problems, and that's fine to point them out after addressing my primary concern.
*Almost completely corrected itself.  Maybe .5-1 mm off.
This is the print.
It'll be serviceable after some filing.  It's from this thing.

This is my printer

Upgrades

Printrbot LC, I want to say I bought in 2010.  It was a kit and I assembled it.
This pic is from 2014 and it's about the same.
I've extended the physical Z height, but supposedly the firmware needs to be updated to make use of it. I would still need to adjust the wiring too.
I've extended the Y axis (front to back).
As part of extending the Y axis, I added a 2nd heated bed. It's not plugged in, and I only use the one which is the one closest to the camera. There is room for a 3rd bed, but that was an accidental bit of engineering.
There was a lot of bow in the bed, even with the added support.  I manually adapted this thing to add in a bearing to support the bed near where the hotend was.  Manually with a dremel, super glue, etc.
I have noticed a clicking where the support bearing touches a screw holding the aluminum rail to the wood, but that would only impact prints for the second bed.  The print I am asking about was in the middle of the primary bed, and far away from this.
I updated the belt and pulley to the G2(?) belts.  Those are standard now, but this was an upgrade for this bot.
I added an additional support bearing for the hotends, which reduced the X axis slightly.
Added fans for the part and the incoming filament.

Misc

Bed is manually leveled by adjusting screws and nuts
Glass is held to the bed by small aligator clips
I print on bare glass with purple glue
I am using PLA+, hotend at 220 °C, and bed at 60 °C
I have an old version of OctoPi on a Raspberry Pi 1 controlling the printer
I sliced last night with Cura 4.1.0
I use 3 mm filament
Printer has a .4 or .5 mm hotend, whatever was stock (I don't recall, and I don't see the setting in Cura)
Printing at .2 mm height
I have noticed some wear on the 3D printed gears for the extruder, but they still seem to be working.  I've been meaning to print some spares, and have printed a spare bigger one in case they fail.
The printer has wooden 1x4 supports in one corner, so none of the PVC cage moves at all now.  It didn't move much before unless I was pushing on it.
I printed and screwed in some stops that go around the feet of the printer to prevent it from moving around.
The printer is very rigid with the above feet stops, the wooden supports, and the ~20lb roll of filament on top of the Z axis.
The y axis has some friction and some spots are tighter than others, so I will keep looking at the mechanics of the bed to see what I can do.

Things I have tried so far

Tried multiple things at a time, because screw science lol.  Close to order of operations below, but not perfect.
Upgraded Cura to 4.5.0
Printed multiple times.  Still have the problem.
Rotated print by 180 degrees.  Same problem in same direction, at same height. Towards the Y axis zero.
Adjusted flow to 97%, so now I'm not overextruding.  The screw holes come out as screw holes, and the top surface looks mostly normal.  Once I'm done with this print, I might try 95%.
Cut a zip tie that may have been catching on bed clips.
Added more clips to hold the glass to the bed.  Removed old clips that were worn out and may have been impacting the gantry.
Adjusted the tension on the screw that holds the bed and the guide rods, to reduce friction of the guide rods and their bearings.  This reduced friction, but did not have an effect on the print.
Rotated print by 90 degrees.  Same problem in same direction, at same height.
Watched the printer as it was printing the strange part.  There were no mechanical collisions, and things seemed normal.

More thoughts

I will look into spinning up a new Octoprint server on a newer Raspberry Pi to see if that helps.
I am having a hard time finding examples of layer shift that didn't 100% kill the print.  The fact that this corrects itself makes me think it's not the usual mechanical problems associated with layer shift.
I have added the other thing to the print (from the same designer and thing page), and we'll see if they both have the problem, or what else might happen.

Updated pics

I would call it layer shifting, but that doesn't recover by itself! Is the frame rigid being made from PVC tubes? A big mass on top of a non-rigid frame does sound like a recipe for disaster. It looks as if the mass of the Y-axis is very large also.

I reprinted from the same GCode and got the same layer shift in the same spot, so I'm going to try to slice it in the newest version of Cura and print it and see what happens.

My own printrbot does the same thing. Less extreme, but I too had layer shifts that persist across printing and slicing attempts. I am beginning to suspect that it's something to do with the acceleration of some part of that layer. I'd be interested to hear about how this gets solved.

This is some really atrociously bad print quality in nearly all regards. Whatever's wrong with the machine can probably be fixed, but I suspect it will take a lot of work to get it working even close to as well as a $100 printer you can get nowadays.

All those prints are terrible compared to what my Printrbot LC v2 can do, I think you should do a full calibration of the printer cooling, temperature, extrusion factor.
Anyway, the issue of layer shift corrects itself because ... it happens again. Nothing else.
Printrbot LC v2 had quite an aggressive acceleration already, and you increased the weight of the Y axis (frame, heated bed, rods) significantly. Have you reduced with M201 the Y acceleration? I wouldn't use anything above 1000, in your case. Maybe even less. Then the layer shift will disappear.
That PVC structure seems non-rigid and could be wobbling laterally. You could put some kind of stiffener in or upgrade the frame with stiffer materials.

Updated the Q with lots of info.
I've done full calibrations before, and that's the reason why I don't print that much.  I spend more time fiddling with the printer than the things.  I have not adjusted the M201 acceleration, but I will check that out.

1000 isn't extreme at all for acceleration. I'd check jerk settings which are more likely the culprit.

But I'm also very skeptical this is a layer shift (missed steps). It looks like it corrected gradually, in a consistent manner, which is extremely unlikely to happen due to a sequence of missed steps. I think it's much more likely there's something non-rigig in the printer frame that gets put under stress and moves at that layer, and gradually goes back as the stress is relieved.

And if it really is layer shifting (missed steps) a likely cause is the severe over-extrusion which has the nozzle gouging into the previous layer.

The photos show that the problem is occurring at around the same height. It seems that at a certain Z height something is deflecting the other axis (not sure if it's X or Y) which resolves itself.
I suspect that the rod on which the Z axis rides is either bent or has a dimple, where the rollers pass over it. Either that or perhaps a roller has a dimple.

why would a dimple on the Z axis affect a moving Y axis bed in the direction that the Y axis moves? that doesn't make any sense.


text:
Filament feed tube
I'm new to 3D Printing and recently purchased an Ender 3D PRO I'm having an issue with the filament guide tube getting pushed out of the nozzle on the feeding mechanism.  The assembly instructions don't include a whole lot of detail about installing this guide tube but there are blue clips that were included along with the spare nozzle.  There are no instructions on where to use these blue clips and I have a hunch this might be the problem.

The blue clips stick in the connector on the extruder end of the feed tube. They are to keep it from opening as the printer extrudes and retracts filament.
To install them, push them in between the white part of the fitting on the feed tube (not the hot end). You should only need one or two, and they are all of varying thicknesses. If you're not familiar with these fittings, I found a YouTube video on how to use them.

The clips or collet clips as they are called are to secure the Bowden tube more solidly to improve printer extrusion; more specifically: extruder retraction performance.
E3D has explained this very nicely on their site under Bowden tube physics:

For the bowden couplings (which can have some wiggle room in them) we are introducing collet clips, which slide under the toothed collet part of the coupling that physically holds the tube and locks it into place with a little pre-tension to boot. This reduces coupling lash to near zero as the collet and tube it is holding are locked into place.

From the animated gif from the E3D website (animated gifs are not allowed on SE) it can be seen that without clips, the tube can move in the tube coupling:


text:
Can I resolder a power connections with a partially burnt board
Recently my RAMPS power connector caught fire while heating the heated bed. I suspect this was a defect caused by the connector, and de-soldered/removed it as best I could. I'm  not an electrical engineer, so I'm looking for advice on whether It is possible to re-solder the power connectors directly onto the board, or I'm just risking another fire. Here are pictures of the top and bottom.

As MIck wrote, we hope your board isn't damaged - with any luck there aren't any trace shorts in the melted region.
My approach would be slightly different.  Use some short bits of wire soldered into the board at one end and soldered to a new connector socket at the other end.  This way you can put a new plug connector on the power leads and be able to disconnect the board as desired.

Possible? Yes. Advisable? Perhaps not. Since it is the power connection, I would be tempted to solder the cables directly to the board. If the board is found to work, I would then install an external MOSFET for the heated bed, to reduce the amount of current that the controller has to handle.


text:
Metal sintering layer-by-layer with DLP
As of current technological advancements, there exists Metal 3D printers that make use of Digital Light Processing (DLP) projector to 3D print metal objects. These printers use a mixture of metal powder and binder. The mixture is placed on the build platform and a laser light beam (or UV light beam, I'm not sure) projection of the layer to be printed is projected on top of the mixture. The light causes the binder to bind the metal powders to each other creating the desired layer. Similar process is repeated for subsequent layers until the object is fully printed. Once fully printed the object is de-binded and sintered in an oven to form the final object.
Now, my question is, like in SLS 3D printing, why cant we directly shoot high-power laser beams with the help of DLP projector onto the powder (without the binder) and cause the metal powder to sinter there itself?

Why using a DLP to position the powder, we already have printers at work (SLM) that use lasers to melt the laid down powder without the need to bind it first. What you suggest seems like an unnecessary extra step. Our latest machine does not require to lay down the powder first, the laser and the powder directly meet at the object, this eliminates another step in the printing process.

SLS uses a high powered laser to smelt the binder of a ceramic or the metal itself. We are talking about at least a 40 W laser which focuses its power on a circle of about 50 µm. How much power are we talking about with that lowest viable laser for plastic SLS?
$\frac{40\ \text{W}}{\pi \ 62.5\times 10^-9\ \text{m}^2}=640\times 10^6 \frac{\text{W}}{\text{m}²}$
A typical SLA/DLP machine like the Sparkmaker runs on 48 W in total. Assuming that's 40 W for their $55\text{ mm}\times98\text{ mm}=0,00539\text{ m}^2$, so the total projector power of the Sparkmaker is
$\frac{40\ \text{W}}{\pi \ 0,00539\ \text{m}^2}=7.421\times 10^3 \frac{\text{W}}{\text{m}²}$
That's about 5 orders of magnitude too little to smelt a layer in the same time. To get a DLP-like projector doing SLS work, you'd need a light source that runs at about a similar power per square meter - wich would just melt the moment it turns on.

i.e. that laser would have to be impractically powerful, and your equipment might very well just vaporize into a ball of plasma the second you turned the machine on.

authors: عبدالمحسن سعفان


text:
Problem with Creality v1.1.4 (Ender 3 Pro) and BLTOUCH v3.0 (removed C7 capacitor)
I followed this tutorial on how to set up BLTOUCH v3.0 with my Ender 3 Pro. (v1.1.4 motherboard)
I even removed C7 capacitor on Z axes. And no luck. My BLTouch probe is working, it turns on with the Ender and testing is fine. But it doesn't stop the printer on Z axis while auto homing.
Firmware is from firmware.th3dstudio.com
Any ideas? Any advice is highly appreciated.
My configuration.h file: https://paste.ofcode.org/Z4kKiGwYXC6yQ698t9uaeY
My configuration_backend.h file: https://paste.ofcode.org/34tuX4mG3Ph57jSnT8YByi3

I'm no personal fan (although many other people swear by it) of all those Marlin derivative firmware solutions that try to encapsulate all the printer configurations. These lag behind the original sources and maintaining them and keeping it to work properly for all printers is quite a challenge. If I were you I would use the original Marlin sources and work from there.

If the probe works, but not on auto homing, it could be that the Z endstop/probe wires are incorrectly wired.
From "The complete BLTouch/3DTouch guide for Creality printers (CR-10/s,Ender 2,Ender 3) for Auto Bed Leveling UPDATED" can be read:

If you connect your bltouch and when auto homing the sensor doesn’t register
  & the z axis keeps dropping pressing into your bed, turn your printer off,
  disconnect the power and invert the black and white connectors in the z limit
  switch header (put black where white was, put white where black was).

This can also be found in this Marlin issue tracker:

The Problem was the polarity of the sensor wires was reversed.

If reversing the polarity does not work, move to the original Marlin firmware.

Thanks, the real problem was bad wires. Not the wiring, but wires. I just put new ones and everything works fine!


text:
Prusa slicer and support material
I usually use Slic3r 1.3 but now I'm trying the new PrusaSlicer 2.2 that offers new features.
I see that PrusaSlicer creates a lot of support material when compared to Slic3r:

this involves two problems:

A lot of material is wasted
The structure is very difficult to separate from the model

This is my configuration panel in Prusa:

Is it just a settings problem?

The danger of the pillar style support structures is that they have a far higher risk of falling over, while the PruseSlicer support structure is more solid. I think that, in the end, wasting a single print because of failed pillar support takes more filament than printing with a little more filament each print.

@0scar: That analysis is less convincing once you factor in that the excessive support probably doubles print time unless you use options that harm quality of the part being printed (eg skipping retraction during support causes underextrusion after moving back to print the part).

@R..GitHubSTOPHELPINGICE Not really, the OP shows an example, the support is completely configurable, it can be way less using the proper settings. But this is very subjective, hence not an answer but a comment. We've had 1 kg PETG print failures with Cura (pillar type) support; would have loved to put in a 100 grams extra then I wouldn't have had to print another kg for the re-print.

I agree with @0scar here. You can waist a little extra material for a higher probability of print success, or run the higher risk of print failure with the other, which would waste a lot of material, for both support and part. Sometimes the waste is worth the rewards.

Do you have print- time estimates for these two slices?  I agree with the others that wasting a few cents' worth of filament is not an issue.  Time and reliability are the key issues.

@CarlWitthoft I don't have estimates for those prints but this was just a too simple test. If you have to print something big I think time and material increasing proportionally. In this test, the object stops with a simple bridge between those two circular columns; Prusa Slicer generates a structure can support 5 Kg over it. I agree with you all, the key is the result, but, in my opinion, I have to be free to choose the amount of support to generate.
In this way I am led to use two tools: one for small parts (Slic3r) and one for large prints.

In my opinion, PrusaSlicer aims for the most robust printing process at the cost of a higher demand for material in the standard configuration.
I totally agree with @0scar that the small pillars have a high tendency of falling over with increasing height of the print.
To handle the waste of material you could use the feature "Paint-On Supports" (since version 2.3) to tell the software where support material has to be used. The feature can be found on the left panel while on "3D-Editor View". This is an extra step to prepare your model, but to speed up your post-processing I think it should be worth it. Prusa improved the modifier by "you get what you click".
If you want to stay in Version 2.2, I think you have to use the generic modifiers, which are a lot more time-consuming to set up.
Paint-on supports @Prusa Knowledge Base

Additionally for those who may not know, (I'm fully aware this post is a few years old) there are improvements that come with PrusaSlicer 2.6 in terms of options for cutting prints along a plane, adding pegs to those cut prints and organic supports, just for those who may not be aware.
Additional details can be found in the article from Tom's Hardware "New Features Added to PrusaSlicer 2.6 Alpha Release".


text:
Which connectors should I use to connect my Power Supply Unit to the Ramps?
I have read that the cable colours depend on multiple factors:

Used voltage
Kind of cable
Type of voltage (DC or AC)

My cable looks like this:

I live in Spain, in Europe. The colour codes of the International Electrotechnical Commission for AC circuits are these ones:

My PSU has these possible connections

So I guess these are the connections:

L (AC). Brown colour. Single Phase line or Three Phase Line (L1)
N (AC). Blue colour. Neutral
GND. Green and yellow colours. Protective earth or ground (PE)
COM, COM ¿?
V, V ¿?
V(ADJ). This is a potentiometer, in order to modify the current voltage. Should I touch this?

But I am not sure about what are the COM and the V ports. I assume they are for the DC connections, which is the positive and which the negative? The PSU does not have any manual and I am little lost
Should I turn the potentiometer to change the voltage to adapt it to the Ramps 1.6 Plus board?

Please correct me if I made some mistake in my question as well

You're quite right :)

L (AC): Brown colour. Single Phase line or Three Phase Line (L1)
N (AC): Blue colour. Neutral
GND: Green and yellow colours. Protective earth or ground (PE)
COM: DC Negative (-) - Also referred to as "Common"
V+: DC Positive (+)
V(ADJ). This is for a potentiometer, in order to modify the output voltage. You won't need this unless your power supply is far off.

The way to go about these things is to connect the AC side and to connect a multimeter to the output terminals (V+ and COM, there are two of them in case you need to wire up more than one connection). I like to lightly tighten down the probes under the terminals, that way you don't have to mess with the connections with the mains terminals exposed.
Now you can plug in the power supply (PSU) and make sure it doesn't start smoking or sparking.
Verify that the PSU is outputting DC 12V (that seems to be the voltage required by your Ramps board according to the picture). After that, you can connect it to the Ramps board (remember to disconnect the PSU before rewiring). If the voltage is anything but around 12 V (+/- 0.5VDC should be safe), you need to verify that the PSU is the correct type for your application.

Thank you for devoting your time to my question. Yes, the maximum voltage of my PSU is 12V. So both V+ connectors are connected together? The COM terminals as well? I mean, if I use the first COM, should I use the first V+ for the positive? Does it matter?

And very importantly, install fork terminal connectors (and never solder the bare ends).

Yes, internally both COM and both V+ are connected, so just use whatever you feel like, I personally usually select the first of both, so that you know which positive and negative leads go to the same load. It doesn't matter in this application, but in large automation installation stuff like that gets quite important, and it's always good to get into good habits.


text:
Which 3D printer controller should I use?
I recently build a 3D printer from scratch and was using an Arduino Mega + RAMPS 1.4 to control it. A few weeks in I installed a heated bed to help my prints stick to the surface. The bed I bought was an Anet bed found on Amazon, I'm told they are prone to causing fires.
About a week after I installed the bed, my the MOSFET on my RAMPS overheated and began to smoke. I could no longer perform without heating up too hot and smoking, so I bought another RAMPS 1.4 to replace it. The same thing happened and I returned it...
After doing some research and finding out the connectors and MOSFETs on the RAMPS 1.4 are typically undersized, I decided to upgrade to avoid the problem and go with a RAMPS 1.6 instead, which was supposed to better handle the current flow. After about a week of using the RAMPS 1.6, the power connection began to smoke and caught fire(Not the MOSFETs like the RAMPS 1.4, the incoming power connector). I attempted to remove the connector and resolder the wires, I couldn't get it to work. At this point I'm looking for advice on which controller to go with. I don't want to buy another RAMPS out of fear of the same thing happening, but I am also wondering if buying a different heated bed would fix the problem. So any recommendations on where to go from here? I've look at a few boards but one thing is some of them can only control 1 Z stepper driver, while my setup has Z.

Controller boards
Please note (this is not to bash) that RAMPS shields are not the top of the line printer controller boards, investing in a more modern printer board platform (preferably not a clone of a known board), e.g. a 32-bit board might be a better solution.
Any board with at least four stepper drivers should be sufficient (you can use the two Z steppers in parallel or in series), some boards even offer two Z stepper output connectors controlled by a single stepper, e.g.:

No worries if the board doesn't have two Z stepper connectors, you can buy dual stepper breakout boards, e.g. a parallel solution:

Alternatively, an extra stepper driver can drive the extra Z stepper; this requires a board with at least 5 stepper drivers then, the Z2 stepper would then be connected to the E1 extruder driver. The firmware needs to be aware of using 2 stepper drivers, so in Marlin (depending on the version) set Z_DUAL_STEPPER_DRIVERS or assign a value to NUM_Z_STEPPER_DRIVERS .
Anet heatbed
The Anet heatbed is notoriously known for fire accidents/burning caused by the underrated connectors (the connector itself is not rated for 10 A!), also the connector should require proper strain relief. The best solution is to solder the heat bed wires directly to the backside of the connector (which is what I did on my old Anet A8 printer, I used multiple pins soldered together, both the outer 2 pins on either side), an example from the web (downside is that they only used a single pin) shows this principle (with solution for cable/soldering stress relief using a tie-wrap):

A final notice for connecting heatbeds is to use proper cables; silicone cables of proper gauge (silicone wires are very flexible, e.g. AWG 14) should be used. Also, never solder the ends and put them under screw connectors on the printer board, instead, use ferrules or proper sized fork terminal connectors.
MOSFET Band Aid
In case the MOSFETs on your boards are underrated, you can use external MOSFET boards to relieve the shield/printer board from the high currents. Note that the bed requires the most current (about 10 A), for the hotend this will not be required, the current draw is much lower, the onboard MOSFETs are rated for those loads.


text:
G29 Bed Level not doing anything on Marlin 2.0
I've just updated my Anet A8 with the blue bed level sensor to Marlin 2.0 .
Both pressing the Level Bed button on the display or using G29 after G28 in the G-code don't do anything.
G28 Homing works fine, but doesn't put the nozzle at the center like it did on Marlin 1.1.x, instead it puts the sensor at the center of the build plate.
G29 worked fine in my previous Marlin 1.1 config.
These are my config files:

Configuration.h
Configuration_adv.h

Do you mean the ROKO SN04-N?

Please read this answer (scroll to the bottom for an example for a back-right mounted sensor), your Configuration_adv.h file is incorrect (more specific, the probe area definition is incorrect). In version 2.x you do not define the bed size (absolute) for the sensor, you only specify the offsets (so relative) from the edge! You should be able to figure out what these values need to be using the example.

From the linked Configuration.h file the probe X, Y, Z probe offset is set by constant array:
#define NOZZLE_TO_PROBE_OFFSET { 75, -35 , 0 }

So, the sensor is mounted at the right-front (X+, Y- according to the Marlin configuration definition) when facing the printer.
This implies that the sensor is limited on the right and at the front.
The probing area used to be defined in Marlin 1.1.x in the Configuration.h file. However, Marlin 2.x requires edge offsets rather than absolute bed size constraints. From the Configuration_adv.h of linked file, the following probing limits are set:
#if PROBE_SELECTED && !IS_KINEMATIC
  #define MIN_PROBE_EDGE_LEFT (75 + MIN_PROBE_EDGE)
  #define MIN_PROBE_EDGE_RIGHT (X_BED_SIZE  - MIN_PROBE_EDGE)
  #define MIN_PROBE_EDGE_FRONT (MIN_PROBE_EDGE)
  #define MIN_PROBE_EDGE_BACK (Y_BED_SIZE -35 - MIN_PROBE_EDGE)
#endif

This is incorrect, this is what you would do in Marlin 1.1.x. Note that this answer describes in detail how to set the bed probing limits. You need to specify the offset from the edge on each side, in schematics the probing area is defined as:

From your printer configuration, the probing limits should be set to:
#if PROBE_SELECTED && !IS_KINEMATIC
  #define MIN_PROBE_EDGE_LEFT (75 + MIN_PROBE_EDGE)
  #define MIN_PROBE_EDGE_RIGHT (MIN_PROBE_EDGE)
  #define MIN_PROBE_EDGE_FRONT (MIN_PROBE_EDGE)
  #define MIN_PROBE_EDGE_BACK (35 + MIN_PROBE_EDGE) ; Note that 35 is absolute(-35)!
#endif


text:
I can set the voltage and current of the TMC2130 driver manually. But, in which cases some of the components could burn up?
I need to know if something will burn up beforehand I plug all the circuits:

Ramps 1.6+
Arduino Mega 2560
PSU 12 V, 15 A
2 TMC2130 V3.0 Stepper motor driver
2 Stepper motors 17hs3401

Driver Potentiometer
The driver has a potentiometer to change the voltage that is giving to the motors. Range of Vref values:

Default: 1 V (±0.2)
MAX: 2.4 V
MIN: 0 V

As one person answered me in another question, I would need 3.2 V to make the motor work well (2. Ω * 1.3 A = 3.2 V). As the driver just can offer 2 A I assume that the speed will be lower and the driver will be warmer because the motor will drain more current.

Marlin Current Configuration
There is a file in the Marlin firmware (Configuration_adv.h) where I can set the current that the driver is going to give to the motors. I do this to calculate the current in the motor XCURRENT = 1300 mA x sqrt(2) = 1838.5 mA and set the value in the file
    #if AXIS_IS_TMC(X)
        #define X_CURRENT       1838.5      // (mA) RMS current. Multiply by 1.414 for peak current. Default 800
        #define X_CURRENT_HOME  X_CURRENT   // (mA) RMS current for sensorless homing
        #define X_MICROSTEPS    16          // 0..256
        #define X_RSENSE        0.11
        #define X_CHAIN_POS     -1          // <=0 : Not chained. 1 : MCU MOSI connected. 2 : Next in chain, ...
    #endif

Possible problems
What I am going to do is to set the drivers potentiometer to the maximum and check what happens. And I will also set the current in the Marlin to 1838.5mA
As the drivers have less voltage to give to the motors, are my drivers going to burn because they will have to give more current for a long period of time? Or will the stepper motors burn because they won't get enough current or voltage?
I also found some other possible problems in this other answer

If the current is too high, you lose the linearity of micro-stepping. If the highest current exceeds the maximum, then the highest current micro-stepping positions will collapse on each other.
If you are within the specs of the motors, there are no motor-related problems caused by higher currents.
But other problems can be caused by increasing the current. The current must be within the capacity of the motor drivers and their heat sink. If the drivers overheat, many will simply shut off, causing the motors to not move when they should, which will appear as misalignment on X, Y, or Y.

This other person also told me

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 overheat if running at a high speed

The TMC2130 drivers can tolerate a motor operating current 1.2 A (peak 2 A). I am setting the maximum to 1838.5 mA (that's Okay) and the motor RMS is 1.3 A (more than 1.2 A). Will these settings overheat the driver?
Question
Will I have any of these problems with the configuration I have set above? Will the TMC2130 overheat?
Update 22 April
My chip is the TMC2130-LA. Then, to calculate the X_CURRENT value:
Imax = 1.2 A            # max current available in the controller
Irms = Imax / 1.41 = 0.851
X_CURRENT = 90% Irms = 0.851 * 0.9 = 0.766 = 766 mA   # 90% for safety

The driver has a potentiometer to change the voltage that is giving to the motors.
[...]
As one person answered me in another question, I would need 3.2 V to make the motor work well (2. Ω * 1.3 A = 3.2 V).

You are misunderstanding that answer and what the potentiometer does. The potentiometer does not control the voltage going to the motors. It makes no sense to compare this voltage to the rated voltage of the motor. The potentiometer controls the current going to the motor, with a potentiometer voltage of 0V corresponding to 0% of the driver's current, and a potentiometer voltage of 2.5V corresponding to 100%. The documentation of your driver is a bit unclear but it looks like the maximum peak current is 1A per phase or 0.7A RMS (per phase).

There is a file in the Marlin firmware (Configuration_adv.h) where I can set the current that the driver is going to give to the motors.

This only works if the driver is set to SPI mode, otherwise the setting is ignored. To enable SPI mode you need to remove the jumper resistor labeled "SPI" mode and make connections to the long pins sticking out the top of the driver. This configuration option overrides the current setting set by the potentiometer.

What I am going to do is to set the drivers potentiometer to the maximum and check what happens. And I will also set the current in the Marlin to 1838.5mA

That's not such a good idea. It would be wiser to set the potentiometer relatively low, and increase it just enough so that the motors do not skip steps.

As the drivers have less voltage to give to the motors, are my drivers going to burn because they will have to give more current for a long period of time?

No, because the drivers do not have "less voltage to give to the motors". They don't work that way. They are constant current drivers.

Or will the stepper motors burn because they won't get enough current or voltage?

No. The only thing that could cause the motors to burn is (far) too much current or voltage. This will never happen because your drivers will burn up before the motors ever would.
Keep in mind that in the question you linked to, one answer is more detailed than you can reasonably understand with your level of electronics knowledge, and the other answer is completely wrong.
Summary

The current setting in configuration_adv.h is irrelevant unless you have enabled SPI (but I doubt that you have)

Do not start out with the potentiometer set to maximum

Everything will be fine. The motor can handle more current than the driver can ever deliver. The driver you have is configured so that it can never exceed its rated current.

Regarding your update
Yes, if you are using SPI current control then the potentiometer is ignored.
The TMC2130 can handle 1.2A RMS per coil, though the datasheet notes that more than 1A RMS per coil requires special attention to heat dissipation (the small breakout PCB probably does not have great thermal properties).
Your calculation is overly conservative because it treats the 1.2A figure as peak current when RMS current is meant. You do not need to divide by $\sqrt{2}$ to convert to RMS because the figure already is RMS.


text:
3D Print something as flexible as a cloth with PLA?
Would it be posible to design something that is as flexible and that can be printed with PLA that would work as a cloth? I did some research and found that there was a company named Electroloom but that didn't make it. I'm not looking for anything fine, just something that would work for wiping

It's not that easy:  plant-based cloths work as wipes because they can absorb moisture quickly.  So you'd need not only a flexible material (of which there are some),  but a material that somehow prints with lots of microvoids,  and has very high longitudinal tensile strength (as thread does).

@CarlWitthoft maybe foaming PLA filament will do the trick, that creates lots of voids.

Can you clarify what kind of "wiping" you want it to do?

@0scar  that's a new one on me!  Can you point me to a vendor of foaming PLA?

@CarlWitthoft The first filament of its kind using an active foaming technology to achieve lightweight, low density PLA parts. At around 230C this material will start foaming, increasing its volume by nearly 3 times. ColorFabb is a Dutch premium filament company; good value for money, and many filament types and various colors. But I doubt the bubbles are open, so I don't think it will absorb water. It is a cool filament for ultra-low weight structures.

It would be helpful to understand what aspects of cloth you need to re-create.  You say "wiping", but are you looking to wipe water-based or oil-based liquids?  Or, are you perhaps looking more for the polishing aspects of wiping?  There are many questions that you could be asking.  Rather than close this question, I am hopeful you will clarify the information you seek.

Maybe you would be better off with TPU or some other type of flexible material...
I have been able to print PLA and have it flex quite a bit, but that was an ~0.2mm single layer print, I guess maybe up to 0.3-0.4mm should still be a little bit flexible, but not much. Also since you want it to wipe things, maybe you should look if TPU even has all the properties required for that as Carl mentioned in the comments.

You can not 3D print that because there is no nozzle or method for producing filaments of the required size. A few microns at least. You might be able to spin molten pla like cotton candy and it might absorb; but I doubt it.
https://phys.org/news/2010-05-cotton-candy-machine-tiny-nanofibers.html

printed PLA will not behave like cloth.
Hard PLA can not behave like cloth, and even a 0.1 mm sheet of PLA will behave like a plastic sheet, not like cloth. In itself, it will always be a hard material.
printed PLA can be combined with fabric
Printing a hard plastic onto a thin mesh of fabric can create a compound material. For example, this has been used to create "scales" that are embedded on the fabric, for example with an octagon setup. These materials have limited bending areas and can, if designed well and made from small scales, almost fall similar to a stiff normal fabric, or have totally different behavior.
Only the printed on fabric will be able to absorb moisture, a hard lip printed onto the material will be able to push liquids and solids. If instead of PLA a TPE was used, the lip would deform to have contact and act as a wiper.
With clever design, this can even be used to imitate fantastical scales.
Printed PLA scales can imitate cloth
NASA worked on a 3D printed scale mail, which offers a somewhat solid surface when under no extra load but shows special movement patterns when exposed to forces. For example, a curtain of these printed scales could, under force, always push itself to the left side and assume a shape that funnels an airstream to the right. These 3D printed scales are at times referred to as "printed chainmail" or "printed fabric", depending on how they fall and how large the individual elements are.
The result of inquiries into these print in place solutions range from designs that use techniques used in classic flexible jewelry band designs and European 4:1 Chainmail patterns that fall exactly like their metal counterparts over designs inspired by the NASA method that almost behave like a leather in a limited movement range to more exotic ones that imitate in one axis the movement of tank threads while being a little stiffer in the other
There is spun PLA cloth...
PLA can be spun into yarn in a similar process to the making of other polymer-based yarns. The resulting thread is 0.01 mm and thinner and then can be weaved using traditional methods. In this thickness, it behaves exactly like cloth, but that is an order of magnitude thinner than the thinnest nozzle available on the commercial market (0.1 mm) and unprintable.


text:
Z Offset Keeps Changing Flashforge Hunter
I am a newbie and I started having printing problems with my Flashforge Hunter.
I found out that with every calibration the building plate Z offset is getting larger by approx 0.1 mm to 0.2 mm, currently it is at 1.15 mm, first calibration it was 0.1 mm than it increased every few prints.
Really hope this is not a hardware problem. I was searching online for hours and couldn't find anything related to Z offset problem in resin printers.
Please help, I think the printing problem is because of this.


text:
Pile up objects and attach them for mass 3D printing
I'm completely new to 3D-printing. Because of Covid-19, my dad got a Dagoma Magis 3D printer and we are printing protective visors for hospital workers here in France.
We have been given a 3D model that we can simply load on the printer and it works pretty much alone. The 3D-printed part is quite small and very flat so we thought about piling six or seven of them up so we can let the printer work during the night. Then in the morning we would simply have to detach each piece from the pile using pliers. I thought about doing this using Blender (I know nothing about 3D but I've heard Blender is a good tool for that). In fact, I started by posting this question to the Blender stackexchange, which redirected me here.
This is the piece (or two pieces, actually) that I want to pile up.

My strategy would be to extrude small cylinders to the shape from different points and copy and paste the model several times. The end result would look like this:

The yellow bits are the cylinders I want to insert to separate the different parts. So when it is printed, I can simply cut them to separate each visor.
To do this, I think the best way to proceed is the following steps:

Load up the model as I did (imported an STL file)
Add some tiny cylinders (or another shape) on the top of it by extruding them
Copy and paste the shape and move it along the Z axis to pile them up
Fuse everything together and merge it as a single item
Export as STL
Put into 3D printer.

Is that a good strategy? How should I proceed?
I looked up everywhere at how to extrude a cylinder, or copy-paste a shape and attach it together, but in vain. I'm too clueless about Blender to figure how to do this. I could only manage to make a circle spawn at the origin of the plot.
I know stackexchange is mostly for professionals and this is a beginner question, but this is a quite peculiar situation. I really want to do it fast, as the quicker we print the visors, the faster the medical staff can have them.
Also, if you recommend using anything else than Blender, I'm up to anything.

Hi, welcome to 3DPrinting.SE! SE is for everybody, not for professionals only, we all were beginners! This is actually a very good first question!

Don't modify the STL to separate the visors with cylinders. The rest of the part is unsupported, so this will give you lots of support structures or, if omitted, a gigant spaghetti print.
Josef Prusa is already printing stacked visors on his print farm overnight.
I would stack the models of a set of visors in my slicer and for each visor added after the first disable "dropping print to the build plate" and position each consecutive visor one layer height (e.g. 0.2 mm) higher than the last layer of the previous, this way you use the previous visor as a raft for the next.

Below, a reference of someone who prints 8 parts stacked (4 high) overnight:

I wanted to be able to print more than just 2 at a time. Specially over the night when everyone is sleeping. I came up with the idea to stack them on top of each other. Instead of 2 you could print 8 during night. If your printer has smaller build plate and you can only print one its also big help for you.
After printing jsut simply peel them away and they will break loose.
Gap between parts is 0.3 mm .


text:
PID autotune fails 'Temp too high' with 12 V heater cartridge but works with 24 V?
So, I have created my own heater block for my 3D printer and mistakenly was using a 12 V, 40 W heater cartridge thinking that was the standard for my Ender 3, when in fact it is supplied with a 24 V, 40 W.
You may have seen my earlier post about when using autotune the temperature would overshoot by a large margin and returned the following error.
PID Autotune failed! Temperature too high

Graph of Overshoot:

I was unable to remove this overshoot even through manual tuning.
Now I have switched from the 12 V cartridge to the 24 V this problem is resolved, and I can now run the autotune. It follows a much more gradual curve when heating up so doesn't trigger the same error.
However, I am unsure why this is the case? Can anyone explain why the 12 V heater cartridge results in too high of a temperature increase?
It seems counterintuitive to me as I would have thought the higher voltage cartridge would heat up faster as opposed to vice versa?

It is all about resistance.
This requires some formulae:
$U = Voltage$
$I = Current$
$R = Resistance$
$P = Power$
$U = I \times R$
$P = U \times R$
$ R = \dfrac{P}{I^2} = \dfrac{U^2}{P} $
The 12 V, 40 W cartridge has a resistance of about 3.6 Ω.
If you use this cartridge at 24 V, this caculates to a power of 160 W!
This means that there is an enormous influx of heat that is hard to control, hence the overshoot.


text:
Why on the Ender 3 does the hot end move too far on the Y axis after resuming print due to filament change?
When printing a model I pause the print at around 80 % complete to insert a new spool of filament since I'm at the end of my last spool of Polymaker PETG. I used Slic3r Prusa edition to slice the model but I didn't put in for the print to change filament. Then when I did my pause to fix the new filament into the gear on the extruder so it continues to print and feed into the hot end. After fixing the new spool into the extruder and resuming the print it starts too far above the actual part not allowing it to actually continuing the print. Is there anything that I have to change in the G-code that will then resolve this or is this just a slicer error or a print error with the G-code that comes stock with the Ender 3. Or do I have to plug the printer into my computer to then fix the error in the G-code?

Hi, welcome to 3DPrinting.SE! The Anet A8 was notoriously known for this issue also, the pause position was outside the bed limits causing the bed to hit a screw and the belt would then skip a few notches. Make sure that is not happening with your printer. Disclaimer, I do not own an Ender 3.

Ender 3 usually doesn't have this issue, but you can easily push the head off position as you load the new filament. DON'T TOUCH THE HEAD when changing filament.


text:
Relative move affected by home offset
I set a home offset on my Ender 3 running Marlin firmware so that it starts printing from the corner of a custom build surface which doesn't cover the entire bed:
M206 X-10 Y-10

Now, when I run this:
G1 X0 Y0 Z1

the head moved to 1 mm above the bottom left most edge of the sticker (good!)
However, I notice when I do relative moves like this:
G91
G1 X-1 Y-1

The head actually moves in the opposite direction than you would expect, because it's subtracting the offset from the relative coordinates, which I didn't expect.
Put another way, the following G-code:
M206 X-10 Y-10
G91
G1 X0 Y0

Moves the head to x=20 y=20 measured against the original coordinate system.
Is this expected? It seems rather undesirable behaviour to me. Bug?

Hi welcome to 3DPrinting.SE!

Yes this is expected, with M206 you set a relative offset!

The values specified are added to the endstop position when the axes are referenced.

reference: G-code wiki M206
So when you issue the command M206 X-10 Y-10 twice (or already have an offset set), the offset is 20, 20 (X, Y) and when instructed to move "nothing" (G1 X0 Y0) the printer moves "nothing" from (thus to!) the newly defined origin at (20, 20). Basically it is relative movement from the set coordinate system, not the position of the carriage. In effect you have changed the reference frame, the printer just responds to that action.


text:
Creality Ender 3 X axis homing issue
I bought an Ender 3 recently. Auto-home is on the right front moving away from the end stop. I did reverse the wiring of the X axis motor, it did not work. I had Marlin 2.x uploaded, it didn't work too.
Marlin 2.x:

Configuration.h
Configuration_adv.h

The print starts off with a boundary line in the middle and goes off the bed on the right corner to print. Y and Z axes are fine. X axis seems to be bumping into the right front, every time while homing. I had tweaked little bit of Marlin, but I'm a beginner and I don't understand it completely.
I'm using Cura, printer settings, max X=235, max Y=235, max Z=250, origin at the center: unchecked.
This might help...
// The size of the print bed
#define X_BED_SIZE 235
#define Y_BED_SIZE 235

#define X_MIN_POS 0
#define Y_MIN_POS 0
#define Z_MIN_POS 0
#define X_MAX_POS X_BED_SIZE
#define Y_MAX_POS Y_BED_SIZE
#define Z_MAX_POS 250

#define MANUAL_X_HOME_POS 0
#define MANUAL_Y_HOME_POS 0
#define MANUAL_Z_HOME_POS 0

(left this after so many trails)
In Pronterface the mid point X117.5 is at the middle right corner.
I'm thinking the printer is behaving like the origin(0,0) is on the right front, for X at least and it has nothing to do with the slicer.
It's about centering the prints, but it doesn't print on the bed mostly.

Start G-code:
; 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
G1 X0.4 Y20 Z0.3 F1500.0 E30 ; Draw the second line
G92 E0 ; Reset Extruder
G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed
G1 X5 Y20 Z0.3 F5000.0 ; Move over to prevent blob squish

End G-code:
G91 ;Relative positioning
G1 E-2 F2700 ;Retract a bit
G1 E-2 Z0.2 F2400 ;Retract and raise Z
G1 X5 Y5 F3000 ;Wipe out
G1 Z10 ;Raise Z more
G90 ;Absolute positionning
G1 X0 Y{machine_depth} ;Present print
M106 S0 ;Turn-off fan
M104 S0 ;Turn-off hotend
M140 S0 ;Turn-off bed
M84 X Y E ;Disable all steppers but Z

The issues you are facing can be caused typically by a defective X-axis endstop, an inverted logic of the X-axis endstop or a defective printer controller board.
When the X-axis endstop is reporting being triggered, it will not move. After "homing" it will only go to the right of the "home position".
There a couple of things to troubleshoot the X-axis endstop working:

Command an M119 command over a printer console or connect your printer over USB to a printer software application like PronterFace, OctoPrint, Repetier-Host, etc. and look at the reported endstop triggers; these should be triggered when the endstops are pressed. Issue the M119 when you press the X endstop manually, if it reports "open" for X you need to invert the logic. If still triggered, the endstop is broken.
Swap the X-endstop for a any other endstop (Y or Z); then you can also check if the printer board is broken!

If it is the case to invert the polarity of the endstop, in the Marlin firmware Configuration.h, look up:
// Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup).
#define X_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.

Change the boolean value of the endstop you'd like to invert.

You are right, the limit switch top is missing, can you tell me the revert instructions and then I will check for the board. I will and keep you posted, since it is very irritating to disassemble, i will take some time to update. Thank you, once again.

Oscar, I have a question, top one of the switch(one that makes 'click' sound) is missing, nothing of an electric component, I guess. Still x-axis should end up on it, right?

The click is the sound the switch makes internally, maybe you could add an image of the switch to the question? I do not fully understand what you mean by the limit switch top is missing. Is the metal lever missing? See this question.

Yes, the metal lever(phew!) is missing. Does the machine know that, even before moving along the x-axis>

The lever presses the small micro-switch, if it is missing, the switch will not be pressed (as it relies on the lever), but that is not an issue as your printer does not home on X the switch is broken and should be replaced. Just buy a new one, literally a few cents at th electrical electronics components store or any online alternative!

Yes, would replacing be enough or do I have to invert the endstop polarity too?

Why I'm saying this, because, it's COVID-19 lock down in India till 14th of this month and it is said that it will extend till end of may or june, except for groceries and essentials, there will be no other online or local store for 'limit switch'. And my doubt is if the hardware component is missing does the motherboard and code know that beforehand? And can I use the end switch that is in the DVD player:-)

it's a silly question maybe.

I realize this is an old post, but in the event someone is having a similar problem and this post turns up in a search....
All three axis-stop switches are normally closed, and go open when the axis carriage hits the little lever.  What this switch is doing is providing an easy low-resistance path to ground for the 3.3 (or 5) volt control card rail.  You have the rail feeding this circuit through a 10K resistor (or some other relatively high value resistor), then the path forks; one fork to the limit switch, the other through a 100 ohm resistor to the microprocessor pin that handles the stop input.  As long as that limit switch is closed and the circuit is good, the 3.3 volts goes through it to ground and the microprocessor never sees the 3.3 volts, the pin is "LOW."  Once that switch is opened, the easy path to ground is removed, and the 3.3 volts goes to the microprocessor, and the pin goes "HIGH."  If that switch or harness wiring has failed in a manner that opens that branch of the circuit, the card thinks the stop is already tripped, and won't allow motion towards the switch.
You can verify this easily enough by putting a meter on the two contacts in the Z-stop plug where it plugs into the control card (remove it from the card first so you aren't reading the card too.)  Using the continuity function (buzzer or just reading ohms), you should get straight continuity with the switch at rest, and it should go open (infinite ohms) when you push the lever.
This checks both the switch and the harness wiring. If you don't see that state-change from continuity to open when you push the lever, go up to the switch itself and pull the wires off it, and read the switch pins directly with the meter.  Same deal, should read continuity when in the at rest state, and go open when you push the lever.  If it does, then the harness wiring is bad.  If not, the switch is junk or failing, soon to be junk.
A LOT of people have a LOT of trouble adding a BLTouch to their machines, with many reporting that the gantry won't go down no matter what they do short of turning the Z-screw(s) by hand.  This is a direct result of removing the Z-stop switch wiring and/or switch.  That easy route to ground was removed when the switch was disconnected/removed, and even worse, now the microprocessor has conflicting inputs as to the status of the Z axis, one input from the BLTouch telling it the Z-axis is untripped, and the missing switch is telling it that it's already tripped... therefore, no downward motion, only up.
To fix this you have to edit the firmware (configuration.h) in the section covering the state of the stop switches.  They are all defaulted to "HIGH," meaning that if the microprocessor sees that voltage, it's tripped.  Remember, anything that opens that circuit makes the associated pin to high (including disconnecting the Z-stop wiring from the control board, OR removing the switch and mounting bracket completely.)  Doesn't seem to matter if you use the five-pin dedicated Z-probe socket for all five wires or put the black and white wires in the Z-stop socket and the other three in the Z-probe socket.  You have to change the "tripped state" of the Z-axis in firmware from "HIGH" to "LOW," then build the new firmware and flash the control card with it.  I beat my head against that BLTouch for nearly four months before I stumbled across this little factoid that nobody else was talking about (not anywhere I was looking, anyway, which was pretty much everywhere.)
Schematics are a HUGE help (for some things) if you can read them!

Sorry, I might be reading the answer complete wrong, but to me this reads as this is an AI generated answer. Please comment if (a) if it is AI generated, and (b) why did you mention the BLTouch, when the OP doesn't have one (no G29), not configured if you look into the configuration.h linked in the question. This doesn't really answer the question.

authors: علي سالم السويدي


text:
FlashPrint visual glitch on Linux (Debian testing)
I have a problem with all versions of FlashPrint on Linux (Linux Debian 5.4.0-4-amd64 #1 SMP Debian 5.4.19-1 (2020-02-13) x86_64 GNU/Linux).
I tried to install versions from 3.28 to the latest 4.2, and it's always the same problem, when I try to preview the print, I see a purple glitch.
I think it's more a dependency problem, but if someone car help me figuring this out, it will be great.

I have no error when I launch in a console, and here is the dependency :
ldd FlashPrint
linux-vdso.so.1 (0x00007fff1d3ea000)
libGLU.so.1 => /usr/lib/x86_64-linux-gnu/libGLU.so.1 (0x00007f57cb19f000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f57cb194000)
libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007f57cb169000)
libQt5OpenGL.so.5 => /usr/lib/x86_64-linux-gnu/libQt5OpenGL.so.5 (0x00007f57cb10f000)
libQt5Widgets.so.5 => /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 (0x00007f57caa8a000)
libQt5Gui.so.5 => /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5 (0x00007f57ca4ae000)
libQt5Network.so.5 => /usr/lib/x86_64-linux-gnu/libQt5Network.so.5 (0x00007f57ca2f1000)
libQt5Xml.so.5 => /usr/lib/x86_64-linux-gnu/libQt5Xml.so.5 (0x00007f57ca2b0000)
libQt5Core.so.5 => /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 (0x00007f57c9d76000)
libGL.so.1 => /usr/lib/x86_64-linux-gnu/libGL.so.1 (0x00007f57c9cef000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f57c9cce000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f57c9b89000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f57c9b6d000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f57c99aa000)
/lib64/ld-linux-x86-64.so.2 (0x00007f57cb25c000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f57c97dd000)
libpng16.so.16 => /usr/lib/x86_64-linux-gnu/libpng16.so.16 (0x00007f57c97a4000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f57c9787000)
libharfbuzz.so.0 => /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0 (0x00007f57c9682000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f57c967b000)
libicui18n.so.63 => /usr/lib/x86_64-linux-gnu/libicui18n.so.63 (0x00007f57c93a4000)
libicuuc.so.63 => /usr/lib/x86_64-linux-gnu/libicuuc.so.63 (0x00007f57c91d3000)
libpcre2-16.so.0 => /usr/lib/x86_64-linux-gnu/libpcre2-16.so.0 (0x00007f57c9150000)
libdouble-conversion.so.3 => /usr/lib/x86_64-linux-gnu/libdouble-conversion.so.3 (0x00007f57c9139000)
libglib-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f57c9010000)
libGLdispatch.so.0 => /usr/lib/x86_64-linux-gnu/libGLdispatch.so.0 (0x00007f57c8f58000)
libGLX.so.0 => /usr/lib/x86_64-linux-gnu/libGLX.so.0 (0x00007f57c8f24000)
libfreetype.so.6 => /usr/lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007f57c8e65000)
libgraphite2.so.3 => /usr/lib/x86_64-linux-gnu/libgraphite2.so.3 (0x00007f57c8e39000)
libicudata.so.63 => /usr/lib/x86_64-linux-gnu/libicudata.so.63 (0x00007f57c7448000)
libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f57c73d2000)
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f57c7290000)
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f57c7266000)
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f57c7062000)
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f57c6e5c000)
libbsd.so.0 => /usr/lib/x86_64-linux-gnu/libbsd.so.0 (0x00007f57c6e40000)

Bug reports are not something we deal with here sadly - please report the bug to the development board of Flashprint.

Hi, sorry about that, I just can't fill out a bug report, the app is freezing and nothing happen when I try to click on "feedback".
(Yeah, I am a nightmare customer to deal with xD)

In addition to the open-source niceties of OpenGL, you need to will often need to install and update the drivers for your GPU.  If you do not wish to or cannot utilize your GPU (it'll cost you in performance), look for options to turn off hardware acceleration or use a purely "software renderer" typesetting.
I don't know if FlashPrint has such settings, but I do know that OpenGL can do some screwy stuff if you lack correct Nvidia drivers (and have an Nvidia GPU).

First : Thank you for helping me. The thing is : I have a proper install of nvidia drivers, I play a lot of games, but yeah forcing a software rendering is a very good idea (I have a powerfull CPU).


text:
Less filament from the half to the end
since some prints my printer (Geeetech i3) prints less and less filament over time:

Notice, that the beginning is printed well:

My settings for this print (Slic3r):
; avoid_crossing_perimeters = 0
; bed_shape = 0x0,200x0,200x200,0x200
; bed_temperature = 60
; before_layer_gcode =
; between_objects_gcode =
; bridge_acceleration = 0
; bridge_fan_speed = 100
; brim_connections_width = 0
; brim_width = 0
; complete_objects = 0
; cooling = 1
; default_acceleration = 0
; disable_fan_first_layers = 3
; duplicate_distance = 6
; end_filament_gcode = "; Filament-specific end gcode \n;END gcode for filament\n"
; end_gcode = M104 S0 ; turn off temperature\nG28 X0  ; home X axis\nM84     ; disable motors\n
; extruder_clearance_height = 20
; extruder_clearance_radius = 20
; extruder_offset = 0x0
; extrusion_axis = E
; extrusion_multiplier = 1
; fan_always_on = 0
; fan_below_layer_time = 60
; filament_colour = #FFFFFF
; filament_cost = 19.99
; filament_density = 0.945
; filament_diameter = 1.75
; filament_max_volumetric_speed = 0
; filament_notes = ""
; first_layer_acceleration = 0
; first_layer_bed_temperature = 60
; first_layer_extrusion_width = 0.4
; first_layer_speed = 30
; first_layer_temperature = 220
; gcode_arcs = 0
; gcode_comments = 0
; gcode_flavor = reprap
; has_heatbed = 1
; infill_acceleration = 0
; infill_first = 0
; interior_brim_width = 0
; layer_gcode =
; max_fan_speed = 100
; max_layer_height = 0.4
; max_print_speed = 80
; max_volumetric_speed = 0
; min_fan_speed = 35
; min_layer_height = 0.15
; min_print_speed = 10
; min_skirt_length = 0
; notes =
; nozzle_diameter = 0.4
; only_retract_when_crossing_perimeters = 1
; ooze_prevention = 0
; output_filename_format = [input_filename_base].gcode
; perimeter_acceleration = 0
; post_process =
; pressure_advance = 0
; printer_notes =
; resolution = 0
; retract_before_travel = 2
; retract_layer_change = 0
; retract_length = 2
; retract_length_toolchange = 10
; retract_lift = 0
; retract_lift_above = 0
; retract_lift_below = 0
; retract_restart_extra = 0
; retract_restart_extra_toolchange = 0
; retract_speed = 40
; skirt_distance = 5
; skirt_height = 1
; skirts = 2
; slowdown_below_layer_time = 5
; spiral_vase = 0
; standby_temperature_delta = -5
; start_filament_gcode = "; Filament gcode\n"
; start_gcode = G28 ; home all axes\nG1 Z5 F5000 ; lift nozzle\n
; temperature = 220
; threads = 4
; toolchange_gcode =
; travel_speed = 120
; use_firmware_retraction = 0
; use_relative_e_distances = 0
; use_set_and_wait_bed = 0
; use_set_and_wait_extruder = 0
; use_volumetric_e = 0
; vibration_limit = 0
; wipe = 0
; z_offset = 0
; z_steps_per_mm = 0
; adaptive_slicing = 0
; adaptive_slicing_quality = 75%
; dont_support_bridges = 0
; extrusion_width = 0.4
; first_layer_height = 0.2
; infill_only_where_needed = 0
; interface_shells = 0
; layer_height = 0.15
; match_horizontal_surfaces = 0
; raft_layers = 0
; regions_overlap = 0
; seam_position = aligned
; sequential_print_priority = 0
; support_material = 0
; support_material_angle = 0
; support_material_buildplate_only = 0
; support_material_contact_distance = 0.2
; support_material_enforce_layers = 0
; support_material_extruder = 1
; support_material_extrusion_width = 0.4
; support_material_interface_extruder = 1
; support_material_interface_extrusion_width = 0.4
; support_material_interface_layers = 3
; support_material_interface_spacing = 0
; support_material_interface_speed = 100%
; support_material_max_layers = 0
; support_material_pattern = pillars
; support_material_spacing = 2.5
; support_material_speed = 60
; support_material_threshold = 60%
; xy_size_compensation = 0
; bottom_infill_pattern = rectilinear
; bottom_solid_layers = 3
; bridge_flow_ratio = 1
; bridge_speed = 60
; external_perimeter_extrusion_width = 0.6
; external_perimeter_speed = 50%
; external_perimeters_first = 0
; extra_perimeters = 1
; fill_angle = 45
; fill_density = 25%
; fill_gaps = 1
; fill_pattern = honeycomb
; gap_fill_speed = 20
; infill_every_layers = 1
; infill_extruder = 1
; infill_extrusion_width = 0.4
; infill_overlap = 55%
; infill_speed = 80
; overhangs = 1
; perimeter_extruder = 1
; perimeter_extrusion_width = 0.4
; perimeter_speed = 60
; perimeters = 1
; small_perimeter_speed = 15
; solid_infill_below_area = 5
; solid_infill_every_layers = 0
; solid_infill_extruder = 1
; solid_infill_extrusion_width = 0.4
; solid_infill_speed = 30
; thin_walls = 1
; top_infill_extrusion_width = 0.4
; top_infill_pattern = rectilinear
; top_solid_infill_speed = 15
; top_solid_layers = 3

I've tried other filaments (PLA) and higher temperatures (190-240). I also cleaned the nozzle.
What is this problem called and how to fix it?

Hi, welcome to 3DPrinting.SE!

Your filament diameter in the slicer is okay, so big chance this is caused by something different:

heat creep, or
a mechanical issue of the extruder; e.g. grub screw is loose, too less tension on the extruder roller, etc. or
lots of friction on the spool can also cause this, or
your nozzle is partly clogged and requires a thorough cleaning of the nozzle assembly.

The search term you're looking for is "under extrusion".

I checked the plastic spool and it is not much filament left. Maybe this is the reason? I tried a not unpacked role with new plastic: it works better. I there a way to "clean" filament? Maybe it is to dusty or to old?

@Jonas For 2.85 mm filament this can be an issue, for 1.75 mm that is usually not a problem. But the smaller the diameter of unrolling the higher the extruder needs to pull to turn the spool around. Could be too much friction. I've printed kilometers of filament, but never had problems with dust. Thingiverse.com is full of cleaners but I'm skeptical to those things. Cleaning the extruder once in a while might not be a bad idea, I do that regularly.

It could be that the curl of the filament close to the spindle is causing friction through the delivery tubing - especially if a new spool does not have this problem, and that's all that you changed.


text:
Display/log tool temperature to higher resolution?
The default displayed and logged resolution of the tool temperature is to 1 decimal place. However, I noticed during autotuning the temperature is recorded to 2 decimal places.
Is it possible to display/log the temperature to 2 decimal places at all times? And if so, how?
I'm using an Ender 3 with Marlin firmware controlled through Octoprint.

Actually the current temperature isn't accurate enough for 1 decimal, could you explain why you want more "precision".

To add to 0scar's comment:  neither the bed nor the extruder temperature can be held steady to better than  a couple Kelvins,  so other than  "personal enjoyment," reporting to more digits won't help print quality

@0scar I am trying to analyse the thermal stability of two different heater blocks for academic purposes and the temperature holds completely steady to 1dp so no fluctuation can be seen. Whereas to 2dp I might be able to see some variation.

Ah, for comparative studies, using exactly the same thermistor in a controlled temperature environment you could do that, but still, if it is the same for 1 decimal, who would be interested in the second decimal. Remembers me of a report at my company of a colleague who spent a lot of money writing a new report on the noise (dBa) contours including an extra decimal for more accuracy... I would say that it doesn't give you a big reward. But, it is not my research! ;-) (In my field, some temperatures are so high and gas flow is so fast, it cannot be measured reliably anyways...)


text:
How is heat creep characterized?
I have a Delta printer with Bowden extruder and all-metal hotend. When I start printing, the hotend gets often jammed. It seems to be independent of the print I am currently doing. Retraction does not affect it either (it happened even with 0 mm retraction).
However, despite occurring mostly at the start of the print, it also occasionally happens mid-print.
I can resolve the issue by pulling the filament out and after few seconds putting it back in only for it to happen a couple lines afterwards.
At this point it seems to me that heat creep is most likely, in spite of having a 40x40 mm fan blowing across the fins of the heatsink.
Is this heat creep? If not, what could be the cause?

Constant jamming sounds like heat creep. It could be that:

The fan might not be powerful enough. Get a better fan
You're printing too slowly. Try increasing the print speed.
The temp might be too hot on the hot end. Lower printing temp.
The heater might be too close to the radiator. Adjust the hot end so that there is a max amount of space between them.
The firmware could be letting the hot end get too hot. With the cooling fan on, do a PID tune.
The filament might be getting stuck in the throat. Try lube, especially if you are using an all metal hot end.
Heat from the bed might be affecting the cooling fan's ability to cool the hot end. Try lowing the heated bed's temp.

I'm not convinced that you should lube filament, but other than that the answer sums it up quite nicely! Don't forget to vote the question! ;-)

Just a quick update. I have tested all the points above and still nothing. So I would like to add one point: 8. Check whether the fans are spinning especially when you are not looking. If not, check the cables. That fixed it for me.

authors: Бенландик Усамо


text:
How can I add an offset to the first layer to increase clearance?
My printer is calibrated for a certain clearance from the heated bed, which is chosen based on PLA.
I would like to try to increase it for the first layer for PETG, so that adhesion is reduced. The printer has M5 screws with 4000 steps/mm, so the resolution clearly allows that.
I don't want to modify the printer, I would like a G-Code or another option that I can apply in Prusa slicer in association with the specific filament when desired. I don't want to change the flow rate of the first layer, only the "zero" distance.
How can I do that?

In Cura it is easy, there is a Z offset option after you install a plug-in. To be honest, I print mostly PETG, but PLA with the same printer without making any offset changes.

Placeholders
I don't know if you are familiar with the concept of placeholders? PrusSlicer is a derivative of Slic3r which uses this concept to insert placeholders (sort of constants, with the possibility to do arithmetic) into your G-code (e.g. start or end codes) which are evaluated just before the slicer generates the final G-code upon slicing.
Unfortunately, although there is a constant for the filament type (filament_type), you cannot use a conditional expression as this does not work on string comparison (which should work with regular expressions...), but with some imagination you can fabricate a way to get past this problem.
E.g.
{if printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/};Printer is Prusa{endif}
M117 [filament_type]

evaluates fine, but
{if filament_type=~/.*PLA.*/};Filament type is PLA{endif}
does not evaluate fine...

Solving this using placeholders, the printing temperatures for PLA and PETG are different, so in a conditional statement of the first_layer_temperature you could add an additional offset to the code at the end of the start G-code.
Start G-code
A place to do this is the filament dependent start G-code section:

You can always edit this start G-code to include a manually set offset by moving the printer to a certainly height:
G1 Z0.15
and then redefining the zero level
G92 Z0
Printer Z-offset
Note that a z_offset constant exists, so it is configurable in the graphical interface, if so, than I assume this fixes your problem instantly as the offset is directly applied in the final G-code. The z-offset option is part of the "printer settings" interface. This extra offset is added to the initial layer height movement.

If your environment supports it, you can also use a G54 to add a constant offset to any positioning. So, you could use:
G53 ; clear offsets
G54 Z0.15 ; add 0.15mm to every Z position

Just remember to clear the offsets at the end of your gcode:
G53 ; clear offsets


text:
Unable to compile Marlin for Anet A8
Printer: Prusa i3 clone / Anet A8
Arduino IDE: Ver 1.8.12
Firmware: Marlin-2.0.2
anet-board-master: 1.5.6 (from hardware/anet/avr/platform.txt 2018-03-02)
Configurations-relese: 2.0.5 (Configuration.h, -adv.h)
OS: Windows 10
Board selection: Anet V1.0

I successfully upgraded the stock firmware to a version with bootloader, calibrated and had it running. I started to add features one at a time, recompile and upload. I managed to break it while trying to improve the LCD button debounce which I increased to 25 ms:
#if HAS_ADC_BUTTONS
  #define ADC_BUTTON_DEBOUNCE_DELAY 16  // (ms) Increase if buttons bounce or repeat too fast
#endif

The compile worked, transferred, showed the splash screen and went blank. This repeated on power-cycle. I reversed the change but was unable to restore operation.
I have tried reinstalling Arduino IDE, copying the folders in again and compiling with the default configurations. I'm getting lots of errors and the compiler exits with:
C:\Users\username\AppData\Local\Temp\arduino_build_938465\sketch\src\MarlinCore.cpp:470:11: note: in expansion of macro 'disable_Z'
       disable_Z();
       ^~~~~~~~~
exit status 1
Error compiling for board Anet V1.0.

Can anyone give me some guidance on how to get going again?

Welcome to 3dPrinting.SE!

My Anet A8 came with a bootloader, I used to plug in a USB cable and sent the compiled code over Arduino IDE. Have they changed controller boards? Strange the compiling now does not work, did you try to get an older fresh version, I would recommend using Marlin 1.1.9.

I bought a USBasp to do the initial reflash. I did try going back to an old stable version and older Arduino versions. Between Marlin, Arduino, Anet, etc., I couldn't find a combination that worked. I can't find an article or blog that gives version-specific-guaranteed-to-work instructions.

I'm almost back in business.

I reinstalled the bootloader.
I switched from Arduino IDE to Visual Studio Code to compile using Crosslink's Anet A8 (Plus) Marlin 2.0 Installation Upgrade YouTube tutorial.

1. Bootloader
I'm using a Chinese USBasp and there are some confusing tutorials on the web which require upgrading the USBasp firmware using another USBasp or Arduino. I avoided this as follows:

I used the Arduino IDE to open the Example | Blink.ino.
Tools | Board: "Anet V1.0 (Optiboot)". (Opti in optiboot means "optimised" so the bootloader will take up less space allowing you to use more options in your Marlin configuration.h.)
Tools | Programmer: "USBasp".
Tools | Burn Booloader. (This will generate the hex file to be transferred to the Anet board. Save it somewhere you will find it.)

Download and install AVRDUDESS if you haven't got it. I used Ver. 2.11. Connect the USBasp to the Anet board and your computer.

Start AVRDUDESS.
Port: usb.
Baud rate: 250000.
Hit the Detect button and it should identify your Anet board.
Hit the Flash [...] button and select the Blink.ino.with_bootloader.sanguino.hex file.
Hit the Program button. It should all work.

You now have an Anet board with the OptiBootLoader installed.
Now follow Crosslink's video tutorial above using the normal USB connection.


text:
Creality v1.1.5 board replacement UP1 Chip
While I was having fun with my ender I burn out UP1 Chip.
Does anyone know which chip is that (I can't see because of burnt) and where can I order it?
Image: Damaged chip

It's an MP1584 chip.
Guys on Reddit helped me out.
link


text:
Ender 5 Pro print quality issue
I got my 3D printer from Creality 1 day ago. My dog off the SD card came perfectly, Benchy was also printed almost flawlessly. I used standard Benchy settings on all my prints.
Now I tried making a mask and it failed mid-print. When I saw it failing I stopped the print.
What do you guys think is the cause of this?
I printed with the following settings:

I use PLA 50 °C bed and 200 °C hot end
Resolution: 0.20 mm
Infill: 20 %
3 walls with a line width of 0.4 mm each
50 mm/s first time i printed it and 40 mm/s second time.
Combing OFF
Retraction enabled
Retraction distance:6 mm
25 mm/s all retraction speeds
retraction extra prime amount 0
retraction minimum travel 1.5
maximum retraction count 100

I printed the mask again. this time I changed Z Seam alignment in Cura from user specified to random. It improved it a bit but it was not a successful print.

What about trying to print another benchy? That way we can see if it's an issue with the printer.

i will do it tomorrow. Anyway, this mask was printed right after the benchy. The only problem on the benchy is like a line on the left side and some ghosting. I'll post a picture soon.

What speed? Looks like printing too fast for the hotend to keep up.

Is the filament entangled at some point?

no. filament seems alright. I am using the filament that came in the box with the printer.

Did you try to reduce the 6 mm of retraction down to 3 mm?

@Wolfram: 3 mm retraction is not sufficient for a bowden, and there's no good reason the standard appropriate amount of retraction for this machine should cause the problem the OP is seeing.

Not sure if OP is still around, but if so: do you perhaps have coasting enabled? It's a Cura antifeature that could lead to this.

I was told to not even bother using the white filament which came with the Ender 5 as it was very low quality. I used an orange filament from Hatchbox and, once I have learned to adjust my settings (I found it works better at 210-215 °C), it seems to be great.

Yeah, the white filament that came with my Ender 3 pro was of questionable quality, though I was eventually able to use it after some experimentation. I've had much easier success with every other filament since. It's weird that they wouldn't just include a mini roll of their quality PLA with their printers, it would be a great help to people who are new to printing

Very true. New filament 206 °C, level bed thicker paper, infill: 100 % and watch if filament is fed properly.


text:
Prusa MK3S Nylon&ABS print failures
I'm using Prusa i3 MK3S and every time I want to create a durable, impact resistant part, I use ABS/Nylon. The problem is, however, that when I print something small (of less than 1 cm width for ABS, less than 2.5 cm for Nylon), the print deforms, shrinks, loses shape as shown on the image (the top). Also, the quality is far below my expectations (I am using a kit, but still I get better print quality on my Ender 3).

My settings:

Nozzle 250 °C
Bed 115 °C
Fan turned off and 50 % for bridges
Layer Height 0.15 mm-0.3 mm

The settings are the same for Nylon and ABS. I am using a textured sheet.
I know that enabling cooling/decreasing the temperature would partially fix this problem, but that would drastically decrease the strength of my parts. I am not using normal ABS, the name of my filament is ABS-702, designed for printers without an enclosure.

50 % cooling sound a lot, better turn it off. You might run into the minimal layer time and get more cooling from the fan than you bargain for. Try printing 2 prints of the same product on the plate spaced far apart.

@0scar Printing 2 identical parts simultaneously is something I've never thought of. I know I can change the mininal layer time, but that would drastically increase printing time.


text:
Why laser is not used to melt/soften material in polyjet?
Polyjet uses UV light to cure UV curable plastic material.
I was wondering as to why laser light can't be used to soften/melt just any plastic material instead of using UV light to cure only UV curable plastic materials?

the materials in question need a specific wavelength and only a specific power. That's all.

The question in the title references a specific printer technology, while the question in the body of the post is more generic and is the one being answered here.
There are 3D printers which use lasers to cure liquid resin in a manner similar to MSLA 3D printers. The vat of resin sits atop a transparent panel, under which a laser assembly resides. The computer directs the laser over the surface of the panel in a manner associated with each layer of the print. Once the layer is completed, the bed is lifted, peeling the print from the base of the vat and then lowered again.
There are some printers which apply the laser to the surface of the liquid but the results are the same. The resin is photosensitive and cures when the laser is applied.
Additionally, there are SLS 3D printers. Selective Laser Sintering uses a laser applied to the surface of a nylon powder (one example) which sinters the nylon causing it to bond to adjacent particles. When a layer is completed, the bed of powder is lowered and another layer of powder is applied. The laser again "draws" the layer in the powder and the process continues.
This method requires compensation for shrinking, as the nylon powder changes dimensions as it is melted. The bed is also pre-heated prior to printing in order to reduce the amount of energy required by the laser to sinter the design.


text:
Is there any reason not to clean nozzles with fire?
Specifically using stainless steel nozzles, but I guess it's worth knowing about brass too. Is there any reason to be concerned about dimensional accuracy of the nozzle or anything like that as a result of repeated heating with a butane torch?

The butane costs more than a brass nozzle?

@R..GitHubSTOPHELPINGICE well i already have butane, and can get more from any gas station or hardware store. new nozzles are slightly harder to come by in a pinch

Yeah, I was kinda kidding and that's why it's a comment rather than an answer. But the point is that trying to clean brass nozzles really isn't a good use of effort/resources. They're a consumable you can buy cheap in bulk, so if you use them, just stock up.

If you carbonize the filament or other particles that are clogging the nozzle, then you will never get them clean. In my experience, it's not worth cleaning the nozzle with anything other than cleaning filament. If that doesn't work then change the nozzle. Heating the metal nozzle with a torch will change the temper of the material. I used to try cleaning with a soldering iron; which was to no avail.
Purchase a dozen brass nozzles and save your self the headache. Either that or a good quality set of stainless steel ones. They are easier to clean with the cleaning filament and aren't ablated by the filament as quickly, allowing for better dimensional accuracy over multiple prints.
https://www.amazon.com/eSUN-CLEANING-Filament-Printers-Cleaning/dp/B00MVIYNFW/

If you can get the torch hot enough and you carbonise/burn the filament properly, it may work. You still need to do a cold pull to remove as many residues as you can, but if you heated it enough, the residuals maybe won't stick too much to the nozzle.
You already have the butane, try and tell us.