What is a good book to read about 3D printer settings? I've google searched many forums, blogs, and articles about 3D printer settings. There is a lot of guess work. Most of the materials are of amateur technical quality lacking the keen and systematic insight of an expert. Usually books are high in quality and written by experts.

I have built a 3D printer and would like to maximize my print quality. Are there any good books that have an in-dept analysis of printer settings?

There may be books out there, but purchasing a book isn't in your best interest. The reason so much of the information seems to be from amateurs is because every 3d printer is different.

To find the correct settings for your printer you need to calibrate it based on the material, slicer software, hardware, and firmware. Your best option to find a good starting point is to check the manufacturer's website and look for a forum.

Even using the same printer and material as someone else has the potential to yield different results.


I can't figure out how to name this problem or solve it (Ender 3 Pro with Bigtreetech Board and Touchscreen, BlTouch)
Hello everybody,
I want to print something for my family but the hotend gets clogged every time in the same part of the print. I tried:

Different Nozzles
Different Filaments
I cleaned every Part
The E-Steps are set right
The retraction Setting didn't make a difference
The Extruder Position is perfect
I tried different speeds
Everything else you find on Google with a clogged hot end.

The most odd thing about this is that the problem occurs at the same place every time.
On Flat surfaces are some anomalies, that wasn't there when I had the normal clogged nozzle problems (from: retraction settings, dirty Printer, e-steps false). I think it has something to do with the anomalies.
Another thing I don't get behind are missing layers after the layer change,
even when I don't use retraction at all.
In The Picture from the side you see the Support with the Layer change problem.
After around about Layer 40  there is one Layer missing and the next Layers are not connected anymore.
From the top you see the Surface anomaly I don't know how to describe.
It would be helpful to know what I did wrong. I am sure I did Everything against a clogged Nozzel but I can be Wrong so tips in this direction are Helpful too.
I am quite new to 3D Printing(2 Months) I had the usual clogged Nozzel Problem Solved and It Worked Perfectly. I Tried to Fix It with the same Solutions and Nothing Helped, so I think it is a different problem.
Sry for my bad English I am from Germany.

I have an Ender 3 Pro with Bigtreetech Board, Touchscreen and BlTouch which I use together with [insert slicer here]. I print in [PLA/ABS/PETG/Whatever Material] at [Extruder temperature] °C. The print bed is set to [Bed Temperature] °C. I use a print cooling fan at [whatever] %. The layer height I set to 0.[x] mm, the line width [line width/extrusion width] from the 0.[x] mm nozzle. The Printing Speed is set to [x] mm/s for walls and [x] mm/s for infill. My retraction is [off / [X] mm at [x] mm/s].

I'm an Ender 3 Pro user and I've been through almost every problem this machine has.

If you are on original hotend and Bowden style extruder, then first try the hot end PTFE fix

What the picture may show is a temperature too low, especially on these bad layers. Raise the temperature like you have tried (200 °C is good).

To avoid prints being knocked off the bed, try brim (it's in bed-adhesion in Cura), most people don't use raft anymore. What brim does is to add addition loops on the first layer of your prints and make it sticks as good as possible.

No raft, add brim. Then disable Z-hop, enable combing in Cura.

These steps should be able to mitigate the problem.


Poor first layer bonding and bridging issues with Prima PETG I have a roll of Prima PETG, I like the strength but I am having a few issues - the outside perimeter of the first layer often breaks away as a loose string (so it's not bonding with the second layer or perimeter next to it), small areas tend to go gloopy and also bridging is very poor.

Have you suffered from these issues with PETG and if so how have you gotten around them?

Those are fairly common issues and you should be able to tweak your way into good prints.

First layer perimeter bonding: Slow down first layer to around 15mm/s with fan off to address that bonding issue.
Gloopy blobs: To address the gloopy blobs, slow down to about 40mm/s or even less, and be sure to use wiping...also, maybe increase your retraction length.
Bridging: Use full fan for better bridging...note that bridging PETG is just harder than many other filaments, but it can be done.  The reference below includes some more notes on bridging PETG successfully.

Ideal settings will vary based on your printer, your environment, and the characteristics of your specific filament.  PETG can take some tweaking so don't be alarmed by the gloopy blobs, excessive stringing, and poor bridging, just plan to spend some time tweaking settings until you find a good balance.

Here is a fairly good reference for further tweaking with PETG.

If you'd like more help analyzing your print settings here, consider posting your current settings, your printer model, your ambient temperature, and pictures.

I hope this helps!  :-)


What does Marlin's G30 code do? I'm using Marlin 1.1.0RC8 to control an MPCNC, using a RAMPS1.4. We've just added a touch-plate to do Z-probing, which works nicely for a single probe (I just want calibrated height for variant bit-lengths, not bed-leveling, but I think it amounts to the same thing). I've set it up in Marlin as FIX_MOUNTED_PROBE, which seems closest.

I can make it do a G38.2 Z-50, G92 Z12.6 (which sets Z to the height of the touch-plate, 12.6mm), which is ok to be going on with, but it seems I'm having to hard-code the Z offset, which I'm sure should really be set by eg Z_PROBE_OFFSET_FROM_EXTRUDER or M851.

My feeling was that I should be able to invoke a G-code G30, and it would do a nice fast-slow double tap, do the equivalent of a G92 Z+zzz to set that height and then withdraw to a safe height. And after a bit of config, it does exactly that...

... except it doesn't do anything with the height that it measured! Seems odd. The G30 code seems to be an elaborate way to move the head up by the clearance amount, via a touch-plate (with the added excitement of being able to crash the bed if anything goes wrong)! What's the point?

Have I misunderstood what G30 is meant to do? I've read the docs here, and traced through Marlin_main.cpp and there really is no "outcome". Unless I've missed something?

I believe G30 is a carry-over from CNC (G-code originated for CNC not printers)
I believe it is for going to a secondary reference (home) position and includes an optional by-way-of address that can be included in the command.

Looking at Marlin 1.1.0-1 (latest release), it seems to do what you said:

Move to the requested position (if selected in command, else N/C)
Deploy probe
Go home
Stowe probe
Report the requested position and probed Z position
Report the current position (home?)

It appears that for Marlin, there is only one reference address (home); so, it would seem a G30 would be the same as a G28 (go to primary reference); but, not so.

It looks like G28 is a home of a different color.  It looks like it homes the axis one-at-a-time and does not support a by-way-of location.  Note that you can select which axis to home by adding the letters 'X' 'Y' and/or 'Z' to the command.

I am not sure what benefit this command has for a 3D Printer other than allowing you to alter the printer's path to home.

Note: Unfortunately I do not have Marlin code up and running on my printer now so I cannot confirm what I am seeing in the code.


New PETG spool from eSUN is making popping sound while extruding I just bought new eSUN PETg filament. When I started to extrude it, I heard popping sound same as moisture boiling out of it. I don't expect new eSUN vaccum sealed filament having moisture content. Is there any problem with my e3d v6? Is it possible that due to old filament, moisture is residing inside my extruder assembly and new filament is carrying it while extruding?
My settings :

print temperature: 250 °C,
bed temperature: 80 °C,
retraction length: 6.5 mm,
retraction speed: 25 mm/s,
print speed: 10 mm/s,
layer height: 25 micron

What do I do in this case? Should I clean the extruder assembly?

The extruder can't hold much water and transport it to the melt zone.  Filament can.  The printer behaves like the filament is wet, so try drying it.

Try putting the filament in your electric oven at the lowest temperature (often 170 °F to 180 °F) for an hour and see if the behavior improves.

Keep the filament at a distance from (or shield it from) the heating elements.


Material "clumping" when printing I recently started swapping out my nozzle for different sizes. After a few times using a 0.4 mm, then 0.8 mm, then back to 0.4 mm, I now have this "clumping" going on when printing. The photos are of PLA but this happens with PETG also. Before I started changing nozzles, my prints were perfect.

The blue filament is Overture PLA, printing at 45 mm/s 210 °C (I lowered the temp to 200 °C and it's still happening).

Some things I've noticed (which did not exist when my prints were good):

Melted filament on the rubber piece that covers the underside of the
extruder. Could something be backing up, melting, and then falling in
a clump on top of my print?
The bottom metal piece on the extruder is slightly loose. It's the flat piece attached to the main extruder body with two screws. I don't know what it's called, so I couldn't even search for how to tighten it.

The questions:

Does this "clumping' have an actual name?
What did I potentially do when swapping nozzles that could have caused this (if that's in fact how it started)?
How can I fix it?

Update:

The print stopped and I removed the shroud. My train of thought was spot on as I saw a pool of blue PLA inside the housing and on the nozzle. But I still don't know how this happened.

From your initial photos, it looks like the bed level was too high, and there was thereby more material extruded than fit in the space. Even with an "identical" nozzle, the distances involved here are on an order of magnitude (less than 0.1 mm) that you're not going to get identical distance to the bed from one nozzle to another.

Further, as you found out following up, not having the nozzle tightened all the way will affect its height, and allow molten material to exit around the gap. It's always a problem not having your nozzle tightened all the way to make a good seal (I actually had nearly the same problem the first time I ever changed a nozzle), but having the bed too close probably made even more material ooze out at the gap due to backpressure.

Hopefully fixing these two things gets you back to printing right. It might be some work to clean out any material left in the hotend, especially if it worked its way around into the threads where the nozzle screws in. Be gentle if you have to clean that out further, since it's easy to strip the threads if you use abrasive tools, and then you'll be looking at replacing the heater block.


Nozzle insulation gone, can the printer be damaged? During a print a lot of plastic ended up ripping the nozzle's yellow insulation strap.

Can printing without this insulation around the fusion chamber damage the printer?

If there is no chance of damaging the printer, how likely is it that the prints will be affected by the absence of this insulation

Removing the insulation will not damage the printer, although it may affect the quality of the prints. The insulation is, after all, there for a purpose.

Allowing too much heat to escape radiatively from the heater block will reduce the maximum flow rate, since less energy will be available to heat the filament, and you may need to reduce your printing speeds or increase your nozzle temperature.

A bigger problem is that heat radiating from the heater block can cause already extruded filament to sag, especially when printing details and intricate infill. If the nozzle remains too long in any area, already extruded filament is likely to soften and deform. Without adequate insulation, the only way to counteract this is by increasing part cooling, and this will remove even more energy from the heater block.

Either fit new insulating tape or buy some silicone socks, since they are readily available for MK7/8/9 heater blocks. Then print a couple of Benchies, both with and without a sock, and compare the results.


My print is warping: how can I ensure that it cools evenly? My print is warping and I suspect it is because of uneven cooling.

How can ensure my print cools evenly? Should I put a fan on the bed? Will no fan and a tall skirt help?

Or are my edges curling up for another reason?

Without more information we cannot address what is causing your edges to turn up. This can depend on the model being printed, the process, the material, the bed, and the method used to bond it to the bed.

As far as the initial question, a fan will most certainly ensure uneven cooling.

The middle of the print is, and will remain, the warmest.  If you want the print to cool evenly, you'll need an enclosure to block out drafts and air currents, and you'll need to bring the heated bed temperature and enclosure temperature down slowly over a long period of time.


Is my 5A polyfuse on my RAMPS board bad? My printer stopped printing during a few prints, and i found that the extruder had stopped heating, and the motors had stopped running. I checked the code, and nothing was wrong. My 5A fuse though, was extremely hot. I wanted to verify whether it was my fuse that had turned bad or there was some kind of short in my circuitry.
With the power switched on, none of my appliances drew any current. However, the RAMPS board drew about 0.16 amps.
Is that normal?
If that is normal, does it mean that my fuse needs replacement? Because none of my loads seemed to draw unnecessary current.
Thanks in advance.

As @Mikhail Z commented, it does sound like the fuse may be bad.

The first thing to do is put an ohmmeter across the fuse (with power off!) -- if you get high resistance the fuse is definitely bad. However, if you get low resistance that does not prove the fuse is good -- see @Tom's comments below re. polyfuses in particular, and how to disconnect from the rest of the circuit.

If you don't get lucky testing a fuse in-line, remove it and put the ohmmeter on it in isolation. Whether good or bad, it's good to put in a fuse-holder or socket, so you never have to de-solder the fuse again.

Some boards use auto-resetting fuses or circuit breakers, which might have more complicated ways of failing (you can always replace the part to be sure). I personally avoid auto-resetting for anything that supplies heaters; if there's a problem I want to intervene rather than letting it try again endlessly.

Since the heaters and the motors are both down, it's a good bet it's the fuse or something very early (that is, "near" the power supply). If it were a single motor or single heater, then the output control (typically a solid-state relay, or perhaps the logic controlling it) would be a better bet. Though unlikely, it's possible for two or more such controls to fail at once, so don't rule that out completely.

Let us know what you discover.


How do I get my Wanhao Duplicator 6 / Maker Ultimate to lower bed at end of print? What would be the end g-code so that I can get my Monoprice Ultimate (Wanhao D6) to lower the bed to midway on the frame or something easier to remove the print? The default end position is very high up at the top.

In your ending script add the line below and change Z200.0 to your max Z height.  This will rapid to the given value using absolute coordinates.  I added G90 in case G91 was previously set so it did not do a relative move.  I'm not positive if G91 is modal in printer firmwares or not but the G90 should not hurt anything.

G90 G0 Z200.0


Prusa I3 starting print above heating bed? So I have been going through modding my printer and I have come across a new problem that I have not had issues with before.
My 3D printer will start to print above the heating bed even though it gets properly homed all the endstops. At first it was off by half of the whole Z-axis distance using Cura and off by 0.5 mm on MatterControl. Since playing around with random settings in both programs, my printer now seems to only be off by 0.25 mm from the heating bed. None of the settings appear to be affecting anything.
My guess is something both programs remembered was off and now it's been corrected to a degree?
Homed at endstops:

Homed to a papers width above the heating bed:

Here the printer has started to print and it off by 0.25 mm:

G-code
MatterControl:

Cura:
M190 S75.000000
M109 S230.000000
;Sliced at: Mon 10-07-2017 01:08:42
;Basic settings: Layer height: 0.1 Walls: 0.4 Fill: 2
;Print time: 2 hours 18 minutes
;Filament used: 3.348m 9.0g
;Filament cost: None
;M190 S75 ;Uncomment to add your own bed temperature line
;M109 S230 ;Uncomment to add your own temperature line
G21        ;metric values
G90        ;absolute positioning
M82        ;set extruder to absolute mode
M107       ;start with the fan off
G28 X0 Y0  ;move X/Y to min endstops
G28 Z0     ;move Z to min endstops
;G1 Z15.0 F6000 ;move the platform down 15mm
G92 E0                  ;zero the extruded length
G92 E0                  ;zero the extruded length again
G1 F6000
;Put printing message on LCD screen
M117 Printing...

;Layer count: 381
;LAYER:0
M107
G0 F6000 X96.660 Y119.366 Z0.100
G0 X96.978 Y119.129
;TYPE:SKIRT
G1 F1200 X97.452 Y118.764 E0.00995
G1 X97.921 Y118.508 E0.01883
G1 X98.363 Y118.264 E0.02723
G1 X98.699 Y118.142 E0.03318
G1 X98.699 Y118.143 E0.03319

Further down.
;LAYER:1
M106 S63
G0 X111.565 Y151.164 Z0.200
;TYPE:WALL-OUTER
G1 F1920 X111.415 Y151.002 E40.19917
G1 X110.919 Y150.231 E40.21441
G1 X110.689 Y149.702 E40.22401
G1 X110.553 Y149.385 E40.22974
G1 X110.226 Y148.153 E40.25094
G1 X109.962 Y146.354 E40.28118
G1 X109.635 Y143.890 E40.32251
G1 X109.603 Y143.683 E40.32600
G1 X108.787 Y143.726 E40.33959
G1 X108.787 Y143.930 E40.34298
G1 X108.518 Y146.454 E40.38519
G1 X108.184 Y148.175 E40.41434
G1 X107.746 Y149.645 E40.43985

Try setting your "First Layer Height" to 0. This should resolve the issue and will make homing your Z axis a bit easier.


Post-processing and filaments for weather-proof electronic enclosure I'm building a weather-proof enclosure for some electronics. It's expected to stay exposed outside all the time so I'm worried about its resistance:

What would recommend me for 3D filament? I was thinking about ApolloX ASA but I don't have an enclosure.
What post-processing should I go with without being overkill? I was thinking about:

Resin coating (was thinking about XTC-3D)
Filler/Primer spray
UV-resistant spray paint
Water-proofing spray

The enclosure have some moving parts exposed, how do I make the junction between them water-tight?

There are already some questions about the choice of filaments for outdoor use:
Which is more durable to sunlight/weather - PLA, ABS or PETG
3d printing for outdoor use: what types of filament are most weather resistant?
PLA use outdoors?
It may very well be that if you print in PETG you won't need any postprocessing.
If you still want to, you could try to paint or spray the outside with some bitumen spray for car underbody.
I think that the only part which actually needs postprocessing is the spot with exposed moving parts.
It's difficult or impossible to find a solution without having an idea of what we are talking about when you say "some moving parts exposed", but in general this is solved first of all by adapting the design so that water wont' be an issue: rain should flow away without getting inside, and spatwater should be reduced so that it will evaporate when rain stops.
If you only have an exposed pin for rotating parts which are inside, you could also pour some wax: it will seal it while allowing movement. The same bitumen spray may help.


Are Makerbot Smart Extruder nozzles swappable? I'm wondering if anyone has any experience with Makerbot smart extruders and knows whether or not the nozzle size can be changed. I'm trying to figure out if I can use different nozzle diameters (0.25mm, 0.5mm, 0.8mm, etc.).

Makerbot doesn't sell any replacement nozzles on their site, so I suppose I'm just trying to figure out if the nozzles on the makerbot use the same diameter/thread pitch as other nozzles, like the ones from E3D or if I'd have to mill my own, which is way more trouble than it's worth.

Any research on the subject is pretty sparse, and the best resource I found is a blog post from 2011 when they still allowed their customers to do such things themselves. I've searched around their Google Group but got nowhere. Beside that, there isn't really any information from the last three years or so on the Makerbot machines.

Yes, you can change the nozzles with the 5th gen line printers, although it's not recommended or supported by Makerbot. You're on your own if something goes wrong with an aftermarket nozzle. Here's a swap video from Fargo3D: https://youtu.be/vL80bslk9vw

I would recommend "mk8" Makerbot Replicator 1/2/2x style nozzles, since these will be similar dimensions to the original nozzle. Ebay has lots of cheap ones, or P3-d and Micro Swiss are popular options for premium Makerbot mk8 style nozzles. But you should be able to use any standard M6 male thread, ~2mm ID nozzle (such as from E3D, because the Smart Extruder Z homing routine will compensate for nozzle length.

When you change the nozzle, you're also going to need to change the slicer settings. Do not use default settings with a different nozzle. Smaller nozzles will require significantly lower print speeds, and larger nozzles will require wider extrusion width. You can create a custom profile in Makerbot Desktop to do this, or use a 5th-gen-compatible slicer like Simplify3D.


Power Over Ethernet (Pi Zero Mod) I'm looking to make 20-30 IoT devices, with the pi zero.
The price point is perfect, the only downside is that it doesn't have an Ethernet jack and the power adapter is not included.

I found a mod that deals with both of these issues, however it would involve a lot of soldering. The mod takes a USB to Ethernet adapter and 48 to 5 volt converter and allows the device to be both powered and connected to the internet with just an Ethernet cable.

With 3D printing or Milling is it possible to make something that snap fits the components together and mitigate a lot of soldering?
Is it possible to print or mill something that will do the 48 to 5 volt conversion?

Components:

Two male micro USB heads
48 to 5 volt converter
Ethernet adapter board
Pi zero

3D Print A Solderless Circuit Board

I think this was the solution I was looking for, unless someone else knows a method that's cheaper, faster, safer, etc.


3D printer filament will not load after running the printer out of filament We wanted to test the post process properties of PVA but did not want to print anything.  We unloaded the ABS that was in the printer and then started loading some PVA.  After the PVA was loaded we let it keep going through the loading process until it pushed all the PVA out and we had our test sample.  We then stopped the loading process and started the loading process again to put the ABS back so we could continue with normal printing procedures. Now, the ABS will not load into the right side and started making a clicking/ticking noise.  Our printer is a Flashforge Dreamer.  What is wrong with my printer and how can I fix it?

PVA is nasty filament to print (from experience). I use it in the Ultimaker 3 in a separate designed core (BB) and even with that core the filament frequently cooks up and carbonizes clogging the nozzle resulting in grinding of the filament at the feeder (it also attracts water really easy, so keep it in the bag with desiccant bags).

To clean the inside of the nozzle, a few techniques exist to remove blockage. E.g. by performing a cold pull or using the atomic method. Both techniques rely on the mechanism to insert the (cleaning) filament when it's hot and remove it quickly at a lower temperature. E.g. see here or here.

The trick is that you pull out all the goo inside the nozzle, you do that by raising the temperature and sticking some (cleaning or high temperature) filament (your ABS will do fine) to the goo. When the temperature lowers, you quickly pull and hope that some of the goo sticks to you cleaning filament. Cut of the tip and repeat until no goo or burnt particles come out and you can push the cleaning filament through the nozzle. You do not need the automatic feeding, it's all manual labor, just raise temperature through the menu and press the lever of the extruder to load the cleaning filament, lower temp and pull back after cooling a bit while pressing the extruder lever.


Creality CR-10 slightly jerks when moves from right to left So when CR-10 prints square (like on the video starting from 6 second) while being in the top right corner extruder jerks i.e. slightly moves to the right and then continues movement to the left. So the resulting prints are not so nice:

What can I do? I don't see issues in assembling but I almost definitely have them. What can be wrong?

UPDATE: Printer settings: nozzle temperature - 180, bed temperature - 65. I calibrated extuder according to the video. Bed level seems to be ok for me. I started using Difamix because of bed adhesion (sometimes even using IKEA mirror).

Here is my calibration cube size (I wrote only edges different from 20mm):

And here is the issues with calibration cube I found. Top layer:

Bottom layer:

Layer with Y is a bit rough (not a big issue as for me):

Also edge between X layer and Y layer is not very sharp, a bit rounded.

It looks like the nozzle is not perfectly perpendicular to the bed. It is also dragging which might indicate overextrusion or bad z stop calibration..


Screen stays black on new Ender 3 V2 after power-on I decided to finally purchase an Ender 3 v2. It arrived today and after a few hours of making sure everything is straight, I tried to power it and do a test print...
I was disappointed to see that the screen stays black after more than 10 seconds from power on.
I did not insert any SD card in the printer or anything that could interfere with the presumably stock firmware on it.
Because of this, I opened up the power source and the motherboard case and checked the voltages/checked LEDs. The motherboard blue led is on, the power source green led is on as well. I did a few measurements - I get 24 V to the motherboard with a small spike of 35 V when it starts.
The hotend fan is always on.
I checked the display connection and I am sure it is placed correctly.
I tried to upload firmware onto the mainboard first by clearing the SD card (8 GB given by Creality) using diskpart. I wrote the 4.2.2 (same as motherboard version) firmware version (stock) onto the SD attempting to upload on the mainboard. I tried renaming it, unplugging the power cable, unplugging the screen cable, etc and nothing would work.
I tried rewriting the DWIN_SET files but the screen would not turn to black/blue/orange colors. I tried more or less everything suggested here.
Is there anything I didn't do? What do you suggest? I already contacted the company where I bought it from, but I don't want to go through the assembly process twice - maybe I can make it work?

The correct voltage for the power supply is set at 230 V (Europe) and was set to this all the time. I tried switching it back and forth without power too. No result.
I've contacted the supplier yesterday.

I had the same issue.  I think I flipped my display cable around and it worked.  Maybe I got lucky and it was simply reseating the cable.


What are the other materials which can be used in DLP Printing, other than polymers? I know that melted polymers are used for DLP (digital light processing) printing, by displaying the model onto the liquid material, which is the melted polymer.

But, can I use materials like steel, carbon fiber, etc?

If yes, then what precautions and arrangement should I make to my apparatus for coping with their high melting point?

DLP doesn't use "melted polymer". It uses a photosenstive resin which is at room temperature and polymerizes when exposed to (UV) light. At no point is any material melted.

As such, steel or carbon fiber can not be used as these materials are not photosensitive.


File Input data types I'm a newb and don't know much about 3D printers.
In visual basic I can create vector data of 3d objects,that can be loaded into a binary or text file.
Can files like this be used with a 3d printer?

Example:

This is a very simplified example of how the code generates 3d vector data.

ju jv jw determine the size and dimensions of the object
ru, rv, rw are the vector lenghts

The incrementors used to increase the size of the object to the max ju jv jw vaules:

ru=ru+1
rv=rv+1
rw=rw+1

'the angles can also be incremented to for curves and spirials'

the angles of the vectors

angle u =0
angle v =45
angle w = 90

Simplified code:

For k1 = 0 To Ju

    ru=ru+1

    xu = (ru * Sin(angle u))

    yu = (ru * Cos(angle u))

For k2 = 0 To Jv

   rv=rv+1

   xv = (rv * Sin(angle v))

   yv = (rv * Cos(angle v))

For k3 = 0 To Jw

    rw=rw+1

    xw = (rw * Sin(angle w))

    yw = (rw * Cos(angle w))

Output xu, yu, xv, yv, xw, yw  ..to file in the order produced on this line

Next k3 : next k2: next k1

Can a 3d printer read this output as is and use it to make a 3d object?

Not directly. The most common types of 3D printers build objects in layers. They "draw" a layer, then "draw" another layer slightly above it, repeating until they've "drawn" the entire model. Preparing your model for this is called "slicing", since you are "slicing" your model into these layers. Slicing is a complex process and it's a lot of work to "roll your own" software for it, and there are several good, free applications to do it for you out there already.

What you probably can do easily is output your data in STL format to be read by the slicing software. STL (either ASCII or binary) is a dead simple format that contains the triangles that comprise your model. So simple, in fact, that the Wikipedia article tells you just about all you need to know.

To get triangles from squares:

A--B    Here is a "square" with vertices ABCD.    A--B    A--B    A
|  |    Splitting it from A to C produces two     |\ | ->  \ |    |\
|  |    triangles, ABC and CDA.  This can be      | \| ->   \|    | \
D--C    done as part of the output by simply      D--C       C    D--C
        writing two triangles for every
        square in the input.


While filament loading extruded filament wiggles I cleaned up my Flashforge Creator Dual tonight, and loaded some transparent ABS prepping for a print.  The filament extruded fine, then started to wiggle, then became fine again.  Hot end is 0.4 mm and was heated to 230C.  What sort of steps should I take to troubleshoot the issue?  Has anyone seen this before?

If the filament displayed in the photo is the result of unimpeded extrusion from your nozzle, you don't have or have not described a problem. Filament extruded from a hot nozzle will react to many things. If a slight air temperature change is created on one side of the extruding filament, it will cool faster than the other side and curve in the direction of the cooler temperatures.

If there is a bit of old filament on the tip of the nozzle, it can cause the filament to hook back on itself, creating an interesting squiggle of filament before the weight is sufficient to cause it to drop.

A typical 3d printer problem is related to the results of a print or an obvious mechanical failure. Wiggly extruded filament is not a symptom of a looming failure, unless you have other indicators.


Connecting an inductive sensor to the Anet A8 I bought an Anet A8 over christmas. When I bought my printer from Gearbest, I also bought the inductive sensor that they sell.

It doesn't seem to work, and I think it might be broken. However, I have no idea how I can test if it is broken. This is what the wiring looks like and how it's connected to the board

I'm not sure if I need to modify the wiring in order to hook it up to the A8's motherboard. I have no idea what the pinout is on the A8's mobo, and it's not indicated either. Most guides deal with using RAMPS when it comes to installing such a sensor. I'd like to know how to connect this to my board, if possible.

The printer works fine otherwise, so I don't think the board is broken or anything. For now I've resumed using the normal endstop, but I would like to enable bed levelling by installing this sensor. (or a different one if necessary)

How do I get this working?

I am not entirely familiar with the ANET A8 electronics, but it's very unlikely it's any different from how any other mainboard works, so any instructions that work for RAMPS should work for your board as well.
The sensor you linked to has an operating voltage range of "6V to 36V". However, the endstop connectors (on any mainboard I've come across) only provide 5V - not enough for the sensor to work. You could verify that this is also the case for your ANET board with a multimeter.
(Assuming the colour coding is standard) you'll need to connect the black wire to GND, the red wire to 12V, and the yellow wire through a diode to the signal pin of the endstop connector. The anode of the diode should connect to the signal pin and the cathode to the wire coming from the sensor.
The diode is required, because otherwise the 12V signal from the sensor will damage your electronics, which can only accept 5V. Any ordinary diode will do (for instance 1N4148). You should enable endstop pullups in your firmware when using this method (though if your board already has physical pullups this is not necessary but won't hurt either).
Note that if the sensor is inductive, it will also need an appropriate (metal) surface to trigger off. Unfortunately, it is not clear from the product description what type of sensor you have bought, and (amusingly) gearbest doesn't know either:

Question:
Hello, is this Sensor capazitiv or induktiv? Thank you verry much.
Reply:
It is an auto leveling sensor for 3D printers


Do I have to buy all new components if I were to get a RAMPS 1.4 that supports 24 V power? Ryan Carlyle seems to keep suggesting in my questions here, that using a 24 V power supply is safer than using a 12 V one.

Early on, I ordered the wrong power supply, obtaining a 24 V one instead of a 12 V; I found that it was incompatible with my RAMPs 1.4 board... unless of course you pull off all the components and replacement with 24 V compatible ones.

Now granted my board needs to be replaced if I am to use such a power supply, but are there any other components that need to be replaced if I'm going to use 24 V power, or am I safe with what I am using?

You need all components that are supplied voltage by the RAMPS board to be able to deal with a 24V input. Some of your parts are most likely compatible, as the stepper drivers. Others get the 5V from the Arduino, as the endstops. Some will most likely need replacement, as

the Hotend heater cartridge. It will need to be exchanged. You can easily buy those in 12V and 24V versions and a 12V version should not get 24V.
the fans. Chances here are about as close to 100% as it gets that they need to be replaced. They are directly connected to the 12V, some are PWM regulated but that doesn't change that they need to be replaced with proper 24V fans.
the heated bed. Since it gets direct power from the board you cannot use your old 12V bed. This is unless you had your old bed switched by a solid state relay (SSR) before. Then you'd have to check the SSR's switching signal tolerances.
anything else you might have hooked up to your power supply directly (lights for example) should be checked for input tolerance.


RAMPS PLUS 2 and E1 socket problem (K200 Delta, but related to the PCB , not printer) Total 3D printing newbie here, apologies in advance if my terminology is wrong.

I have a dual head K200 delta printer with a heated bed which I put together 8 months ago, but gave up due to frustration of the following error in Repetier:

temp sensor defect marked defect
Error:Printer set into dry run mode until restart!

I've tried again today, and all 3 thermistors (and the spare) work fine, but socket E1 on the BT7200 V1.8.26 RAMPS PLUS 2 is giving me -20 °C readings no matter which thermistor I put in.

Even though I’ve tried to tell it there’s only one extruder (in Printer Settings), the display right at the bottom of Repetier still thinks there’s two.

Today I've emailed the seller and the company I bought it through, to see if they can help.

In the meantime - is there any way to make Repetier believe that I only have one extruder, or change things so that I can use the heated bed socket for the other extruder instead and just try to make due without the heatbed for now?

Hope you can help.

Repetier reads configuration from the printer when a connection is established, so as long as it gets info about 2 heads it will display it.

The best approach will be to disable heatbed or hotend directly in the firmware and reflash the printer. You could also swap pins on the board.

When you decide to reflash the firmware, you could check with producer if they have suitable one or use Marlin (this is a configuration guide).


Regarding the E-step in Cura I'm using a Delta Wasp 2040 printer equipped with a clay extruder. I'm using Marlin firmware.

I'm trying to print food (vegetable creams) not PLA filament, but my question is about the setting of some of the parameters.

As reported in Marlin, the default values for X, Y, Z, E axes are:

* D e f a u l t A x i s S t e p s P e r U n i t ( s t e p s / m m ) * O v e r r i d e w i t h M 9 2 * X , Y , Z , E 0 [ , E 1 [ , E 2 [ , E 3 ] ] ] * /

#define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 4000, 500 }

My questions are below:

The value 500 is intended as mm/min. If so, the actual value should be 8.33 step/mm of filament in a time of 1 s. Is this correct?
It is not clear, in my mind, the E-step that I can change in Cura. This is what I believe:

If I leave in Cura, an E-step=0, then this means that I'm using the default value (500)?
What happens if I change the E-step value in Cura for instance at +0400? Is it changed from 500 to 400 mm/min, or the value on Cura is intended as a percentage of the default value?

Can you explain to me exactly how the E-step changes when modifying its value in Cura.

I can only weigh in on the Marlin side of your question - "The value 500 is intended as mm/min" - uh, no, AFAIK it's steps per mm, just like it says - i.e. with filament, 500 steps per mm of filament fed. Other than not allowing the feedrate parameter to go so high that steps are skipped (which is a different limit) it's time-independent. I suppose with an extruder it would be mm of piston movement, but I don't have an extruder.

In my case, an actual value is closer to 250, and I typically check the calibration with 50 or 100 mm of filament feed so I can make a decent measurement.

I also wonder if your firmware knows it's running on a delta, since mine reports "A, B, C" rather than XYZ and all three towers are the same steps/mm - the "default values" you are looking at might apply to a typical cartesian printer where the Z axis is threaded while the X & Y are toothed belts.

Assuming it runs correctly you might be seeing irrelevant "default values" and having correct values loaded from EEPROM when the system starts (look at the log window when the control system connects to the printer.)


Is there any public and reasonably accurate 3D scan from a Cray-2 computer? I'm thinking about building a Cray-2 inspired cluster. I'm concerned about the exterior housing modules, proportions and panels.

Has anyone done a good 3D scan of one?

LMGTFY, etc. etc.   Depends on the amount of detail you want.  A cheap starter: here, or here or irrational fruit


Z axis OK during calibration, but WAY off on prints I have Anet A8 where I have changed the controller from the original to RAMPS 1.4 running Marlin 1.1.1 and ran into some strange issues with my Z axis.

Doing calibration (10 mm cube, 10x10x20 mm, 10x10x30 mm) I am dead on the mm on the Z axis. (10 mm, 20 mm, 30 mm)
But when I print a part that is supposed to be 24 mm high, it comes out 27 mm high.

Went back to print calibration 10x10x30, and Z axis is dead on 30 mm again.

Also printed a bracket that was supposed to be 240 mm high, ended up close to 270 mm.

I am doing the same layer heights for all the prints (calibration cubes and otherwise). Starting with a 0.2 mm first layer and then 0.1 mm on all other layers. Using RepetierHost v. 1.6.2 with Slic3r v. 1.2.9

Anyone experienced something like this?

This was a comment from the OP, which effectively answers their own question:

After:

Installing new Marlin 1.1.3;
Changing the Maximum Acceleration on Z down to 20, and;
Changing Acceleration and Retract Acceleration down to 1000.

I have now a printout that measures 24.65 mm (0.65 mm higher than it should) and good enough for me to say, this is OK.


Creality Ender 3 printer power consumption? Anyone have any idea how much power it takes to run a Creality Ender 3 3D printer every day for several hours at a time? Like what does it eat up per hour? A rough estimate of power use per hour would be nice, then I can figure out how much it costs me. Can anyone help me?

I'm currently measuring the power usage of my Ender 3. It used about 0.5 kWh for 4 hours of printing. With 2 heat ups (about 280 W each). So approximately 120 W average.
Or 0.12 kWh per hour.

Assumed your printing 12 h a day you're using 1.5 kWh a day. That translates into a cost of 0.43 € a day in electricity (0.3 €/kWh).

When you're using your printer every day for an average of 12 h. You'll be using about 525 kWh a year or 157 € in electricity at 0.3 €/kWh.


Best 32 bit electronics for delta? I'm looking to update my Delta printer's electronics from 8-bit to 32-bit.

So I checked Marlin and found out that they working on a project they call it Re-ARM and as far as I can tell they will support few chip-sets - I can't remember which one, so until when that happens I need to use something else but what?

I need it to be open source but the Smoothieboard (original one) is too expensive. I saw MKS SBASE but they are closed-source. There is also the MKS GEN version of it but again it uses an ATmega2560. Is there solution for now for my problem until 32-bit Marlin reaches test phase ?

Note that I am not stating this as the best 32 bit solution, as that is too subjective. Although you might want to read Recommendations for a good 32 bit microprocessor to run Marlin, which I cover in On which board can 32 bit Marlin run?

So, to clarify, yes, while the MKS-BASE is based on the 8 bit ATmega2560, the MKS-SBASE is powered by 32 bit ARM, 100M Cortex-MS MCU-LPC1768.

Anyway, SmoothieWare can indeed run on MKS-SBASE. There is an extensive guide on Instructables - Configuring MKS SBASE V1.X 32-bit controller basics and into to SmoothieWare.

You first need the drivers (for Windows). Plug in the MKS-SBASE board and then install the driver.

  Connecting USB

  Plug in USB to the board and look at the LEDs at the upper left
  corner.  Immediately the D7 led lights up. After a bit D1 also
  starts lightning while D2 and D3 blinks rapidly.

  Open device manager and update drivers for the new Smoothie/Serial USB
  device with the signed drivers you just downloaded from Github located
  in the easy to find folder:
  \MKS-SBASE\MKS-SBASE\Driver\smoothieware-windows-signeddriver-v1.0

Then to install the firmware:

  Installing firmware

  Firmware from MKS are just and old copy of Smoothieware, so we always just want to use the newest version from Smoothieware.

  In other words: always use firmware from Smoothieware.
  If you can't find config.txt file from original Smoothieware, just use the one from MKS.

  Download official firmware from Smoothieware's firmware page which is a subpage on their own Github page (you might want to
  download their full Github repository (folder) in order to find their
  config.txt file)

  Start by using the Stable version. When everything is working fine, you can use the Nightly version instead. It is the newest
  version, but not fully tested yet, and considered as beta/test.

  Insert the SD Card into the MKS Sbase board and plug in the USB Cable. Your SD Card is now going to show in your file-Explorer.

  If not, you need to make sure you have the Drivers installed.

  If you can't find the config.txt file from Smoothieware, just locate the config.txt in \MKS
  Sbase\MKS-SBASE-master\MKSSBase-firmware and copy it to your SD Card.

  Smoothieware suggest disabling auto-Mount on the SD when connecting to USB. Especially when using a Mac, as OSX tends to do
  funky stuff at strange times.
  I have changed nothing on my Win10. And nothing bad has happened the past year.

  The D7 lights up, shortly after D1 follows. D2, D3, D4 blinks and then D4 turns steady while D2 and D3 continues blinking.

  At this point, the firmware.bin had changed to firmware.cur file on the SD card

  After successful updated, the file name will turn into firmware.cur.

  Changing or Updating firmware

  Just delete the firmware.cur file from your SD, or rename to
  firmware.cur.old or similar, and copy on the new firmware.bin file
  to your SD. Powercycle your printer (also unplug USB) and you can see
  your new firmware.cur file on your SD card.

  Note: After making any changes to your config.txt file in the future, you need to power-cycle your controller, meaning disconnect
  both power (if in use) and USB. You can send a reset command, but only
  through true terminal use and not through Printrun/Pronterface or
  similar.

The guide, as stated above is extremely detailed, and goes on to explain all of the other aspects. The contents are as follows:

  Table Of Contents:

  Connect and install

  Connecting USB
  Installing firmware

  Configuring Smoothieware compared to Marlin
  Obvious difference from Marlin

  Less obvious differneces
  Firmware and Config file(s)
  Configuring firmware
  Comments

  Firmware Step 1: Default feed rate

  1/32 Multistepping
  Connecting Motors
  External Motor Controllers

  Firmware Step 2: Cartesian axis speed limits, pins and current

  Pins
  Current

  Firmware Step 3: LCD, SD and Extruder

  LCD and SD
  Extruder Setup
  Delta driver current

  Firmware Step 4: Hotend temperature control configuration

  Thermistor Type
  PID Tuning
  Hotend Thermistor - Physical Layout
  Hotend Heater Pins - Physical Layout

  Firmware Step 5: Heated bed temperature control configuration

  Thermistor Type
  Temperature Control Bed BANG-BANG
  Heated bed thermistor - Physical Layout
  Heated bed heater pins - Physical Layout

  Firmware Step 6: Configuring Endstops

  Homing direction
  Disable unused endstops
  Define axes size
  Reversing endstop output
  Fast and slow homing rates

  Firmware step 7: Network Settings
  Step 8: What's next?

  More advanced setup?
  Using Switches

As there is way to much to cover here, please visit the Instructables page for the complete guide, in order to complete the configuration.


Anet A8 stops printing I have an issue with my Anet A8 printer and how it interlocks with Ultimaker Cura.

I want to print this file named Loki_hörner_v2.stland Cura slices it fine, but when it comes to printing all the preheat happens, but then it stops, not going on at all. What might be wrong here?

Special characters like Ä Ö or Ü in the stl-filename resulted in Ultimaker Cura creating a comment of the filename in the g-code that read like

;MESH:Loki_hörner_v2.stl

This apparently could not be parsed by the Anet A8, leading to an error and halt.


Z motor not moving during auto home My Monoprice maker select recently fried its melzi board.  So I went out and purchased a ramps 1.4 kit.  I've wired it all up and Flash the firmware with marlin(most recent build).  When it boots up it boots up fine I go to prepare.  And then I go to move axis I can move the X Y and Z axis and the access is moving in the correct direction.  I go to auto home and the X and Y axis home properly but the z-axis does not move at all.  Even though I can move it manually.    Does anyone have any suggestions.  I checked the end stop for the z-axis even though I know it probably has nothing to do with it and it has continuity when the end stop switch is depressed.

Alright, I have figured everything out with the help of #reprap IRC community.

Issue #1 - Z axis not moving during zero.  Just as tjb1 suggested the issue was that it thought it was hitting the endstop, I needed to invert the logic of the endstop within the configuration.h

const bool Z_MAX_ENDSTOP_INVERTING = true;

Issue #2 - No Heated bed controls.  The issue resided with the configuration of the heated bed within the configuration.h.  The bed was not defined correctly(I do not have the solution for this one as I found a pre-configured configuration.h for the Monoprice maker Select and  after loading the firmware it worked

Issue #3 - The extruder motor would not move.  This was the biggest issue and came down to it being a cheap RAMPS/Arduino.  E0's pinouts were not working properly so I took off the driver and wiring from E0 and put it on E1 then altered the pins_RAMPS.h and swapped the values for E1 and E0 pinouts.  after reloading the firmware the extruder then moved fine.

#define E0_STEP_PIN        36
#define E0_DIR_PIN         34
#define E0_ENABLE_PIN      30

#define E1_STEP_PIN        26
#define E1_DIR_PIN         28
#define E1_ENABLE_PIN      24


RAMPS 1.4 Stepper's not getting a good signal Running on the Marlin 1.1 firmware, for this issue, most other variables of the printer can just be assumed (It's a CoreXY design, but think i3 for my current testing). (Highlighted my only lead in bold, so probably best to read that first)

The problem:
X-axis stepper driver and motor moves fine, all other axis's don't.

What I've tried and deduced.

I've inverted all endstops and ruled out end stop errors, as well as any warnings that get reported through serial.
Swapped stepper drivers from the Y axis (just focusing on the Y axis for now) to the X axis, the X axis is still the only one that moves.
Swapped the X and Y axis motors: only the Y axis motor works, so still only getting powered from the X axis driver
Tested power on the stepper drivers, all stepper drivers get the same motor and logic power within margin of error
Tested step signal on the Y axis with an oscilloscope, found my only lead, when moving the X-axis, the step control has a peak voltage of ~5.2v and the motor moves. When testing the Y axis, the step input voltage from the Arduino  to the driver has a peak of ~1.7v
Assuming something may be wrong with the connection, I tested the resistance between all step pins from the Arduino side to the stepper driver itself and got a constant resistance of 2.5 ohms for all drivers, pins are connected properly.
Pulled the Arduino out, uploaded and ran a custom servo script on it, using pin A6 as the PWM control signal. Server runs fine with the correct voltage (ruled out a microcontroller issue).
Reassembled the RAMPS, motors etc, reuploaded a fresh copy of Marlin from their site that I configured from scratch and did some extra probing around to make sure all the connects are fine, still, only the X-axis works.

Turns out there were multiple faulty stepper drivers, if the one stepper driver was plugged in, it would operate, but would draw too much current from the pins on the Arduino causing all the other drivers to receive weak signals.

This is why swapping them around still only worked on the X-axis, if it was only one driver, I would have figured it out.

So if you get a very weak signal on the stepper driver step pin, even when it's pulled out, it's probably because of one of the other stepper drivers shorting the whole rail.


OctoPrint won't stop my print with a pause Using the PrusaSlicer I discovered that we are able to insert a pause in mid print.

I wanted to use such feature to insert a lens in my print so I don't have to glue 2 parts to make my magnifying glass.

But unfortunately the print didn't stop at the specified layer.
Trying to manually pause the printer from the LCD didn't worked either.

The only way to stop my print is to print from the SD card instead of using OctoPrint.

Is there a pre-requisite to be able to trigger a pause from the G-code using OctoPrint?

Apparently PrusaSlicer insert an M601 command, maybe this had to be somewhat changed to another G-code command?

My 3D printer is an Ender 3 with an alternative 32-bit board : BIGTREETECH-SKR-mini-E3 V1.2

I'm using the stock firmware : firmware-bltouch-for-z-homing.bin

I tried to look into the Configuration.h to see if there was a pause feature to enable but I didn't see it.

I've tried to pause, it didn't even trigger automatically when printing from the SD card... Maybe I need to tell the slicer to issue another G-code that is not M601...

If you want to pause at the Octoprint command streaming level rather than at the printer level, have your slicer emit the Octoprint @pause command rather than real gcode for pause. This will cause it to go into the paused state and not send any further commands until you hit resume.


Parameterizable customer object in Tinkercad Background: Basic shapes in Tinkercad have parameters like Sides, Segments, ... (see screenshot below).
Using codeblocks one can create custom shape. Within the code it is possible to define variables which can be used as a parameters based on which shape is created. This is not flexible solution because if I want to modify some variable I need to enter codeblock, change the value, export to Tinkercad and then I can use it.
Question: Is there a way to create custom object with parameters controlled from Tinkercad like in case of basic shapes?

Yes, there is such a way in Tinkercad. It is called a shape generator and it is very well hidden. you can find it here:

Open Tinkercad and select a model to Tinker or create a new one.
select the "Basic shapes" pulldown on the right and choose the last option: "shape generators".
choose "create shape generator"
choose "new shape generator" and select a template to start from
Here you have the javascript code to create a shape with parameters like basic shapes.


Filament Cost vs. Quality? I'm a 3D printing newbie, and I bought some Hatchbox PLA to start with since it is recommended by the community it seems.

Is there really a steep quality drop off if you go for brands that are 50% less than Hatchbox?  What does that quality drop off look like?

In addition to @TecTec3's answer:
Parameters that define filament quality:

Diameter variance: If there is too much fluctuation in diameter, the filament might get stuck.
Material Quality: I had really expensive filament that was brittle and did tend to snap when it was extruded. Other filament just didn't melt but started burning up and regulary clogging my extruder.

My opinion:
I'd say you shouldn't go with too cheap filament and stick with one that works out best for you. If you have issues try another brand. It's impossible to tell quality just from the price.


Proper belt tension for Ender 3 v2 The Y-axis belt just broke on my Ender 3 v2. I believe that it was over tensioned from the factory. When I initially assembled the printer, I noticed that the Y-axis tensioner was tightened almost all the way. The belt itself felt very stiff. The X-axis belt, which I installed upon assembly, didn't require a lot of tightening. I have ordered replacement belt material and clips to make new belts.
What is the proper tension for both the X- and Y-axis belts?

Generally, a timing belt is a complicated device and many things depend on its internal construction and materials (it may be damaged when bound in wrong direction, or when cut, and when overtighten of course, etc.). There is also physics and math applicable, based on Mersenne's laws.
Some vendors provide calculators (online or as phone apps), which can calculate tension (force in Newtons or lbs) or the frequency (Hz). Therefore often the advice is to tension the belt until some (bass) sound is present - and professionals would tune belts with a sound tuner. There are also hints that belts should be possible to connect with fingers with slight or significant pressure (so not consistent). There is also visual guideline: when you slowly move the carriage with hand, the belt should remain straight. (Slowly, because belt is elastic and may behave different when moving carriage stronger and faster against friction of pulley.)
I would suggest to read this article on 3dprintingspot.com for many practical suggestions.


PLA from the top of the hotend My custom printer is affected by a strange problem. After 30/40 min printing without any problem, PLA starts blobbing from the top of the hotend.

What does it means? Where to start checking?

It is possible that there is a little space between nozzle screw and transition screw inside the hotend?

This is a typical sign, that your hotend wasn't tightened properly. Carefully heat it up and remove all the plastic you can while removing the heatbreak - that's what you call transition screw.

After cleaning, screw in the heatbreak and the nozzle. The nozzle should butt agains the heatbreak, but have at least 2 threads to the heating block. Reassamble the full hotend now by adding the coolend.

Finally heat the hotend on the full assembly to about 240 °C and tighten the nozzle against the heatbreak again. This is called hot-tightening. You can add the PTFE liner after the hot tightening.


Updating an Ender 3 V2 I recently got an Ender 3 V2 and when I go to Info -> Version it says V1.0.0. However online, there is V1.0.1 available.
How can I update the Ender 3 V2. It is different as it isn't a ATMEL chip like the ATMEGA 2560 but rather an ARM processor. I own many arduino boards but apparently the chip has the bootloader already on it.
So how can I update the board, through some uploader, specific software or what exactly.

After looking around for a bit in Cura. You can update it via Cura.
Start by going to your printer -> Manage printer
Then there is the option to update firmware. You must plug the printer in first.


Why does my printer create notches on the Y surface? Here is an extreme example of notches caused by the printer. They go along all sides but are the strongest on the Y faces. They also happen quite randomly sometimes they are tiny sometimes they are strong.

I have tightened the belts already and while that reduced the ghosting on the X face a lot, it did nothing on the Y and actually never helped with the notches. This test cube has notches and ripples too but not that strong (the skirting on the bottom of that cube is my fault I set the bed level a little too low).

All models have been sliced with Ultimaker Cura and printed on an Anet A8. Flow = 110 %, layer height of 0.1 mm for the first example and 0.2 mm for the cube, printing temperature = 195 °C, no change on jerking and acceleration from default settings. Cube size = 20x20x20 mm.

The printer has frame support https://www.thingiverse.com/thing:1672959 but no other upgrades yet.

I see two problems with your printer: your filament seems to overheat in some areas, and you overextrude a little. My suspicion is, that your heating behavior is not well tuned and it overshoots the target temperature, leading to an overcooked filament, then the temperature drops below the temperature you need, leading to a wavy pattern and brown lines.
fixing
I suggest running a PID-tune cycle to get better heating behavior and then recalibrating the printer's extruder.


Use SLA 3D printing to make a flexible mold I have seen some videos like this one, that uses 3D printing to make a piece that will be used to make a silicone mold that will then be used to make the final object made of some resin.
Isn't possible to make the mold directly from the 3D printing process?
I want to make an object (that's actually another mold to make tofu) using a flexible mold. Can I use 3D SLA printing with a flexible material such as this one and then use it to make my final mold made of some liquid resin? Also, do you have any suggestions about food grand liquid resin or similar?

Background
SLA relies on the properties of UV-curing Resin. Most currently available UV Curing Resins harden to a solid, hard polymer, but that doesn't mean there are no other UV curing resins that are elastic. Most however will not be suitable for SLA or DLP systems!
Polyurethanes, which can be flexible if cured in the right way, have not come onto the market as suitable SLA/DLP printing material and up to now, I have only found one UV hardening resin on the market - the one offered by FormLabs and identified by OP
Patent History
Indeed, elastic resins are actually quite new. The first patent I could find for an elastic resin was 2003 for an elastic epoxy resin, while subsequent elastic resins were brought to Patent are different like the 2007 elastic olefin resin. In fact, there is a 2013 US patent on SLA Resin, which is still in effect. As a result of such patents being still in effect or just out of protection times, the market is still very much limited because most manufacturers simply lack the knowledge of how to do it or the licenses to be allowed to do it. In fact, Formlabs is named on 43 patents for 3D printers and accessories, of which only 1 is expired as of July 2020. I could not identify the patent that might be in use for their flexible resin, but the marketing material is of May 2020, so it is relatively new on the market and might not have been updated into either the patent database or FormLabs did buy an exclusive license for the material from someone else, meaning they will not show up as Assignee in it. Or it is kept a trade secret.
Material implications
The printed mold will probably be of a different stiffness than a cast mold as you work with a totally different material and your new molds might degrade at a different speed than urethane or latex cast molds. To get a feel for this this, you will need to run some experiments. As FormLabs hands out test specimens of their print materials, you might order the two flexible ones and then test their stiffness and suitability for your uses by having them interact with your casting resin and seeing if they break down and if you can remove them easily.
Food grade
Generally don't consider anything that comes directly from a 3D printer certifiable food safe, as you need to have both a process and a material that is food rated. There are ways to use the resulting parts to manufacture food safe objects, but that's elaborated for example in some of the questions I suggest to look into


Can K-type thermocouple disconnects be used with thermocouple based 3D printers? I currently have a Replicator 2 and a couple of clones. I'm a fairly experienced 3DP user and builder but one issue that I have over and over again is the very brittle screw type thermowell assemblies that get damaged whenever you try to replace a nozzle or repair your hot end.

I'm wondering why I don't see more of the quick connect type thermocouple assemblies, like this K-type male.

It would be a great help on 3D Printers allowing easy disconnect of screw type thermowells without damaging them. Is there a reason that these are not being used?

I was hoping someone with experience with these could tell me if they are worth trying out on some of my builds without risking some kind of dangerous situation.

Not sure if this is the reason, or just A reason, but thermocouples create a pretty small voltage for a given temperature, whereas thermistors have a larger (easier to read) change in resistance. I would expect that a thermocouple would require slightly more sensitive instrumentation to read it than a thermocouple. And seeing as space requirements aren't that significant on a 3D printer using the easier to read thermistor, despite its size, seems like the better option.

I prefer thermocouples myself, since they don't need calibration and effectively lifetime guaranteed (aside from mechanical failure). However almost every project I've ever worked on, the Sparkies always seem to push for thermistors rather than thermocouples.


Three RAMPS boards wasted by plugging in a heated bed I have a DIY 3D printer. Everything works fine except the heated bed. When I plug my heated bed to the D8 terminal smoke comes out.
This is my third RAMPS board that I have had this problem with. After it burns the RAMPS still works but the heated bed doesn't stop to heat. I am using a 12 V 30 A power supply.
Is it something about my power supply?

It could be a couple of issues:

the heated bed tries to use more power than the ramps board is capable of because the traces on the board aren't big enough to get rid of the heat.

the thermistor is broken / not properly connected or configured, and it keeps on heating the bed forever.

a short somewhere in the wiring.

My advice:
Check the wiring. If there is no short, check your thermistor. Is it reporting the right temperature? If it reports the right temperature, try using a external mosfet module for the heated bed. These are fairly cheap, and easy to connect.


What makes an extruder right handed? I have been looking to buy a new extruder. One of the options I have seen comes in "right handed" and "left handed".  What does this mean? How can I tell what my current extruder is, so I get the right replacement?

This is an example of a right handed extruder setup:

And this is an example of a left handed extruder setup:

I believe that you can can choose whatever one you favor. With the right handed setup, you will be pushing down the red part with your right hand when inserting filament. With the left handed setup, you will be doing the same thing but then with your left hand. Personally, I favor the right handed setup (my right hand is my dominant and stronger hand). But, you should be able to choose whatever one you like! Be sure to check it will work with your printer though (extruder holder & hotend).


Filament consistently jamming / clogging in Bowden tube on MP mini 3 I've had this MP Select Mini III for years and years. Lately it's consistently jamming/clogging somewhere between the hot end and the PTFE tubing - but not right away, often when it starts getting to the infill layers.
If I don't catch it in time, the filament twists and twists until even the Bowden tube is clogged (and then it's a whole lot of trouble to clean out).
My temperature has been wobbly of late, so I bumped the temps higher than usual (200-210 °C for PLA) thinking perhaps it was dipping low for a spell and allowing it to cool.
Is this the end of the road for this cheap little guy that has been a solid workhorse or are there some known fixes that I should consider?

If you have it for years, have you ever replaced the Bowden tubes and hotend liner? This printer might be in need of some dire maintenance.
Also check if the Bowden tube is securely fixed, if infill starts, it might be retraction that is giving problems by lifting the tube alongside the rectracted filament.


Cooling for big layers There is an option in Slic3r to disable cooling for layers that take more than n seconds.

What would be the disadvantages of having cooling on big layers ?

Warping. Especially with materials like ABS, you want the plastic to cool down as gradually (and slowly) as possible, to prevent the print from warping as the cooling plastic contracts. On small layers, cooling is usually mandatory: with really small layers, you just end up with a big glob of molten plastic if the previous layer hasn't solidified enough before the next layer is put on top.

You want just enough cooling that the plastic holds its shape, but no more than that. On a large layer, the plastic cools enough naturally without help from a fan.


Are there any methods of limiting exposure of hazardous fumes and odors emitted by heating the plastics? When using thermoplastic-filament, this can be potentially hazardous, since constant printing can emit hazardous fumes and odors that may be emitted by heating the plastics.

I understand it normally should be used in well ventilated areas. However I would like to use it heavily in the basement which is not well ventilated.

Are there any practical methods of limiting such exposure? For example locking it in some special box, covering it or suck the odors? Would that help?

Do you have any experience doing so?

Using negative pressure ventilation and a suitable organic filter will limit your exposure to toxic compounds, but won't completely remove them from your environment.

Enclose your printer in as air-tight a box as you can manage, then use a fan to suck air out of the box.  This negative pressure will ensure that any leaks in the box will not allow gasses to escape.

The air should be blown through an organic filter.  This might be done with face mask filters for painting, for instance.

Additional filtering may be done depending on the compounds you expect the printer to produce, but the ideal situation is to set up a ventilation system to the outdoors where the products cannot concentrate and harm anyone.

Another poorer option is to simply wear a proper organic filter mask yourself.  It's not as good, since the compounds can spread through your residence or remain in the air and be inhaled when you aren't printing.


Prusa XI3 not printing correctly with Repetier Host I have a HE3D Prusa XI3 Specs are linked here. Its came with a MK8 Extruder, and  I ordered the 0.3mm nozzle with it. I have Repetier v.91 loaded onto the printer right now, and Repetier-Host v1.5.4 on my computer. I have been able to print the test object that came on the SD with ok quality but when I switch to using the computer it just doesn't work at all. It starts up and heats the bed and extruder then zeros out the axis. After coming to temp which I set to 192c for the PLA plastic and bed temp of 60-65c it tries to print. Now comes my problem. It acts as if not enough plastic is being extruded. It doesn't even get the first layer down then when the second layer comes up I notice that there is plastic balling up at the end of the nozzle. So I decided that I should must with the settings in Repetier-Host to see what I could come up with. In printer settings I got everything set up besides the Max Volume Per Sec. How do I figure this number out? I also messed with the settings in slic3r to see if that helped but I didn't notice any difference. I am also using 1.75mm PLA If that might be needed.

In order to try a short answer even though you already found a change to Cura helped the issue. With that additional info we can conclude that your printer per se is working fine. To me, if the plastic is curling up to a ball, it seems that you are either having

a wrong temperature set
wrongly calculated e-steps, volume calculation (filament diameter) or multiplier in the firmware
additional first layer parameters are off (height, offset, extrusion)

You can try to set the extrusion multiplier just to test if it is a simple miscalculation.


Printing multiple prints stacked on top of each other Suppose I want to to print several copies of a large, flat object, such as a hollow frame. If I make an STL file consisting of several copies floating just above each other then my 3D printer's software happily generates supports for the upper objects to sit on, as shown below:

My question is, is this a crazy idea? If it will work it seems it has several advantages. I can print more copies at once than if I tried to fit them next to each other on the platform, and if one of the prints fails the ones below it will still be OK. It doesn't take that much more filament than printing them all separately.

I'll probably try it at some point just to see what happens, but it's not something I've heard of people doing before, so I'm wondering if there's a good reason why it won't work or would otherwise not be a good strategy.

If you can get it to work reliably and with decent quality, it would be a good solution. However, you might find it unreliable and the bottom surfaces of the objects might not turn out very nice (as is usually the case with overhangs that needs support). How well this will work is strongly dependent on the object being printed, and this probably will only work for a very small class of objects.

You don't gain much by doing this, as printing multiples "at once" isn't much faster compared to printing them sequentially (that is, if you have time to check on your printer and reset it between prints).


How to build CuraEngine? I've been trying to build CuraEngine on Ubuntu following the Github instructions.

The problem is that it lists some requirements:

Clone the CuraEngine repository;
Install Protobuf (see below);
Install libArcus.

I'm not sure where should I install Protobuf and libArcus. After several tries and locations I've received several errors during the build process.

Does anyone have a more detailed guide on how to build this engine?

I'm assuming you actually want to build Cura, rather than simply install Cura. If you instead want to install Cura, you can try sudo apt-get install cura-engine

The following instructions were tested on my own Debian 8 (Jessie) distribution; they should be mostly, if not entirely, the same, for Ubuntu. Note that I did not follow the exact steps as described on the github/Ultimaker/CuraEngine README.

Before we begin, let's make a build directory and do everything in there.

mkdir ~/Downloads/curabuild
cd ~/Downloads/curabuild

The instructions will be broken into

1. Install dependencies

Some or all of these may already be installed on your computer. To be sure, we install them anyways:

sudo apt-get install git curl libtool dh-autoreconf cmake python3-setuptools python3-dev python3-sip sip-dev

2. Install protobuf

Clone and enter the protobuf git repository:

git clone https://github.com/google/protobuf
cd protobuf

Build and install for C++:

./autogen.sh
./configure
make # this will take some time
sudo make install

Install for Python 3:

cd python
sudo python3 setup.py install

3. Install libArcus

Clone and enter the libArcus repository:

cd ../..
git clone https://github.com/Ultimaker/libArcus
cd libArcus

Build and install

cmake .
make
sudo make install

4. Install CuraEngine

Clone and enter repository:

cd ..
git clone https://github.com/Ultimaker/CuraEngine
cd CuraEngine

Build and install

cmake .
make # grab a cup of coffee
sudo make install

5. Celebrate!

If all went well, you're done! You can now use the Cura engine via CuraEngine. Enjoy.


Do printer controllers take inertia into account when interpreting G-code into movement instructions? I've never built a 3D printer before, but I understand dynamical systems and control theory, and I imagine a lot of the distortion/inaccuracy that happens during the FDM process (especially at high speeds) is due to position inaccuracies because of inertia. For example, a heavy print head moving fast enough might overshoot its position target if the system expects it to stop instantly. Does any existing 3D printer controller software try to measure the mass of the print head/movement assembly and then use that to come up with better movement instructions?
To speculate a bit: This additional accuracy might not be useful with many normal stepper-driven printers because they lack resolution and/or control, but I think in some cases it would. I imagine with enough positional accuracy and acceleration control you could model the print head position with a dynamical system and get extremely precise movement right up to the mechanical limits of the system.
Am I wrong that inertia has a large effect? Would this be theoretically impossible for some reason I'm not thinking about?

Stepper motors "want" to keep their position as they are told to by the firmware, therefore they do whatever it's needed (accelerate and brake) to follow the orders they received.
The question is: is the firmware telling them to move/accelerate/brake faster/harder than they can? if yes, they won't keep up (because of inertia and much more) so you'll see artefacts. If not, they will follow the orders exactly (well, mostly, but it's not important now) and no distortions will be there.
Whether they keep up or not is up to you: you are setting their power (the motor current) and you are telling them how fast/hard to move/accelerate/brake. If you push them too much, the motors will try... and fail to keep up. That's why you have max acceleration, speed, jerk in the firmware and in the slicer.
Additional info: even if the motors keep the position as they are told to, the motors have no knowledge of anything past them: belts, leadscrews, and so on.
Imagine the X axis belt (which connects the motor to the printing head) is made of an elastic band: the motors will be where you order them to be, but the inertia of the printing head will stretch the elastic band and the printing head will NOT be where you expect it to be.
It is again up to you to reduce the max acceleration to a value below what the motors could be able to do, if needed. Motors are often not pushed to their limit also because other factors cause issues before the motors fail.
How to know how much to limit the acceleration and speed? the only way is trying.


Extrusion adjustment I recently started to use Simplify3D! It is great software, but I have a problem with adjustment of amount of plastic extruded. I have a slight under extrusion after I adjusted amount of plastic extruded using  perimeter test (Printing a square with wall thickness of one layer, measuring, adjusting extrusion multiplier). I suggest that there is under extrusion by looking at top layer (there is distance between layers) and there are gaps around holes as well. I'm using Ultimaker two and colorFabb filament. I can resolve problems by increasing extrusion multiplier, but then I have incorrect layer width :/
I have also attached picture. http://postimg.org/image/keghmu075/ On a right side, there is a part with correct extrusion multiplier (under extrusion).
Maybe you guys have some ideas?

SHORT ANSWER

You're not supposed to do the single-wall perimeter thickness test to calibrate Simplify3D. That screws up the extrusion volume. The correct volume calibration procedure for S3D is:

Measure actual average filament diameter and input that
Print a 100% infill calibration cubes
If the print is over-extruded (top or sides bulging), decrease Extrusion Multiplier by about 0.05 and try again. If the print is under-extruded or looks clean, increase Extrusion Multiplier by about 0.05 and try again.
Repeat as needed to dial it in. The correct value of Extrusion Multiplier is the largest value that does not produce over-extruded prints. This produces minimum void volume and strong parts.
In the future, that specific material+extruder combination will always have the same extrusion multiplier. You only need to measure and input filament diameter and you will always get accurate volume output. (And if you use high-quality filament with consistent diameter, you don't even really need to measure the diameter.)

If you really want to measure perimeters, you can do 3 perimeters and divide the measurement by 3. That takes into account most of the overlap and will be much closer to accurate than a single-perimeter measurement.

COMPLETE ANSWER

The goal here is to fill the print volume as completely as possible (at least in the "solid" parts of the print like perimeters, roofs, and floors). Empty space between strands doesn't contribute to part strength. In fact, voids act as failure initiation sites by concentrating stresses. Because extruded strands come out with rounded edges, they have to be overlapped to squeeze plastic into gaps and minimize "corner voids." That looks like this:

Where the bulges overlap, the excess plastic gets pushed into the corners to mostly fill the voids. It's very difficult to get 100% packing density, but you can get pretty close if you calibrate volume correctly.

You DO NOT want to space the strands without overlap. That makes very weak prints and looks like this:

To get the right amount of strand overlap, the slicer has to do some math and make some assumptions about how you're calibrating it. This is not uniform between software packages. So it's important to understand what "extrusion width" means to different slicers. For a couple prominent examples:

Slic3r treats "extrusion width" as the measured outside dimension of a stack of strands. Adjacent strands are then positioned closer together than the nominal width according to a somewhat complicated equation to get sufficient overlap for bonding.
S3D treats "extrusion width" as the average width of the stack of strands, which is the equivalent width if the plastic strands were extruded as ideal rectangles instead of a stack of ovals. Adjacent strands are positioned 1x nominal extrusion width apart. That provides the correct amount of overlap without any extra math. But each individual strand is really somewhat wider than the nominal "width."

Both of these techniques can produce the exact same output if calibrated properly, but they require different calibration techniques because they calculate the plastic volume and adjacent strand spacing different ways.

It's important to understand that S3D spaces its strands 1x extrusion width apart. When you use the measured perimeter thickness to calibrate Simplify3D for extrusion width setting = measured thickness, you get under-extruded prints with no strand overlap. S3D's strands must measure wider than the "width" setting to get the correct overlap.

In practice, S3D's code is smart enough to know how this affects print dimenions, and will adjust perimeter positions to get accurate overall dimensions. But single-wall test boxes will be thicker than expected.

The downside to the way Slic3r calculates volume is that it is only accurate for strands that are shaped like ovals. And that is only an accurate assumption when [extrusion width > nozzle width + layer height]. The strand must be wide enough for molten plastic to flow sideways and develop the circular bulge cross-section. So people almost always print with wider strands in Slic3r than is strictly necessary. The volume calculations don't work all that well with thin strands. Whereas S3D's volume calculation method works fine with pretty much any extrusion width greater than layer height and greater than nozzle diameter.

There are pros and cons to both systems. You just need to understand the correct calibration technique for each.


3d printer recommendations that can print fidgets? I am looking for a cheap 3d printer that can print this: https://www.thingiverse.com/thing:1307100 and is hopefully under US $200, such as the Creality Ender 3, Monoprice Select Mini Pro and V2, the Wanhao Duplicator i3 mini, the Anet A8, or the tronxy p802ma.

Pretty much any recent commercially available 3D printer should be able to print that model. Only really old stuff, or poorly built DIY machines, might have trouble. It may take some tuning of slicing settings to avoid problems with the rings bonding together during printing, but a more expensive printer is unlikely to make the tuning any easier.

The printers you listed in the question are probably all decent choices. I have an Ender 3 and like it but it's a little over \$200. There are some printers well under \$200, like the Monoprice Mini Delta, but I don't have any experience with them and product recommendations are off-topic here anyway. Also keep in mind that you'll have to spend a little bit on consumables, at least one spool of filament that's typically around \$20 (slightly cheaper for no-name brands, much higher for fancy color/shine/etc. or special materials, but simple PLA should be fine for what you want).


How to set Z-probe boundary limits in firmware when using automatic bed leveling? In setting up a probe for automatic bed leveling, the limits of the probing area must be entered in the firmware of a 3D printer.

When using a sensor, how do you define the bed limits for the sensor in Marlin firmware?

E.g. the Marlin (1.1.x) configuration.h contains the following inactive statements:

  // Set the boundaries for probing (where the probe can reach).
  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - MIN_PROBE_EDGE)
  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - MIN_PROBE_EDGE)

How do you set the values for the constants of your custom setup? Is this generic or specific?

Probe positioning is defined in the Marlin configuration as:

 *      +-- BACK ---+
 *      |           |
 *    L |    (+) P  | R
 *    E |           | I
 *    F | (-) N (+) | G
 *    T |           | H
 *      |    (-)    | T
 *      |           |
 *      O-- FRONT --+
 *    (0,0)

The probe could be placed with a positive or negative X and Y value. Considering this position, how to setup the sensor bed limits?

There are a few questions on this topic, so a more generic solution would be informative and will prevent multiple questions of others when their sensor has a slightly different location. This answer intends to cover any position with respect to the nozzle. It also does not matter what kind of sensor it is, it can be 3DTouch, BLTouch, inductive, capacitive, etc., as long as you are able to determine the offset to the nozzle (center to center).
For now, it is assumed that the nozzle can only reach the complete area of the bed, no extra space. So unless the sensor runs of the bed, the nozzle limits are used, otherwise the sensor limits the nozzle with respect to the sensor limits. This is the safest assumption and will prevent the carriage running into the end mounts. But if there is more room for travel, an additional offset may be added to the limits.
First, determine the offset of the sensor (e.g. by measurement or taken from the information of the printable sensor bracket found many share sites on the internet; Thingiverse is a good source for such brackets).

HINT for Marlin 2.x
Note the version (branch) of Marlin! The answer is written at the time of the 1.1.x branch and as such is perfectly valid for the latest 1.1.x (1.1.9) version. For the 2.0.x branch of Marlin, different constant names are in use, and a different strategy is used (more simple for setting up). The constant names are not found in the Configuration.h, the answer (and the theory) is still helpful. Constant probe offset values are now found in Configuration_adv.h:
MIN_PROBE_EDGE_LEFT
MIN_PROBE_EDGE_RIGHT
MIN_PROBE_EDGE_FRONT
MIN_PROBE_EDGE_BACK

HINT for Marlin >= 2.0.6
Since version2.0.6 MIN_PROBE_EDGE_* has been renamed again.
Now it is:
PROBING_MARGIN_LEFT
PROBING_MARGIN_RIGHT
PROBING_MARGIN_FRONT
PROBING_MARGIN_BACK

Note that in Marlin 1.1.x the boundaries are set in absolute positions while in Marlin 2.0.x it is described in offset values from the bed edge.

Sensor Offset
The position of the sensor is set using the following constants:

#define X_PROBE_OFFSET_FROM_EXTRUDER [XXX]   // X offset: -left  +right  [of the nozzle]
#define Y_PROBE_OFFSET_FROM_EXTRUDER [YYY]   // Y offset: -front +behind [the nozzle]

where [XXX] and [YYY] are offset values that specify the center of the sensor with respect to the nozzle. If both are positive values, the sensor is located in the back-right, if both negative, the position is front-left (as seen from the front of the machine using the definition in the Marlin configuration file). The other positions that are possible are the back-left and the front-right (one positive and one negative value).

HINT for Marlin 2.x
Note that in Marlin 2.x, these constants are replace by an array definition:
#define NOZZLE_TO_PROBE_OFFSET { XXX, YYY, ZZZ }

Where ZZZ is the Z offset. If you use the old constants, the sanity check upon compiling will throw an assertion that these constants are not in use anymore and should be removed.

Second, let's set the sensor area limits!
Sensor Area Limits
In the following images, the nozzle, the sensor and the offsets are defined by:

There are four possible positions of the sensor, this results in the following schematics for the sensor area limits (transparent red area):
1. Sensor at the back-right:

This implies that the sensor can reach the back and the right borders, so the limits are set by:

#define LEFT_PROBE_BED_POSITION (X_PROBE_OFFSET_FROM_EXTRUDER)
#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE)
#define FRONT_PROBE_BED_POSITION (Y_PROBE_OFFSET_FROM_EXTRUDER)
#define BACK_PROBE_BED_POSITION (Y_BED_SIZE)

Note that if a minimum probe offset is defined by #define MIN_PROBE_EDGE [value]  in the configuration (to account for sensor width/dimension), the bed limits are changed resulting in (where t = MIN_PROBE_EDGE):

Limits are then set by:

#define LEFT_PROBE_BED_POSITION (X_PROBE_OFFSET_FROM_EXTRUDER + MIN_PROBE_EDGE)
#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - MIN_PROBE_EDGE)
#define FRONT_PROBE_BED_POSITION (Y_PROBE_OFFSET_FROM_EXTRUDER + MIN_PROBE_EDGE)
#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - MIN_PROBE_EDGE)

In the following sensor position placements, this offset for MIN_PROBE_EDGE will be accounted for.
2. Sensor at the back-left:

This implies that the sensor can reach the back and the left borders (for zero MIN_PROBE_EDGE), so the limits are set by:

#define LEFT_PROBE_BED_POSITION (MIN_PROBE_EDGE)
#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE  + X_PROBE_OFFSET_FROM_EXTRUDER - MIN_PROBE_EDGE)
#define FRONT_PROBE_BED_POSITION (Y_PROBE_OFFSET_FROM_EXTRUDER + MIN_PROBE_EDGE)
#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - MIN_PROBE_EDGE)

3. Sensor at the front-left:

This implies that the sensor can reach the front and the left borders (for zero MIN_PROBE_EDGE), so the limits are set by:

#define LEFT_PROBE_BED_POSITION (MIN_PROBE_EDGE)
#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE  + X_PROBE_OFFSET_FROM_EXTRUDER - MIN_PROBE_EDGE)
#define FRONT_PROBE_BED_POSITION (MIN_PROBE_EDGE)
#define BACK_PROBE_BED_POSITION (Y_BED_SIZE + Y_PROBE_OFFSET_FROM_EXTRUDER - MIN_PROBE_EDGE)

4. Sensor at the front-right:

This implies that the sensor can reach the front and the right borders (for zero MIN_PROBE_EDGE), so the limits are set by:

#define LEFT_PROBE_BED_POSITION (X_PROBE_OFFSET_FROM_EXTRUDER + MIN_PROBE_EDGE)
#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE  - MIN_PROBE_EDGE)
#define FRONT_PROBE_BED_POSITION (MIN_PROBE_EDGE)
#define BACK_PROBE_BED_POSITION (Y_BED_SIZE + Y_PROBE_OFFSET_FROM_EXTRUDER - MIN_PROBE_EDGE)

This should have tackled the basics for defining the sensor area limits. It becomes a little more complicated when there is extra travel space. A very easy use of extra travel space can be found in the configuration file; e.g:

// Travel limits (mm) after homing, corresponding to endstop positions.
#define X_MIN_POS [XX]
#define Y_MIN_POS [YY]

where [XX] and [YY] are offset values from endstop to origin (orange arrows represent X_MIN_POS and Y_MIN_POS):

Results in offset constants for a back-right probe:

#define LEFT_PROBE_BED_POSITION (X_PROBE_OFFSET_FROM_EXTRUDER + X_MIN_POS + MIN_PROBE_EDGE)
#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - MIN_PROBE_EDGE)
#define FRONT_PROBE_BED_POSITION (Y_PROBE_OFFSET_FROM_EXTRUDER + Y_MIN_POS + MIN_PROBE_EDGE)
#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - MIN_PROBE_EDGE)

For all other options, a similar addition of the homing offsets can applied.
A similar addition is possible if the print head is able to travel further on the X or Y axis at the other ends of the axes.

Thoughts for solution for Marlin 2.0.x
As I mentioned earlier, Marlin 2.0.x uses bed edge offsets rather than absolute positions. In analogy of the previous graphs we can draw a bed limits diagram (the example below assumes a back-right mounted probe!):

Note that the offsets from the edge need to be defined, to properly do this we need access to the definition of the nozzle offset:
#define NOZZLE_TO_PROBE_OFFSET { XXX, YYY, ZZZ }

As this is the part that defines the array values, you first need to make an array (note that this is a simple solution that many people should be able to understand with limited programming skills, more elegant solutions use the XYZ struct to access the X, Y or Z properties):
Note that Marlin 2.0.x automatically adjusts your probe area based on the defined offset and the MIN_PROBE_EDGE defined for all 4 sides of the bed.
see:
#if PROBE_SELECTED && !IS_KINEMATIC
  #define MIN_PROBE_EDGE_LEFT MIN_PROBE_EDGE
  #define MIN_PROBE_EDGE_RIGHT MIN_PROBE_EDGE
  #define MIN_PROBE_EDGE_FRONT MIN_PROBE_EDGE
  #define MIN_PROBE_EDGE_BACK MIN_PROBE_EDGE
#endif


G28 ignoring Z-Probe X/Y Offsets I recently installed a SKR 1.3 Board with a 3DTouch-Probe on my Creality Ender 3 Pro.
The probe works, G29 does its magic, but:

If i issue a plain G28, the hotend first homes X and Y like before the Z-probe.
The probe is now next to, not above, the bed.
As the next step, the printer is supposed to home the Z-axis. The probe deploys and Z starts to lower until it smashes into the bed, because the probe misses the bed (if I don't stop it, that is).

I configured X/Y offsets for the probe, but they don't seem to be honored when performing the G28 code.

If I home X/Y "manually" with G28 X Y, move the hotend with like G1 X45 Y10, then home Z with G28 Z it works fine.

What did I miss? Is this intended behaviour & the user has to take care never to issue a plain G28?!

You need to enable the constant Z_SAFE_HOMING (like: #define Z_SAFE_HOMING) in your printer configuration file (if you're using Marlin firmware that is). This will move the nozzle to the middle of the plate prior to lowering the nozzle by default:

#if ENABLED(Z_SAFE_HOMING)
  #define Z_SAFE_HOMING_X_POINT ((X_BED_SIZE) / 2)    // X point for Z homing when homing all axes (G28).
  #define Z_SAFE_HOMING_Y_POINT ((Y_BED_SIZE) / 2)    // Y point for Z homing when homing all axes (G28).
#endif


Print only part (fraction) of a model I've made a 9H-printing model tonight, and only a little part of it failed (because a support dropped off). I want to reprint only that little part.

How can I do that in Cura? How can I tell Cura to generate a gcode file so only that little part (inside the transparent cube below) will be printed?

I've placed the model upside-down on the Cura plate to "cut off" what was well printed. I've made a simple 3D cube model in Blender and placed it so it intersect with the part I want to print (I've set the "mesh type" of that cube to "don't support overlaps" for that). I've tried using "Mesh fixes: disable Union Overlapping Volumes" and the "Merge meshes" option, but the merge aligns the cube origin and the model origin (which I don't want).

What's the proper way to do such partial printing?

The latest version of Ultimaker Cura can do that (version 3.6).

I have built models made of different material in the same model.

How to do this is:

Select your CUBE and select the icon "Per Model Setting" in left side menu.
choice "Normal model", select the following settings: Top/bottom thickness, wall thickness and infill percentage
Very Important: all above settings must be set to 0!
Select the model you desire to print and select the icon "Per Model Setting" in left side menu
choice "Modify settings for overlap with other model" and select the following settings: Top/bottom thickness, wall thickness and infill percentage
Select the desired infill percentage and the wall top/bottom thickness for the portion you want print
slice the model

Note: If you need to print supports, then in step 2 select "Modify settings for infill of other models" (instead of "Normal Model"), and in step 6 also select "Add Support" and any other support related parameters you may need. However, Cura needs at least one "Normal Model" to slice, so to fool it you need to also another Cube as "Normal Model" with the parameters of step 4 somewhere else in your build plate (it won't really print).


Setting up UBL for the first time on Marlin 2.x on a Prusa i3, how often should I level the bed using G29? I used to use the Marlin 1.x software that would level the bed by probing the 4 corners of my print bed (a long time ago, it's been at least 2 years since I used my printer, wasn't able to set it up after I moved).

My slicer had G-code that would kick off a level at the beginning of every print.

I've upgraded to Marlin 2.x and now I'm setting up UBL. It takes quite a bit of time to probe the bed with UBL, like 10 minutes. The steps tell me to save to EEPROM and my firmware is set up to restore after every G28 (Home).

How often should I do a G29 (Bed Leveling)? Should I do it every print? Every 10 prints? 100 Prints? Or when I see that the print isn't sticking to the bed?

EDIT: I went from a Grid-style ABL to UBL because UBL merges the benefits of a few different leveling techniques so theoretically it should be better. I understand I could just go back to grid-style bed leveling but even when it was working, for some reason the z-offset would shift ever so slightly every few prints and I would have to change configure it in my slicer. I'd like to try UBL and see if I can leave my printer for a while without having to fidget with the Z-offset.

This is more of a personal preference type question rather than something with a hard and fast rule.

You should not need to relevel your bed very often unless you have some external force that regularly changes the bed level.

I regularly print objects that take 24+ hours to print, so a 10 minute process prior is not much so it might be worth it to set it up every time if your prints run very long. If you mostly print smaller or quicker to print objects, 10 minutes might matter to you.

I have noticed that my prints fail pretty quickly if I have a leveling issue, and it's not hard to stop the print, clean the plate and relevel at that time.

What should you do?

If 10 minutes doesn't matter that much, go ahead and relevel with every print. If it matters, wait until you start to have issues. See how long it takes for your bed to become unleveled and use that as a guide. E.g. if you can print 10 times before having issues, then try setting it for every 6 or 7 prints.