Is it safe to use a 3D printed icing smoother? I want to 3d print my own icing smoothers, but I'm not sure if its safe to have plastic from a 3D printer in contact with cake icing. Is there any harm in this?

As mentioned, FDM 3D printed parts are flawed for food service and prep use regardless of the material, because of the small gaps between lines where bacteria can grow, and because your printer isn't used in a way to keep it from introducing contaminants into otherwise clean material.
However, there are some ways around this.
Single-use
I'm pretty comfortable using my printer to make items for one time use. If I wanted an icing smoother with a fancy shape for a special cake that I'm not likely to need again soon, I'd go ahead and do that. I would apply all the icing at one time, and then I'd discard the piece, rather than try to clean and save it. Also note that I'm not talking about a commercial kitchen; this would be for a cake I'd eat myself with friends, rather than sell.
The big thing I've done this way so far (I've had my printer less than a year) is make shaped cookie cutters. I'll print the cutters, use them, and then throw them away. If I want the same shape again some time, I'll re-print.
Lining
The other thing you can do with food prep items is print them with the intent to use liners. For example, here is a 3D-printable taco train, where a train car has grooves to hold  tacos (yum!). It wouldn't be good to put a taco directly in here, but you could use napkins or similar food-safe liner to separate the 3D part from the food. In the case of the icing smoother, you might be able to print the part and wrap it in aluminum foil.


Can 3D printers print details in the 1/10 of the micrometer for metals? I'm starting to get familiar with 3D printers. I wish to know if printing details the size of 10-7 m (3.9*10-6 in) is possible these days with metals or any other material.

If anyone has information or articles as leads, I would really appreciate it.

You can get the 0.1 micron (100 nm) resolution with a 2-photon 3D printer, but only in a polymer resin.  Nanoscribe, in Germany, pioneered this technology, see Mechanical Microstructures.

Their commercial printer, the Photonic Professional GT, is about $350,000 US with software and accessories. There is some work being done to replicate the 3D printed polymer in metal using electroless plating or ALD (atomic layer deposition).  Other techniques are in development.

None of the direct metal 3D printing processes come close to your 0.1 micron resolution, although the field is rapidly evolving.  Only a couple of years ago, direct metal 3D printing was all based on powder bed fusion.  Now binder jet technology as been adapted to metals and, very recently, Xjet has developed a nanoparticle 3D printer. It prints "ink" composed of metal or ceramic nanoparticles suspended in a liquid.  The minimum layer thickness is 1 to 2 microns.  They have not released XY resolution data yet.

A good overall reference for the various 3D printing techniques (including Xjet, but not Nanoscribe) can be found at Explaining The Future - 3D Printing.


Export firmware as a .hex Because .hex files can be installed without any need of an Arduino (serving as an ISP) to flash the firmware on Creality machines I was wondering, if firmware compiled via some other means (for example the Repetier firmware or Arduino) could be exported as a .hex file.

Current versions of Arduino IDE

Use the menu option in the Arduino IDE:

Sketch ► Export Compiled Binary

See post #6 from the thread How to get hex file from arduino files ?:

  Well, since it was bumped it's worth mentioning there is a new way to
  do this added in Arduino IDE 1.6.5:

  Sketch > Export Compiled Binary
  If you are doing this with an example then you will be prompted to save the sketch in another location.
  Wait until the sketch has finished compiling.
  Sketch > Show Sketch Folder
  The .hex file will be in the sketch folder

Here is a screenshot for OS X:

There is no need to fully compile, a simple verify will suffice. From post #10:

  Reopen Arduino, and open a sketch of your choice (use the Examples->Digital->Blink if you have no other sketches). Hit the Verify button to compile the sketch. Now, navigate to the build.path folder. You should see a bunch of files including one with a .hex extension.

Older versions of Arduino IDE

If using an older version of the Arduino IDE, from post #12:

  Try this if using an older version of Arduino

  Taking out HEX file from Arduino in 3 simple steps

Open Arduino IDE
File ► Preferences menu

Find "Show verbose output during " and check the "compilation" box
Locate the preferences.txt file and open it
Add the following line (this is the path to the directory where the hexfile will be stored):

build.path=C:\Users\<username>\Desktop\hexfile

Change the following line

export.delete_target_folder=true

to

export.delete_target_folder=false

Quit the Arduino IDE and restart it.
Now when you compile, the directory specified in build.path will contain the .hex file (along with other files which can be ignored)


Step motors vibrate, don't move at all (Prusa I3) Recently, I changed my RAMPS 1.4 card (because there was a problem with the power output).So I bought this new one, and an Arduino Mega.I didn'T change the code (Marlin 1.3.3).I used the same stepsticks (a4988).I plugged my motors to the Ramps card. When I give them the command to turn they started to turn but didn't stop.Stepsticks got hot.After some time I tried it again and they just vibrated.The stepsticks got insanely hot after just 5-6 seconds.I used a different stepstick RAMPS card and Mega, they worked perfectly.But when I plugged the stepstick to the new card, the motors did te same thing again. What can be causing this and how can I fix it?
(I've measured the voltage input, it is 12V and stable)

Usually if they get too hot you have to adjust the amperage by turning the little potentiometer on the A4988 (turn left until you can move the motor by hand, turn right until you cant, add a little bit like 1/8 to 1/4 of a turn).

But this:

  I used a different stepstick RAMPS card and Mega, they worked perfectly.

it is not completely clear, so:

the A4988 work on another board -> your new board is broken
another A4988 worked -> the A4988 is broken

HTH


Extruder motor does not turn When printing from Cura on my laptop via USB, my extruder motor does not turn to extrude filament. However, when I use the "move axis" command in the firmware (on the little screen on the printer), it seems to work fine, extruding plastic smoothly. The nozzle temperature is where it should be (230 degrees or so for ABS) while printing and I get no error messages in Cura.

What would cause the extruder to not function when printing even though it seems to be fine electrically, mechanically, and in firmware? Is there g-code from Cura that could be incorrect?

I'm not sure where to look for problems.

This is my first 3D printer. It is a Alunar M508 (a Prusa clone) that I got for free in a partially disassembled state. The firmware seemed to be screwed up when I first started using it. The firmware that came on the SD card with the printer would not compile in my Arduino software, so I used a Marlin firmware from here:
https://github.com/camalot/alunar-prusa-i3-marlin-i3-firmware

I had to make one change to the configuration file to reverse the X home direction, but otherwise I have not changed the firmware settings or anything. The new firmware does not recognize the SD card slot at all, but that's a different story.

I'm using Cura to print via USB. The printer is set up as a Prusa I3, using the "Marlin" GCode flavor. Nozzle size: .4mm, Compatible Material diameter: 1.75mm.

Start Gcode:

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 F9000 ;move the platform down 15mm
G92 E0 ;zero the extruded length
G1 F200 E3 ;extrude 3mm of feed stock
G92 E0 ;zero the extruded length again
G1 F9000
;Put printing message on LCD screen
M117 Printing...

End Gcode:

M104 S0 ;extruder heater off
M140 S0 ;heated bed heater off (if you have it)
G91 ;relative positioning
G1 E-1 F300  ;retract the filament a bit before lifting the nozzle, to release some of the pressure
G1 Z+0.5 E-5 X-20 Y-20 F9000 ;move Z up a bit and retract filament even more
G28 X0 Y0 ;move X/Y to min endstops, so the head is out of the way
M84 ;steppers off
G90 ;absolute positioning

Edit to Add some Gcode from the beginning of the test print:

;LAYER_COUNT:127
;LAYER:0
M107
G0 F3600 X86.923 Y86.649 Z0.3
;TYPE:SKIRT
G1 F1800 X87.522 Y86.134 E0.03941
G1 X88.17 Y85.683 E0.0788
G1 X88.861 Y85.299 E0.11824
G1 X89.586 Y84.987 E0.15762
G1 X90.339 Y84.75 E0.197
G1 X91.113 Y84.591 E0.23642
G1 X91.898 Y84.51 E0.27579
G1 X92.3 Y84.5 E0.29586
G1 X117.7 Y84.5 E1.56307
G1 X118.489 Y84.54 E1.60248
G1 X119.269 Y84.659 E1.64185
G1 X120.034 Y84.857 E1.68127
G1 X120.774 Y85.131 E1.72064
G1 X121.483 Y85.479 E1.76004
G1 X122.154 Y85.897 E1.79948
G1 X122.778 Y86.38 E1.83885

It turns out the problem was a firmware issue. Using the gcode below (from David Lotts in the comments), I was able to determine that the extruder was running backwards. A flag in the firmware reversed it, solving the problem.

M82 ;set extruder to absolute mode
G92 E0 ;zero the extruded length
G1 F200 E20 ;extrude 20mm of feed stock


Problems with support interface since cura 3.1 Since i updated Cura from 2.7. to 3.1. I have a really hard time at configuration and especially removing the support interfaces. The update automatically uses the settings from the old version, but as I said: it doesn't work anymore.

I even tried to create a test print with 4 copies of a test object with different settings, but there where no differences in the slicing for them. Every copy and the support interface that belongs to it was the same.

Did anybody have an idea?

Printer Anet A8 with PLA

In Cura 3.1 to 3.2.1 (date today is 2018-Feb-24): The Support Z Distance only changes the Support Bottom Distance and NOT the Support Top Distance. By activating the two sub-options you can configure this again.


Linking an Arduino Mega with RAMPS and an Arduino Uno with CNC Shield to control more stepper motors using Marlin firmware I've been looking for this for a while, and it looks like no one has tried it before.

Does anyone know if there is a way to link an Arduino Mega with RAMPS as master, with an Arduino Uno with a CNC Shield as slave, and get it to work on Marlin firmware?

Why do I want to do this? I'm planning to build a DIY heavy duty 3d printer that will use a lot more stepper motors than the typical prusa style machines, and I want to use Arduino to control it instead of custom CNC/stepper/3d printer controller boards.

Thank you!

Regards.

so points to that case:

how are you going to sync master/slave?
adding more steppers to master (even only for pushing control to slave) will limit speed in the whole system (this is mainly one of the reasons why we shall go to 32-bit platforms to print faster).

As marlin will give you a good grasp to convert g-code into steppers movement, then if you are willing to double or triple steppers number per axis, you can grab dir and step signal and forward it to other steppers drivers without the mess of syncing movement in time and board. If you are going to add a special tooling - then you shall add your mods to firmware as well.


Strange stringing-like activity when printing face shields I'm printing stacked Prusa COVID-19 face shields on a modded Ender 3. It works fairly well until the second layer of masks, where we get this weird effect that's kind of like stringing. It looks like the curve is becoming "low poly." I'm sorry that I can't be more specific, but I really don't know how to describe it more than this. Please look at the pictures to get more info.

One of the strangest things is that it worked earlier with the same slicer and the same profile. I am using PrusaSlicer, but I tried it with Cura and it still didn't work. There are a few more problems with the prints: some under-extrusion on the supports, and some spots had little gaps between the layers.

Does anyone have any fixes for any of these problems? I would mainly like to know about the strange kind of stringing because that actually prevents me from stacking prints.

I am printing Overture PETG at 240 on the nozzle and 80 on the bed. This is at a speed of 50 mm per second. I have the Basaraba Innovations direct drive mod, the Creality silent board with TH3D Unified Firmware based on Marlin 1.1.9, and the EZABL Pro.

Please look at the pictures to see what is happening.

This isn't stringing. It's failure to adhere to the previous layer, so tension in the newly extruded material just makes it form a straight line until it bonds to something again. Are you used to printing PETG? You didn't mention fan settings, but having any cooling fan at all will cause failure of layers to bond. Your print speed is borderline for PETG, especially if you're using thick layers like 0.3 mm which you also didn't mention but looks like might be the case.


Can you cure resin with sunlight through a window? If I set my prints on the window sill (indoors) will the sunlight still be able to cure the resin? The problem with setting them outside is the wind knocking them over.

The glass will block most of the uv light; but not all. It will depend on the type of light that the resin is sensitive to; in order to determine if it will continue to cure behind a glass window in direct sunlight. Some resins also sensitive to blue light. You will need to look at the material data sheet for the resin to be able to know for sure. Be advised though, that the resin does not stop curing, and will continue to cure slowly over time, just sitting on the desk.

https://www.thoughtco.com/does-glass-block-uv-light-608316
From the link:

  Glass that is transparent to visible light absorbs nearly all UVB. This is the wavelength range that can cause a sunburn, so it's true you can't get a sunburn through glass. However, UVA is much closer to the visible spectrum than UVB. About 75% of UVA passes through ordinary glass. UVA leads to skin damage and genetic mutations that can lead to cancer. Glass does not protect you from skin damage from the sun. It affects indoor plants too. Have you ever taken an indoor plant outside and burned its leaves? This happens because the plant was unaccustomed to the higher levels of UVA found outside, compared with inside a sunny window.


Why won't makerbot accept an STL file from Blender? Our library system just put a 3D printer in one of the branches. I have used SketchUp on the library computers for a number of years just to do artsy things. Suddenly, I have the opportunity to actually print something. (I'm really not sure why the libraries have SketchUp installed. But, I have enjoyed using it.)

There is a plug-in available for SketchUp so that it can export STL files. But, the security on the library computers will not allow me to put a file into the SketchUp plug-ins folder. And, the tech guy at the library doesn't think that the IT guys at the library will update all the copies of SketchUp at all the branches just so someone could do 3D printing.

After doing some searching on this website, I found out that I could export a COLLADA / dae file from SketchUp. I would then import that dae file into Blender (The portable version on my flash drive). I could then export it as an STL file.
The process appeared to work. I could see my test object in Blender.

I gave the STL file to the branch manager who tried to open it in the Makerbot software so that it could be sent to the printer. But, it gave him a message about the file not being recognized.

I am not familiar with all the details in the importing and exporting processes that are going on. Is there someone out there that can give me some help?

One problem is that, I am using the library computers. I cannot alter them. I can use what portable versions of software are out there, like Blender.

Here is what I suggest you try. If you have a file that you can view/edit in blender I would export it as both STL and OBJ formats. Then take those files and upload them to Netfabb (https://netfabb.azurewebsites.net/) and get a "repaired" file. Have the library try again with the repaired STL and OBJ files. If this doesn't work try to get the exact error message/dialog that the makerbot software is giving them as well as the version of the software that they are using.


Z-offset: 0.2 mm, 0.1 mm or the thickness of paper? So, I'm pretty new to 3D Printing, and to quote Spock from Wrath of Khan I would say "He is intelligent, but not experienced". Now everything I have been reading about Z-offset seems to talk about a 0.2 mm gap and using a piece of paper.
Wishing to be accurate, I have tried to use my 0.2 mm feeler gauges and this is too high.
However, the thickness of paper depends on the GSM (grams per square metre). A Google search tells me that the average thickness of paper is ~0.1 mm but how can we be accurate with this variation.
I tried using a 0.1 mm feeler gauge and even this seemed too high. Is this because of the lack of give in the metal? Anyway, I have now settled for a Lotto slip (UK Lottery) which has a thickness of 0.1 mm and seems to allow me to set a good offset.
However, I would welcome someone who can explain the science behind this.

They are all generic guidelines. Don't count on them too much.
Rather, get an approximate Z-offset value, then print a solid 30x30x5 mm cube.
If, starting from the third-fourth layer, you see some over-extrusion, you need to adjust the extrusion multiplier or the E steps calibration and reprint.
Once the solid cube looks good starting from the third-fourth layer up, then you can tune the Z offset by printing a cube which is only 0.2 mm high (or 0.25 mm, or whatever your first layer height is).
If you see over-extrusion, the Z offset is too big. If you see visible gaps between extrusion lines, the Z offset is too small.
If unsure, better get some small remaining gaps rather than overextrusion and excess material.
The idea is that extrusion issues in the first layer can be caused either by the offset or by the multiplier, so you must adjust the multiplier first by looking at the print after about 1 mm height (the first layer issues tend to disappear after some layers). Once you know the extrusion is right, set properly the first layer.


Tevo Tarantula I3 firmware I've been trying to get something decent printed for days but nothing works! I have a Tarantula Tevo i3 MKS Base V1.4 and have done a lot of trial & plenty of error. Still I am puzzled to get good prints.

What is the stock firmware for a single extruder regular/large bed firmware & how to configure a large bed (if needed to be configured)?
Which is the auto bed leveling firmware?

I need help sorting out what's out there. I did not manage to configure a large bed with a single extruder. But did manage to restore firmware with Marlin-2.0.x

So the Tevo 3D Printing Store firmware link directs to a dropbox - only dual extruders - both regular & large bed,
There is JimBrown's GitHub MarlinTarantula - Optimized firmware for RepRap 3D printers based on the Arduino platform,
JoelLisenby's GitHub TEVO-Tarantula-I3-Marlin-Firmware.

I followed this, YouTube - Setting Up Auto Bed Leveling (Tevo Tarantula), for setting up the auto bed leveling sensor but it just got me messed-up even more, see Tevo Tarantula incorrectly auto leveling of bed. I'm just now in the process of trying to manually level the bed and I broke the hot end holder plastic plate...

EDIT:
The sensor I'm using is SN04-N Inductive Proximity Sensor - 5mm

Answer for "2)":

The default firmware seems to be Repetier. It also includes Bed leveling (see documentation):
https://www.repetier.com/documentation/repetier-firmware/z-probing/

Marlin includes the Auto Bed Leveling feature too. You need to enable it by editing the Configuration.h file.

Bed size settings are there aswell.

"stylesuxx" made a video on how to get Marlin onto the Tevo:

or you can take a look at their website:
http://marlinfw.org/docs/configuration/configuration.html#configuration.h

Autoleveling can be enabeled as well in this file. There is a good video from Thomas Sanladerer on Mesh Bed Leveling:

If you want some help with auto bed leveling it would be nice if you can include what kind of sensor you want to use (inductive, capacitive, microswitch...) and what your prefered type of bed leveling is (mesh 3x3, just z-leveling)...


How to remove adhered nylon from build platform? As the title suggests, I am looking to remove nylon that has adhered strongly to my build platform. Mechanical methods (ex. scraping) haven't yielded results, so I was hoping for a solvent or something that would remove the adhered nylon.

Also, the parts themselves remove well enough, but some areas have a bit of nylon that simply persist.

One important and missing aspect of your question is what is your build platform? Glass is likely to give you the best results, while aluminum has some risks, depending on your choice of solvents.

My hasty research at first showed Glacial Acetic Acid to be a candidate, but as a very strong acid, it will require some care in use.

I found a pdf document with a comprehensive chart of possible solvents for nylon. The above noted solvent (100% acetic acid) lists with an Unsatisfactory result. I read this at first as being unsatisfactory for dissolving, but the correct interpretation is that nylon is unsatisfactory for being resistant to this solvent. Additional notes show nylon will dissolve in this solvent.  I have a bottle of white vinegar (acetic acid) but the panel reads as five percent concentration, almost certainly ineffective for your purposes.

There are other solvents listed as unsatisfactory, which points them in the right direction for your purposes. A couple of them are in the chlorine family and no reference is made regarding concentration. Chlorine of even weak concentration will attack aluminum very quickly.

Despite the weak concentration of the white vinegar, I've dropped a segment of 3 mm nylon to see what happens overnight and may report via an edit here later.


Printrboard Rev. D - RX1 and TX1 (second serial port) / Marlin I am trying to make Marlin use the RX1 and TX1 pins that are in the EXP1 connection. I am connecting those pins to the TX, RX of an Arduino.

The Configuration.h file has a SERIAL_PORT define, normally configured to be 0, but supposedly changeable.

What should be changed in Marlin to make it used the Serial1 port (if possible at all)? I am using the latest code provided in  Printrbot's Marlin repository

From the Configuration.h file:

// SERIAL_PORT selects which serial port should be used for communication with the host.
// This allows the connection of wireless adapters (for instance) to non-default port pins.
// Serial port 0 is still used by the Arduino bootloader regardless of this setting.
#define SERIAL_PORT 0
//#define SERIAL_PORT 1

// This determines the communication speed of the printer
// This determines the communication speed of the printer
#define BAUDRATE 250000
//#define BAUDRATE 9600

I was able to resolve this issue:

I moved to Marlin 1.1.9 (the final release of the 1.1.x versions).
I made a fork, for those who would like to see the changes. Also summarized below.
The RX1 and TX1 pins are well identified in the question. I connected those directly to the HC-06 bluetooth module (using a voltage divider for the RX pin in the bluetooth, as it is a 3.3 V logic module).

Changes in code:

Marlin/Conditionals.LCD.h: commented out:

// this line conflicted with the bluetooth/serial1 options
// #define USE_MARLINSERIAL !(defined(__AVR__) && defined(USBCON))

The rest are the configuration options already provided by Marlin in Marlin.Configuration.h:

define SERIAL_PORT 1
define BAUDRATE 115200  // Note: this baudrate MUST match the one set in the bluetooth module. That's done using the AT commands. There is plenty of information on how to do that.
define BLUETOOTH

As a result of these changes I am able to print with my PrintrBot Simple 2014 (Printrboard Rev. D) with Bluetooth over a distance of ~3.5mts, behind a wall. I haven't tested it exhaustely, but it does print.


Ender 3 is capable of food safe printing? I've been looking into the viability of manufacturing a replacement part for a kitchen blender that has a broken part. I found this page that talks about what makes a print food safe. One of the items mentioned was:

  ... a brass extruder may contain lead, and lead contamination can cause some nasty health problems. ...

I own an Ender 3, and I haven't replaced the nozzle yet. How can I tell if my printer is capable of creating food safe prints in its current state?

Food packaging needs to comply with regulations. One certification agency informing about these (and their service to certify for them) is TÜV Süd, another is SAI global. A summary of the GFSI can be found here. Inform yourself about the standards you wish to apply! The stack can not give legally binding answers.

No

The Ender 3 is not approved to produce food products (and not usable for them out of the box) for lack of certification. In the design it comes from the box, you need to replace a lot of parts for food rated ones:

The whole print head/bed need to be swapped out for food rated parts due to the exact composition being not known. They might contain banned materials. As a result:

You'll need an all-metal hot end that can be taken apart for cleaning up to the standards if needed.
You'll need a food rated PTFE tube.
You'll need a stainless steel nozzle that complies with food grade manufacturing demands.
The extruder gear should be stainless steel as well.
You'll need to add some part to prevent filament shreds/flakes from the extruder to enter the print area as they might act as contaminants or carry germs.
Similar measures have to be taken for the wheels on the hot end carriage, as it might shred.
As you include a volume of air into the print, you are likely to be demanded to print under a protective atmosphere to make sure no germs are inside the print.
We do not know the composition of the build platform, so you'd need to replace the back surface with something that is food rated.

You'll need to post-process your prints as smooth as possible, especially because of the small edges at the layer boundaries, which can and will act as spots where germs can grow.

This can be achieved with a material that is smoothable in some way.
Alternatively, a sealing lacquer/coating that is food safe might help here.

Remember, safety first:

Printed plastics that are rated for food are not necessarily food safe because of the quality or blend of the material. PLA and ABS can be made food safe, but that is usually pure material. We usually don't know what kinds of fillers or coloring is in our filament. The heating process might destroy the colors or fillers, which in turn might make it unsafe.

Indirect manufacturing

If you are stone set you want/need, you can use indirect manufacturing: you don't print the actual object, you print a mold that makes the actual object. Clay and other ceramics can be made food safe very easily and they can be shaped with plastic molds.

Boxing

There is also another way to facilitate food safety in a 3D printed container, and that is checking where the food will actually make contact. For a lunch box, that is the inside. We could line this inside with a food safe surface, for example placing a steel cup in our plastic cup-holder. Accessories like a cup holder or a decorative container for the actual food container do not need to adhere to the food packaging regulations themselves.

Exposure time

I know this is all looking at industrial food rated production. The Primer given in the question does include a point about time the product gets into contact with the food - if there is just a short exposure, you might get away with it, but it doesn't make it certified food safe. Another good read in this regard is this short discussion about the Pros and Cons.


Anet A8 Z-Probe Bed Positioning going outside of bounds I have an Anet A8 with the Anet 1.7 board, Skynet3d v2.3.2, and the stock sensor. I originally had this configuration with the stock extruder, but recently purchased an E3D v6 clone with a Bowden extruder. After installing a new bracket I had printed (TNS E3D v6 Bracket) with the adjustable stock sensor mount. I installed the extruder and sensor.

I knew I had to adjust sensor position. I went through the 3DStackExchange post on Z probe boundary limits as well, and added all of the end positions and probe to nozzle offsets (I will list below) to my Configuration.h file, saved, checked the changes were there in the Configuration.h tab in the Arduino IDE and uploaded the firmware. After this I went to hit auto leveling in the prepare menu, and the positions were different from the stock extruder and mount, but when it got to the third position, the sensor was off the bed, and the nozzle dug into the bed.

The configuration I was editing was from the Anet A8 5 button stock sensor Configuration.h file.

My probe is (When looking from the front of the Anet A8) forward and right of the nozzle.

My Y-axis offset is -3 (the sensor is 3 mm in front of the nozzle when looking from the front)
My X-axis offset is +37 (the sensor is 37 mm to the right of the nozzle when looking from the front)

The stock min_probe_edge is 10 mm, so with my math my Left Probe Bed Position is 47, Right is 210, Back is 207, and front is 10.

I want to get my probe settings properly set up so I get my bed leveling back and I do not want to ruin my bed while leveling.

If you have done major revisions to the printhead by changing to another carriage, it could be that the nozzle in the carriage is not at the exact position as in the previous carriage.

So, have you made sure that the new carriage has the appropriate values so that the nozzle is at (0, 0) when commanded to that position? Alternatively, in different wordings, this translates to: "Is the printer printing in the center?/Are the prints centered on the build plate?". See e.g. "How to center my prints on the build platform? (Re-calibrate homing offset)".

From the Thingiverse link van be read that this carriage requires an offset. The carriage design mentions a shift of the X axis:

#define X_MIN_POS -10

Is that working for you?

General remarks regarding the firmware update:
Have you also loaded all values from firmware using M502 and then M500? (if M500 commands are enabled). Also, Skynet3D is obsolete!, use Marlin instead!


RAMPS board - no power to heatbed I'm setting up my first 3D Printer, a Prusa i3 MK2 clone.
When I try to heat the bed, nothing happens. Then Marlin throws this error after a while:

Bed Heating Failed
PRINTER HALTED
Please reset

In Pronterface I see this in the console:

Error:Heating failed, system stopped! Heater_ID: bed
[ERROR] Error:Heating failed, system stopped! Heater_ID: bed

Error:Printer halted. kill() called!
[ERROR] Error:Printer halted. kill() called!

There is 0 voltage across D8 on the Ramps board, where it is connected. When I heat up the hotend, on the other hand, which is connected to D10, I see 12V across the board's D10 terminals.

The bed is MK42 type.

My axes, extruder hotend and fans are working OK.

I previously burned out the 5 V regulator on my Arduino Mega by misconnecting one of the end stops. I replaced the regulator on the board and the 5 V supply seems to be working OK again. However I wondered if I might have damaged the board in some other respect? Or is there a config setting in Marlin I should change?

Without testing the board(s) completely, by probing each component, it would be a bit hard to tell precisely. Your best bet might be to try it and see if it works ok, and if not, you'll see exactly what doesn't work... if that makes sense. Whilst not exactly the same issue, this answer, to the question How drastic is reversing the polarity of the power supply to a RAMPS board?, might help.

Now, after having correctly read your question (:-D), I see that you've already done the above, that I mentioned. Maybe these links will help:

No power to heatbed, how to test ramps for problem??, and;
(RAMPS)Hotend change pin from D8 to D10.

There are other similar links on the RepRap Wiki. You might need to check the power MOSFET and/or the fuse. The problem is knowing whether the Arduino Mega is damaged, or the RAMPS board, or both.

However, perform some of the relatively simple checks, listed below, for the:

Outputs;
MOSFETs - in particular Q3 which is switched by D8, and;
Fuses - in particular, F2 (MFR1100 - refer to schematic below) as it is this fuse alone which provides 12V2 which, in turn, is used by D8/Q3 for the heated bed. It should be noted that there are two 12 V supply lines and it is the latter which concerns the heated bed:

12V, and;
12V2

Salient points from (RAMPS)Hotend change pin from D8 to D10

  Also... There is something else to be aware of. Depending on what you claim you are attaching to the RAMPS board, the pins move around. You have 3 High Power MOS-FET's. You can use the RAMPS board to drive some combination of heat bed, fan and 2 extruders. Depending on what you claim you have on your printer, the pin numbers for things move around.

  I kind of doubt that is what is causing you problems... But it might be...

and check the config (bit of a long shot)

  Have you checked that you don't have any error condition (such as MAXTEMP or MINTEMP) which prevents the hotend from being switched on?

Be wary of randomly switching outputs for high current draw devices (such as the heated bed)

  Your topic says "D8 to D10" but if this is your heated bed, you can't
  do this. D8 is on the 11amp circuit. plugging the heated bed into D9
  or D10 goes threw the 5amp fuse and it will blow.

To test the outputs:

  But basically test the io ports

  Remove the ramps

  Setup a led and resistor in the D port you which to use (make sure led
  is the correct polarity)

  load up the blink demo program, change the port it uses to the port
  you testing.  Upload firmware (this will overwrite you current
  firmware) Does it blink? yes the IO pin is ok, no, The IO pin is dead.

  repeat for all io pins you which to test

  See learn.adafruit.com for more information

Salient points from No power to heatbed, how to test ramps for problem??:

Check the fuses

  Check the fuse (the big yellow thing). Connect you meter to ground and both sides of the fuse in turn. You should get about 12v on both.

Continuity check

  continuity test the heated bed with it not plugged in. is it possible you have an open in your circuit?

and

  Have you checked the cables? Also is the led coming on for D8?

The next section of the thread deals with an overheated (50 A?) MOSFET. Check the condition of that:

  ok think i found the culprit, any ideas why that blew?

A couple of good points

  With the bed I found there are 2 issues at play here.

  The standard MOSFET that is typically found in theese kits have an RDS that creates a fair amount of heat at 10A and at this level the
  datasheet says stick a heatsink on. Screwing a piece of metal to the
  MOSFET cures the issue I use an aluminium bracket because thats what I
  had laying around, thermal compound helps too if you have that laying
  around from a PC.
  A lot of heat beds state that they are 1.2ohms but aren't ( just a variance in manufacturing prehaps? ) sticking a cheap multimeter
  across it says this but in practice it may not be reading correctly. I
  found this out because my bed kept tripping a 11A polyfuse but was
  fine with a 12A meaning its somewhere around 1.1ohms. good news is it
  means my bed heats up slightly faster!

  but seeming as your transistor blew I imagine the polyfuse is ok,
  watch out though you may find it slowly does kick in when the MOSFET
  works properly because if its near its tripping point it can gently
  heat up and stop the current.

A good test procedure - this is probably the most relevant check for your case

  That's not the way it's wired. Check the schematic.

  12V input on RAMPS -- fuse -- (PS1) + output to BED

  GND -- Source[MOSFET]Drain -- (PS2) - output to BED D8
  ---------------- Gate

  As you can see, the MOSFET is switching the GND connection to the bed.
  There will always be +12V on the + bed terminal whenever power is on
  as long as the fuse is good. There's an LED across the + and - BED
  terminal on RAMPS to indicate voltage. If that LED is turning on when
  you turn the heated bed on from the host software, then the MOSFET is
  good. If it's not coming on, they you might have a bad MOSFET or your
  +12V supply is bad. Verify using a voltmeter across the bed terminals and across the 12V bed supply input in RAMPS.

  The Prusa heated bed PCB should have a resistance around 1.1 ohm.

Then there are some tests for the fuses. Looking at fuse F2 (the main culprit, which protects the 12V2 circuit):

  You haven't mentioned checking the fuse yet. You should make sure that
  it's not blown. If RAMPS is still wired to the 12V power supply for
  the bed, you can check this easily witn a voltmeter between the + bed
  terminal and the ground wire from your power supply (any of the -
  terminal between the power supply and RAMPS). You should read 12V if
  the fuse is still good. If not, then the fuse is probably blown. If
  the fuse is good, then it's a problem with the MOSFET.

  You should visually check the solder pads for the MOSFET to make sure
  that all the 3 pins are still soldered well. The chip can get hot
  enough to melt the solder resulting in broken connection. Then with
  the power on, turn on the bed heater in the host software and measure
  the voltage going into the gate pin of the MOSFET. That should be the
  outside pin on the same side of the MOSFET as the + D8 terminal. You
  should see TTL voltage there (probably close to 5V). If you do, then
  it confirms that the MOSFET is bad.

  BTW, 1.5 ohm is probably too high for the bed resistance. You need to
  subtract the resistance that you measure when you touch your
  multimeter leads together. There could easily be 0.4 ohms there.

and

  As far as checking the fuse, another way would be to turn off all the 12V power to RAMPS and check for continuity between the + bed power supply input and the + bed output on RAMPS. If the fuse is still good, this should be a short (near 0 ohms). If you disconnect the + lead to the bed, then this would be more accurate.

For fuse F1, you can do the following, although it is extremely unlikely that this has blown as the rest of the circuit is working from the 12V circuit:

  There's also a separate fuse for the other 12V supply input to RAMPS that powers the rest of the controller, including the AT Mega. You should check that too in a similar way. With all the power off, measure the resistance between the leads of F1 on RAMPS. You can also double check the resistance on F2 (bed 12V fuse) right next to it.

That should give you something to get started on. Without knowing more details, it's hard to be more precise.


Would adding fiberglass packaging tape to a bowden tube be beneficial? I came across this suggestion on the klipper github, https://www.facebook.com/groups/Hypercube.Evo/permalink/192106034761003/. In order to reduce the stretching in the bowden tube you can add fiberglass packaging tape lengthwise along the tube. This would decrease the elasticity while still allowing the plastic filament to run through it. Allowing you to reduce the retraction length and have better control over the amount of plastic being extruded.

Is there any reasons that this would not work or actually decrease the performance of the bowden tube?

The question seems to be built on a false premise, namely that the major extrude/retract errors in a Bowden design come from tube stretch. The PTFE tube is not significantly elastic, actually it is reasonably stiff so there is minimal scope for improvement here.

A longer tube will contribute to degraded precision, but slack in the filament/tube gap is roughly as significant as stretch (and filament compression). Constraining the tube path may help marginally (but there is no need to 'bond' the tube). There is not much you can to to reduce the gap between filament and tube, but this will dominate the error for a long tube.

The most obvious weak point is the clip used to secure the tube at each end. I saw a review of a recent Prusa design where high quality clips were called out as making a big improvement to securing each end of the tube.


How important is it to move the printer's controller board outside of an enclosure? I am building an enclosure for an Ender 3 Pro printer, and am planning on the power supply and LCD unit being outside the enclosure.  How important is it to move the printer controller (where the SD card is inserted) outside the enclosure?
Would leaving it in place affect its longevity?
Answers to the first round of comments/questions:

I expect to be primarily printing in the 200C-270C range.
I'm not worried about losing heat from opening the doors - I'll be putting the SD card in prior to initiating printing.
I'm thinking the stepper motors are somewhat of a moot point, there's no way I could move them outside of the enclosure.
My printer is all stock.

It depends on what kinds of prints you make, and especially what kind of materials you want to use.
Certain materials (ABS especially, but also PETG to some degree) will print much better if the entire build area, which usually includes the printer chassis and controls, is enclosed to protect from drafts and allow a much higher ambient temperature.
If you print often with these materials, and the control board is included in that enclosed area, you will significantly reduce the life of the electronic components, especially the capacitors on the board1.
On the other hand, if you print mainly with PLA, which is not as susceptible to issues requiring an enclosure, and prints better with an ambient temperature closer to room temperature, you can put the electronic controls wherever you want.

1 See especially this excerpt from the section on "Premature Failure":

Electrolytic capacitors that operate at a lower temperature can have a considerably longer lifespan.


How could I keep the material on the print plate from bending up on a makerbot 2? I printed a big base for a model, but the corners of the bottom bent up, making the whole base rock when set on a table. Is there a quick fix for a makerbot2 without a heated plate?

Consider using a different material. Since you're on a replicator 2 you're probably not printing with ABS (which would be a terrible choice for a large, flat model) but probably with PLA. Perhaps you could try printing with PET(G) instead, which tends to warp even less.
You could try modifying your model a little. If you include several grooves in the bottom surface of your model that may provide some "strain relief" so-to-speak, preventing warping.
Increase adhesion: print your initial layer slower, closer to the build surface, at a higher temperature, with a brim, and with some kind of print surface to increase adhesion (tape/glue/hairspray).
Increase ambient temperature. The Replicator 2 does not have a heated bed, but you could still make the cooling more gradual by enclosing the printer, shielding it from drafts, etc...


How to choose printer with dual extruder? I use Prusa i3 with one extruder for some years and I would like to print from one material in two colors or from different materials for one model. Therefore I'm lookig for new printer with dual extruder.

Is there some way how to measure and/or compare quality of printers with dual extruder on the market?

For example to create 3d model - ask the seller(s) to print it - and then compare? - what details to focus on?

As you suggest yourself, ordering test prints of some model is one way to do it.

3D Hubs and MakeXYZ allows you to get your model printed by hobbyists and small businesses for a fair price. Both sites also allow you to order prints based on printer type, which I believe is what you may be looking for.

On 3D Hubs, visit on of the trend reports, and select the printer you want a sample from. Similarly, on MakeXYZ, search local makers for your desired printer.


How do I concave an image to create a 3D file for use in a 3D printer? How can I print an embossed image in a concaved shape?

Like a big saucer. I will use this an a mold for a project.

So far I've found lots of software with huge spread of features. It's sort of overwhelming. There is lots of ways to create images into 3D printable objects but to add the extra step and concaving that image is harder to find out.

How would you do it? I'm open to suggestions.

I'm new to 3D printing and would really appreciate the help.

What you describe, sounds like you want to create a lithophane; a pattern etched or engraved on a thin translucent base material (in your case a bowl) that can only be seen clearly when backlit with a light source behind it. Apparently you want to use it for another purpose.

Special software and or scripts that transform the image to the base material exist. An example is e.g. this sphere which becomes a globe when lit from the inside. Recommending a tool for creating such bowl is a little out of scope as these types of questions become outdated very quickly as technology changes or tools cease to exist. With the provided information you should be able to find software that is able to provide what you want to do.


Understanding of the auto bed leveling process (BLTouch) I just installed my BLTouch clone (Marlin 1.8) on my Anycubic i3 Mega Ultrabase and finding confusing information about the Z_PROBE_OFFSET_FROM_EXTRUDER or the M851 command.
I understand M851 command does the same as Z_PROBE_OFFSET_FROM_EXTRUDER in the Configuration.h. (see marlin docs)
So according to Marlin, this value is the distance of the nozzle to the distance of the triggering point of the sensor.
If I manage to measure that accurately, Marlin could probe the bed, knowing distance of probe to nozzle, add a margin for perfect distance (around paper thickness) and my bed would be forever perfectly measured with every autolevelling process and perfect distances could be calculated.
Instead, I find tutorials around the M851 (e.g here telling to manually level the bed, then take the current Z-value of the extruder and put that into the M851 value. In my understanding it makes little sense, as it has no reference to when the sensor triggers, its distance to the bed.
Sure, maybe this way it can get an understanding of slight derivations in the planarity of the bed, but it would not have automatically "levelled" my bed, just compensated for imperfections.
I am confused by the amount of tutorials that suggest so. Whats the case now? Is Marlin not really able to really level to my bed?

What may be confusing is the use of the naming of the mechanism "Auto Bed Levelling", or short ABL, does not make your build plate to level itself with respect to the frame of the printer1). Hence you are instructed to always tram (level is rather misleading as it doesn't involve bubble levelling, instead it is meant to tram the bed with respect to the X- and Y-axis) the build surface as good as you can.
The ABL process could better be described as "Height adjusting to scanned bed geometry" or something like that, as that is exactly what is being done. The G29 command scans the bed surface and (depending on the firmware options) it generates a mesh or a plane through the measured points. When printing, the nozzle will follow the bed height geometry and fades this out over about 10 milliliters (depends on setting). So, if you do not tram the bed correctly, you will end up with a skew bottom of the print as the fade out will cause the printer to print eventually parallel to the X- and Y-axis.
Note that specifying the Z-offset in the firmware is rather useless, you cannot measure this beforehand. It is far better to do this later using M851.
This answer describes in some more detail how the offset is generated and applied to the scanned surface.

1) It is possible to actually level/tram the bed (e.g. in Marlin firmware), but that are different processes. E.g. a tramming assistant is available when using the G35 G-code. And, automatically, (for specific printers) possible on build plates that are moved up/down by several lead screws (look into NUM_Z_STEPPER_DRIVERS in Marlin's Configuration_adv.h file). But still, this maintains a certain level, it does not scan the complete surface, that can be achieved by the ABL process.


How do I 3D-print fair dice? As 3D printers become more and more reliable, their prints get better and better. But FDM printers do have their problems too: you print tiny ovals that smooch together at the edges, and infill makes it awkward at times. So, how do I make a 3D-printed die fair (as in: not favoring one side too much)?

This is going to become a 3-step answer, as 3D Printing uses 3 different steps:
Design, Slicing & Material choice before I elaborate alternate ways to some fair dice. Yet, we start with the material, as we need to know about it first. In this case it does impact everything from design to slicing and the print.

Variant A: Printed perfect(?)

Step 1: Know your material

Let's face it: most materials used in Fused Deposition Modeling (FDM) face an non-homogenous shrinking between XY plane and Z axis. But if you know these specific properties for your printer/filament/temperature combo, you can compensate for that. Know your material - you will need that for slicing. Run a test print of a 10x10x10 mm cube and measure - the offset of the 10mm on each axis is what you need to compensate for via your slicer.

Step 2: Design fairly

Platonic bodies

When designing your STL, try to design as fair as you can. Either indent the numbers as little as you can while maintaining readability, or, if you have a 2 color printer, fill the numbers with same density material but from the other color.

Another thing to consider: indent the same surface area on each face of the body. That way you remove the same volume and thus same weight from each face, making it somewhat fair in the design, as the Center of Mass should be mostly in the center of the body now.

Prism-"dice"

A cylindrical (or rather: prism) design that is rolled over its "cylinder" surfaces might be the most easy to be designed fairly and be reasonably easy to slice, without having to resort to specialist slicing methods and tons of different compensations to keep in mind or having to assemble the object after print. It might be made with or without a "fall over" cone/elipsoid shape at both ends. Or it might be made like a dreidl, having only one conical/elipsoid tip for easy printing, possibly even havign the 'stem' printed as a different object and then assembled after print.

Step 3: Slicing

Now, there is a pretty fair design... but what settings to use when printing it?!

Infill will make it wonky, so there are 2 options: solid (100% infill) and fully hollow (0% infill). Solid is easier to print and heavier. Hollow saves (depending on surface sides) 95% or more of the material in contrast to solid but can fall victim to sagging flat surfaces or wall thickness being not the same as flat area thickness.

Now, after we chose the infill settings, we need to choose some other things. We want to print fairly delicate stuff, so we should use a smaller layer height than normally (0.05 mm, for example), and better a smaller nozzle - 0.2 mm or even less, if available. This again means, calibrating the printer/material combo for these two settings (XY / Z shrinking).

After calibration, finally print! The dice should be pretty ok in fairness with that, but they are still not totally fair...

Extra-step: Postprocessing

You might make a test for bias by floating it on a salt water layer under tap water... if you managed to get it solid enough to reduce the air inside it to make it sink between these layers. That way you can slightly sand the heavier side until it is unbiased.

If you manage to print somewhat fair and hollow, you might consider filling the cavity with some kind of resin (for example epoxy) to give the objects a bit of weight. This has some caveats on its own though: you'll have to leave a filling hole and you'll have to coat the inside equally or refill it several times to ensure a complete fill as most resins shrink when curing. Also, most resins heat up in curing, though usually not to the degree it melts FDM. As you work with resin, Wear gloves as it is aggressive to skin!

BUT! 3D printink can do more!

Variant B: Printed Perfection

FDM is home printer stuff, but maybe you have access to something more... industrial. They are tricky in their own way, and you better know what you do with them.

SLS (solid laser sintering) You just need to know your material shrinking coefficients in that case... and no, you don't need to think about infill, you only can do solid, 100% filled objects this way. But you will also have virtually no air in your print. Having SLS at home is rare though. This is however likely what you get when you order printed... but remember: the SLS powder is highly hygroscopic and will need to be sealed. Also, it does turn yellowish over time if it starts white. Using reused powder to a large degree degrades print quality also. And never look into the working machine.

DLMS (Direct Laser Metal Smelting) is quite new and pretty much the metal variant of SLS. If you make your dice in that way and get them almost indistinguishable from cast metal. Polish the surfaces a little, don't sniff the breath the powder and don't look into the laser.

DLP/SLA (Direct Light Processing/Stereo Lithography) Printing the thing from curing resin actually is pretty much close to SLS, but it has some resemblence to FDM in parts... biggest benefit: you can make very delicate details, and your layer heights get really thin - and you have a huge array of colors to choose from. But you have to take in mind, that you might want to either make the dice solid or design them with a hole in each of the sides or corners to allow surplus resin to flow out. You get perfect surfaces and can reuse the resin for quite a bitdepending on printer and storeage, but remember: SLA is a stinky thing, never look into the printing machine & the resins are very agressive to skin, so use gloves when working with the printing and the print until properly cleaned.

Variant C: Lost Print

But wait, what if you don't actually print the dice but just print a positive of the dice and then make a negative mold from that?

Yes, that can be done. You know lost wax casting? There you go. Here's your step by step:

Print your dice.

maybe even puzzle the positive together from several faces printed all in the same orientation for maximum equality in the print.

Add a casting inlet and air outlet to the print.
cast the positive in either a clay material or gypsum. Allow it to dry/set.
Burn/melt out the positive, you get a hot and empty negative form.
cast in liquid metal or a resin
break mold, remove the inlets, polish some and... voila!

If you are good at green sand casting, you might use that instead of lost wax casting - and reuse the positive for a second casting. Or, if you are good, you can make two-part molds that are reuseable.

Variant 3b: mold it!

If we can print a positive and make a mold from that, we might as well print a mold directly. We can just cast in "cold" materials then, but if you have something that can be cast that way (some resins or wax) you can make either the dice or casting sprues for lost wax casting that way. Designing here will be different on the last steps though: after doing your wanted object, use this as a "tool" to cut out from a more or less square block that surrounds it. cut out the inlet/outlet for material and air from the block. Then cut up to your liking, if you want a reusable multi-part mold. You might want to add a roove to add wire or a rubber band around the print to keep the mold together while casting.

Or we go industrial with that model, grab a CNC and make the mold halves that way and give up on printing the dice...

tl;dr:

Know your printer, know your material, design for your printer's requirements, design fairly, maybe avoid printing the actual dice but print a positive to be molded and cast or print a mold.


preventing my printer nozzle from getting too dull, from nothing but PLA filament I had a new Extruder tip on my Ender 3 3D printer. the tip looked like the left tip in the below image. After I have been using it for about 5 months, the tip got dull/flat, like the tip on the right in the below image.
The only filament I have used is a spool of  PLA (from hatchbox) and a spool of PETG (from sain-smart)
About the Filament
From the time that I replaced the tip, to now, i have only used my 1 spool of PLA filament.
I don't believe it has any carbon-fiber in it, the only other things I can think of, are that the filament has a tough time sticking to the bed, so I have to print pretty close to the bed.
Image of my 3D prints using my PLA filament

Image of my PLA filament

I don't 3D print a terribly large amount, Is it normal to have to be replacing the pen this often?
How do I prevent my extruder tip from getting dull so soon? Is there a way to prevent the pen tip from getting dull at all?
Actual Images: (Sorry for all the edits, I’m trying to add the images on my phone and it’s not working)

Your extruder nozzle will wear from the inside out if you are using abrasive filaments, which include carbon fiber, wood type filaments, glow-in-the-dark and many other types.
Because they are abrasive, removing material from the inside also thins the cone shape of the outside (point) of the nozzle.
The solution is to not use abrasive filaments, or to use a hardened nozzle specifically manufactured for abrasive filaments, or to change the nozzle frequently.
If this is a 3D printing pen as your post suggests, please clarify, as the answer is likely to change but only slightly. If this is a nozzle for a 3D printer, consider to edit your question to reflect thusly.


Any video tutorial for 3D printing I am new here and would like to work on a project to 3D print a precision prototype. What is the most affordable way to do it? How do I go about it?

[The question ask asked is vague, but since you are new it is understandable.]

If you want to build a precision prototype then you have to decide on the level of precision that is necessary. There are different types of 3D printers and services available which give various levels of precision and functionality.

Fused Filament Fabrication/Fused Deposition Modeling - This is typically a means of producing functional prototypes using plastic filament. In terms of precision it is currently the lest precise, but the most cost effective.

Binder Jetting - This is basically crazy glue with food coloring which is inkjet printed onto a white powder layer by layer (vast oversimplification). Useful for producing prototypes with colours for product mockups but not for functional parts. This is mid the mid point in terms of price and precision.

Stereo Lithography / Photo polymerization  - Lasers cause a liquid resin to harden and stick to each other. Also notable for being the first form of 3D printing, this is the highest precision that is easily attainable. The cost varies based on the provider but it is usually the most expensive option.

Depending on your needs you may find that it is cheaper to develop a single prototype part (just one part not an entire machine) by sending out to a contract manufacturer as opposed to purchasing a 3D printer.

Here are some examples of what to do when:

If you want to develop a diamond engagement ring for a customer: Send out to a contract manufacturer, for Stereo Lithography
If you broke part of the cupboard and its easy to design a new one: Consider purchasing a sub $400 USD FFF machine and learn to use it.
If you are developing a new line of designer sneaker: Send out to a contract manufacturer for Binder Jetting.
If you are doing miniature figurines for a stop motion animation television series: Invest in a Binder Jet machine and learn how to use it.

In my experience, people don't buy a 3D printer until they have held a 3D printed part in their hand or have seen the machinery in person. If you are new, start with a contract manufacturer and when you start spending so much on them that it is equaling the cost of owning a machine, then invest in your own system.


Digital vs. analog pins In the RAMPS v1.4 board, it seems like the X, Y, and Z motors all use at least one analog pin, while the extruder motors are entirely digital. See just the top left block of this photo:

Is there any advantage to using analog vs. digital pins in the motors?

As far as I can tell the traditional thermistors have to be have an Analog pin input because of the way they are read and processed. The MOSFETs for the heated bed and hot ends (and fans) should be digital because of the way transistors work. The end-stops are also digital because they are on-off switches.

But besides that, I can't tell if there is any other requirements or advantages to using some pins in analog / digital, especially for the motors which have seemingly contradictory pin assignments.

There are also three digital pins I don't recognize: MISO, MOSI, and SCK.

Right now I'm looking to add 2 new motors using 8 total pins (6 Digital pins, 2 for ground). It seems to me I could use any combination of the  D pin available in the image:

"Analog pin" is misleading nomenclature. Every pin is a digtal pin, but some digital pins happen to also be connected to the analog-to-digital converter and can thus also handle measuring analog signals.

Every analog pin can also serve as a perfectly good digital pin. The reverse is not true; if something requires an analog pin you cannot use a digital pin. The only things that require analog pins are the thermistors, for the rest (motors, MOSFETS, endstops,...) you can use either a digital pin or an analog pin.


Filament spreading apart and stringy on first layer I keep having this issue on prints where the first layer has stringy lines that don't stick together.

I've tried the following things

Replaced nozzle and throat
Used new filament (to rule out filament that may have absorbed moisture)
Printed at 180, 200 (my usual temp), 220
Aligned z stop sensor
Tried line width of 0.8 (usual 0.4)
Slowed initial speed to 30mm/s
Increased flow
Different Top/Bottom patterns

My print settings as shown in this pic are the following

Layer height: 0.2
Line width: 0.4
Wall thickness: 0.8
Print temp: 200
Bed temp: 60
Retraction dist: 5.5
Retraction speed: 40mm/s
Initial layer speed: 30mm/s
Cooling at 20% after 0.2mm, 0% until then

Printer

Prusa I3 (hictop)
Cura to slice
Printing with PLA
Have had years of successful prints, issue started happening after a couple months of not using printer
Running marlin
Runs auto leveling routine before each print

Let me know if you think there's other relevant settings to this issue. Any help is greatly appreciated, I've been trying to fix this for days. I've tried different models, large and small, but have the same issue no matter the size

I would try two things you didn't mention; a bed leveling (this looks a little close) and an e-stepper calibration. The layer looks thin and under-extruded, and two common culprits are the bed height being too close ("oversquishing" the first layer which reduces flow rate and adhesion), and the e-stepper not feeding as much filament as the slicer's asking for (giving you thinner lines than the slicer expected, so they don't adhere to each other or the substrate).

I also see problems with that kapton layer. Totally understandable, the stuff is a major pain to lay down bubble-free, however it's also absolutely necessary to do so to avoid first layer issues. That's not your only problem here but it'll keep being a pain after you have filament feeding sorted out.

Lastly, I'm seeing slicer error; the floor fill is being laid down over the top of the shell layers on the right side of your image. Remember that the wealth of slicer variables in Cura regarding print speeds, flow rate, filament diameter etc ultimately boil down to a single G1 command per line: "move from here to here at this speed extruding this length of filament". So, if the slicer is forgetting where it drew the outline by the time it scripts the floor fill, it's possible it lost the plot on extrusion calculations as well. Alternately, the printer could be the one that lost the plot, either losing track of the steppers or incorrectly interpreting the G-code. Usually you just need to power-cycle the printer, close and reopen Cura and re-slice. Also, if you're printing with a USB cable, try switching to an SD card; there's less to go wrong in the communication between slicer and printer if the slicer tells the printer everything it should do up front.

I'd look into each of these, then try to print a calibration shape, like a 20mm XYZ cube, before going back to the print you had on the plate before.


Bottom Layer Compression (over extrusion) - Can't get rid of it I've been trying to find a solution to a problem I've been having recently whereby the bottom layers of my print (1.2 mm; 12 layers) are either being compressed. over extruded or both. The problem results in the nozzle being dragged through previously extruded filament leaving deep groove marks and the bottom layers being risen/wavy, thus causing (I believe) the print layers to expand horizontally outwards

Settings are:

Anycubic Chiron
0.1 mm layer height
200 °C hotends temperature
55 °C bed temperature
40 mm/s print speed
eSun black 1.75 mm PLA
Cura 4.4.1

It's less noticeable on less intrinsic prints but for my latest project, its becoming a real issue. The problem is that for the square holes for the buttons (of which there are a lot), the bottom layers are extruding (essentially elephants foot-ing) which is impacting the tolerances of the build (holes should be 13 mm to accept 12.5 mm square buttons but are coming out at ~12.7 mm only on the bottom layer, I've measured the walls of the square holes and they're coming out perfectly).

I've tried almost everything I can think of/find on Google:

Levelling the bed (multiple times)
Tried print temps from 190 °C to 210 °C (even printed a temp tower which confirmed printing at ~200 °C is correct for my filament (eSun black PLA)
Calibrated the extruder
Calibrated the Z-axis
Set different horizontal expansion settings in Cura
Reduced entire print flow rates (have tried 90 %, 85 % and 80 %); this somewhat worked but produced problems elsewhere in the print due to lack of material (skin overlap etc.)
Used the 'modify settings for overlap' mesh setting to reduce infill flow & inner wall flow to 45 % and 55 % respectively for the bottom layers (up to 1.2 mm).

The last point in that list is where I've had the most success but it does leave a slight indentation around the outer wall until the full flow rate kicks in (i.e. >1.2 mm) and I'm thinking there may be other things at play that are causing the issue and I shouldn't have to do this reduce bottom layer flow so much if at all.

Has anyone seen this before?

The first thing that comes to mind is that, even though you have levelled the bed, the print nozzle may be too close causing too much "squish" on the first layer. Squish isn't bad as it promotes adhesion, but in your case, as you are looking for finer tolerances on the holes, it may be a problem. I use a feeler gauge and aim for 0.15 mm gap when printing at 0.2 mm layer height.

Next thing to consider is ensuring you have calibrated your flow rate/extrusion multiplier. See here for detailed procedure

Assuming flow rate is calibrated I can think of some settings in Cura that could affect your print.

Initial Layer Flow
Flow Rate Compensation Factor
Combing Mode / Avoid Printed Parts

Initial Layer Flow enable the use of a higher/lower flow rate in you first layer. Typically I set this to a value larger that my flow rate, 120 %, as I want good adhesion and am less worried about the elephant's foot effect. However, you could reduce it to less than your flow rate although that may compromise adhesion unless you use a brim.

Flow Rate Compensation Factor For most circumstances this should be 100 % which indicates that your flow rate should be used as set and not compensated for. I would check that this value has not been altered cause over-extrusion.

Lastly, there are two travel settings. Combing Mode and Avoid Printed Parts work in combination to reducing the impact of travels in the finished print. I would ensure you have combing turned on (e.g. Not in Skin) and that you have enabled Avoid Printed Parts. More details on these settings can be found here


What does it mean when they say up to 256 interpolation and 16 micro stepping for the TMC step sticks? I am planning to get a few TMC step sticks for my 3D printer.

I wanted to know what does 256 interpolation with 16 micro stepping mean, in simple terms?

Does it help? If so, how?

Higher microstepping numbers result in smoother movement.
However, printer control boards are limited in how many steps the can generate per second - as low as 10'000 steps/s on an 8-bit AVR board running Marlin.

To get the benefits of smoother microstepping, without adding load to your control board, TMC stepper drivers support interpolation between each step impulse coming from your control board, up to 256 different positions with which the stepper motor is driven.

You will still have to set up your firmware for the 16 "real" microsteps, the interpolation is only done on the stepper driver itself.


How is the E argument calculated for a given G1 command? I'm working on building a tool to generate G-code (a simpler slicer), and I'm trying to calculate how much filament should be extruded per movement.

Is there a standard calculation for this? Something like:

layer height * flow % * extruder diameter * distance

How does Ultimaker Cura calculate this?

Basically, all movements are (small) straight lines, the volume of a straight line is easily calculated as you already guessed.

To calculate the volume to be extruded you multiply the following parameters:

the layer height (h)
flow modifier (e.g. as pertectage) (SF)
extruder nozzle diameter (d)
distance of the straight line (l)

With this volume you can calculate how much filament you need to extrude. To get the length (thus the length defined by the E parameter), divide the obtained volume by surface area of your used filament by:

π * (filament radius)2 or alternatively π /4 * (filament diameter)2

To sum up, the value of E is given by:


Ender 3 Marlin - Incorrect temperature I've updated to Marlin 2.0.7 when I set up a BLTouch and now it seems the temperature does not match the display.
Before the update, I was printing with PLA filament at 205 °C and bed at 60 °C without issue.
After the update, my prints are full of stringing, so  I decided to lower the temperature until 180° and now it's fine. (everything above 185 °C is stringing)
I've tried tuning PID but it wasn't better.
So I assume my printer sees 205 °C but the real nozzle temp is higher.

When you have updated to Marlin, you were supposed to configure it carefully. This is maybe laborious and sometimes difficult procedure, but very important. Basic guidelines are described in Configuring Marlin official guide.
I assume that you obviously did it, at least in some part to enable BLTouch.
You should review the Thermal Settings section and update it with valid thermistors types for bed and hotend in Configuration.h:
#define TEMP_SENSOR_0 1
...
#define TEMP_SENSOR_BED 1

The list of available predefined settings (numerical identifiers) is just above these #define macros. The optimistic assumption is that you know that hardware details. Popular value is 1 for EPCOS 100k (older repraps) or NTC 3950 100k, but there are many examples of troubleshooting and advices on Internet. For more exotic temperature sensors you should set value 1000 and specify own details in Configuration_adv.h.
If all these settings are correct, then possibly your thermistor is faulty. There is always a chance of coincidence with some damage unrelated to last upgrades. You can follow these instructions to verify it.


Still got poor printing quality after calibrating my Anycubic Predator I've got an Anycubic Predator (aka Anycubic D). I followed the official instructions and leveled my printer.

The first annoying problem I ran into is that after the auto-leveling, the level test printing shows that the printer wasn't leveled at all. I tried about 4-5 times, and finally leveled the printer (I thought I just got lucky).

The second problem that isn't solved is that the prints I get are of poor quality. Shown in figure 1 and figure 2. The cube should be 20x20x20 mm, but what I got here is 19.6(x) x 20.4(y) x 20.5(z) mm.

Figure 1 - X-Y (side) view of calibration square

Figure 2 - Z (top) view of calibration square

Does anyone have any idea about how to improve the printer's printing quality? Thanks in advance.

A few tenths of a millimeter are pretty common for 3D printed parts; these are related to the printer hardware. These inaccuracies can be exaggerated by over- or under-extrusion; e.g. if too much filament is extruded, it increases the outer dimensions (and decreases the inner dimensions of holes).

The images show some signs of over-extrusion, maybe a little too hot also.


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

Print settings:

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

It looks like either the mechanical travel is constrained or, possibly you have the origin of the X-Y plane in the wrong place in Cura.  Usually Cura won't even slice if it thinks the object extends past the printable area, so check the display in Cura "Layer View."

If that's OK, then try using the control panel on your printer to manually drive the print head all the way in both X and Y axes.  If it doesn't then the commenters are correct thatyou have a mechanical interference somewhere.   If it does, then somewhere between Cura and your printer the "soft limit" of maximum excursion is set wrong. I'm not familiar with your printer model, but there should be a control panel command to "zero all axes," and typically the origin is the front left corner of the build plate (facing the printer, so "Stage Right" in theatre coordinates)  .


How to center my prints on the build platform? (Re-calibrate homing offset) When I print large prints close to (but not exceeding) the maximum dimensions of the heated build platform on my Anet A8, the brim or skirt or the print itself is printed outside the heated bed, while there is some space left at the opposite sites. It appears as if the print is not in the center.

Why is the print not centered on the bed?It was centered in the slicer before generating the G-code.
How can I center the print to make it fit on the heated build platform?

When centered in the slicer correctly, without offsets defined in the slicer, the printer is most probably incorrectly configured! Luckily you can do something about that! Basically, you will have to calibrate the printer for a new center.
Printer origin?
First of all, the firmware determines where your origin of the printer is. This implies that you need to properly set bed dimensions and offset values from the end stop switches in the firmware (usually not necessary out-of-the-box, but important when a newer or different firmware version is uploaded). These offsets determine where the origin of the bed plate is located. For Marlin firmware it is very common (for most printers) to have the origin specified at the front left corner (when facing the printer). From the configuration of Marlin we find the origin is e.g. in the front-left corner. Note that this can be rotated 180 degrees in certain printers, so the aft-right. Also be aware that there are a few printers that have the origin in the center, e.g. Delta's and a few Cartesian printers. Marlin definition (edited snippet) of a common bed layout:

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

How do I find the physical origin of the printer?
This can be tested by instructing the head/nozzle to go to e.g. (0, 0, 15) using a terminal/console or a simple G-code file with a move to that coordinate that you print from SD card (e.g. G1 X0 Y0 Z15 F500); note a Z of 15 is chosen for safety!. When this is performed, the nozzle should be at the (elevated, so X, Y) origin as defined by your firmware. Usually this is at the left front corner of your build plate (there may be clips there, so therefore the elevated value), but this may be different depending on the firmware settings or firmware brand.
Next step is to configure the slicer as such that this coincides with the actual origin. Incorrect slicer settings can cause the slicer to assume the origin is at a different position than your actual position. In Ultimaker Cura, the "Origin at center" is notoriously known for this when the physical origin is not in the center, but in a corner. When the slicer is properly instructed, but the origin is still not at the corner of the build plate (beware! in some printers the origin is in the middle of the plate) you might have incorrect endstop to origin offsets.
Determine the offset first!
To quantify the offset of the center as it is known by the printer software (firmware) it is advised to print a large square that is a few percentage smaller than the maximum size of the bed. E.g. you can create a square hull at e.g. 90 % of the dimensions of the bed (parametric designs are very useful for this purpose, see e.g. this design). There are many things (.stl models) to be found on the internet. If it includes a cross, even better as some platforms have a mark in the center of the bed.
Example of a bed center calibration model

Once printed, measure the distance from every edge from the build platform to the printed square. If you fail to print the square, please check the level of the platform; this is also an excellent test for the level of your bed!
The measurements should give you a notion of the offset of the bed. E.g. for the X-axis you measure a distance of 12 mm on the left and 8 mm on the right (when facing the printer) you can easily deduce that the center is (12 - 8)/2 = 2 mm to the right (positive X direction). This implies that the printer manufacturer has done a lousy job by delivering you a printer with an offset bed; better said incorrectly configured in their firmware. Note this is not uncommon!
How to fix this!
Once you quantified the offset, you want to be sure that your next print prints in the middle of the bed. How to proceed? Basically there are a couple of solutions you can use, each with its own advantages and disadvantages.

A simple solution (i.e. if the printer support this) is to adjust the position of the endstops. Alternatively you can print alternate endstop holders to match the position change as measured from the calibration print.

Another simple and popular solution is applying an offset in the slicer. You could do that in the printer options some of the available slicers. If such options are not available, you could add G-code commands in the start code to create the offset (e.g. G1 X-2 moves to the left and G92 X0 resets the X origin). Note that this is a quick fix and should be applied wisely. The printer does not know where the actual center is! You merely changed if after the homing sequence. Exchanging .gcode with fellow enthusiasts with the same printer may have adverse effects.

A far better solution is to fix the center in the firmware so that the printer knows the actual center. This requires some extra effort by uploading firmware (files including configuration settings) to the printer or send G-code commands. The latter option will be discussed first.

A prerequisite of this method is that it requires the G-code command [M206](https://reprap.org/wiki/G-code#M206:_Offset_axes) to be supported by your firmware; note that not all 3D printer firmware solutions are able to use this G-code command for axes offset definition. E.g. the stock Anet A8 runs a modified Repetier version that does not support M206, it would be time to upload a new firmware like e.g. Marlin Firmware making this particular printer safer as the stock firmware does not include thermal runaway protection! See question: "What is Thermal Runaway Protection?". To send G-code commands to a printer you have the option to hook up your computer to the printer over USB and use a 3D printer program that support sending commands to the printer (this is called a terminal; i.e. an interface to the printer). Programs like PronterFace, Repetier-Host, OctoPrint, and probably many more have such an interface. A simple alternative that works also is creating a text file (with .gcode extension) with the commands on separate lines and executing the "print". The following codes need to be sent: M206 e.g. M206 X-2 Y2 (move center left and to the back, note to use integer values, float values are not allowed!) and store this new center with M500.

The final, best solution is to set it fixed in the firmware. This requires an upload of a more recent configured version of an applicable firmware. See e.g. question: "How to upload firmware to reprap printer?". Note that there are different methods to upload a firmware to the board, it is best to search the internet for the applicable method for your board.

To do that you will have to be comfortable with computer software and tools to build source files and upload binary code to the printer. This depends on the type of firmware you choose and therefore cannot be described for each firmware in detail. Various sources on the internet describe this process. Generally speaking, it requires you to set the bed and offset values/positions correctly. For Marlin Firmware this comes down to changing the settings in the configuration file, this is similar in other firmware software solutions:

// The size of the print bed
#define X_BED_SIZE 220
#define Y_BED_SIZE 220

// Travel limits (mm) after homing, corresponding to endstop positions.
#define X_MIN_POS -35 ; used to be -33, so 2 mm shift to left now
#define Y_MIN_POS -8 ; used to be -10, so 2 mm shift to the back
#define Z_MIN_POS 0
#define X_MAX_POS X_BED_SIZE
#define Y_MAX_POS Y_BED_SIZE
#define Z_MAX_POS 240


Comparative design methods for joints that will be joined together I want to 3D-print some parts that will be later joined together along a seam. When modeling these separate parts, what are some methods that work well with 3D-printed pieces? For example, if I were doing wood working, I might choose dowel and pin joints or mortise and tenon joints or glue overlapping pieces. What methods translate well into use with 3D-printed plastics? How does the answer change depending on the orientation of the joint along the printing direction?

One of my favorite techniques is to join pieces with screws, and include a tapered feature that helps align the parts. A single screw can give a very strong joint, that is well-aligned and won't twist. Another advantage is that such joints can be printed in any orientation, since the tapered feature can be designed with 45 degree angles.

Here is a cross-section example of such a joint:


How do I compute the surface & volume of a large amount of STL files? Please, how do I compute the surface & volume of a large amount of STL files ?

I have over 3000 STL files, and I want to know their respective volumes and surfaces. I will use this data to be able to identify the biggest part, the one with the biggest surface, etc.

I found that the fine Admesh (included in openscad, as far as I know) software that can compute the volume via command-line (powershell) and with some text editing I can get the volumes for all of these parts (needing some patience), but I didn't find any similar tool for the surface.

The best tool would output such thing as:

  input.stl - 75.554mm2 - 45.547mm3

I'm not sure this post is adequate in here, but anyway, thanks.

You could use the Python console of FreeCAD. Issuing the following commands

FreeCAD.ActiveDocument.ActiveObject.Shape.Area
FreeCAD.ActiveDocument.ActiveObject.Shape.Volume

will output the area and the volume of the object, respectively.

I don't know how to access the console output from outside FreeCAD, but there is an option in FreeCAD called Redirect internal Python output to report view which I think is what you are looking for.

You might want to look into the Scripting documentation of FreeCAD for further instructions.


ROKO bed levelling sensor I was sent my sensor (a ROKO) and I plugged it in with the pins in the wrong order, would this break my sensor? If so is there anything I could do?

I can't comment for the specific sensor you have, but in general, yes, if you plug something in backwards you have a chance of breaking it - and whatever you plug it into - permanently.

You might have gotten lucky, though - but short of testing the sensor to see whether it will work there is no way to find out.

Consider that these sensors are not made to be plugged directly into endstop connectors. The endstop connectors only provide 5V, whereas these sensors often require at least 6V to operate. Some people get lucky and have theirs work on only 5V, but it's not guaranteed to work. This might also be the cause why your sensor is not working, even if it's not broken. There are some special sensors out there that are rated to work at 5V, but you should check the operating voltage of your specific sensor.

If your sensor requires more than 5V to operate, then you should also be aware that the signal pin might output more than 5V, in which case, it should not be connected directly to the signal pin on the board (since anything over 5V might damage the board).

Finally, consider the possibility that neither orientation (backwards or not) is correct. Perhaps the order of the wires in the sensor's connector is different from that of the main board. Make sure that the pinout of your sensor matches the pinout of the connector on your board. These sensors usually have a slightly strange color coding where black is signal, blue is ground and brown is power.


Is it possible to know which is the correct temperature range and speed for any model? Trying to print a 3D model for my mobile phone, but I see that when printing the sides, being thin, increases the retraction and the recoil seems a little abrupt and makes a coarse sound.

I would like to know if it is possible to know what speed and temperature is recommended to print a model.

In my case I use Simplify3D, and when I'm going to save the file in .gcode format, I see that there are some ranges shown in colors, how does this apply to the models?

The first indication for print speed and temperature should be taken from the box the filament comes in. Generally it specifies temperature ranges for the hotend and the heated bed. Sometime, mostly online, more parameters can be found amongst which is the printing speed.

Do note that temperature and printing speed are linked, if you want to print faster you should increase the temperature. But, if you are printing small or thin things you should print slower so that the part cools enough for the next layer. Basically, part cooling is then also important, but not all filament types (e.g. the ones with a high melt temperature like ABS or PETG) like being cooled too much. So you have another parameter to consider.

It is difficult to instruct you to print at a certain speed and certain temperatures as it is highly depending on the filament (e.g. also the filament diameter), the machine type/make and model, extruder setup (direct or Bowden), the print, enclosure, etc.

Because of the many parameters affecting printing, it is usually suggested to calibrate the printer by printing a temperature tower or performing retraction tests to find the print window for your specific setup.


What does the stainless steel plug do in the E3D Kraken cooler block? In the E3D Kraken cooler block, there is a big, 10 mm grub screw, along the side of the cooler block.

I watched the entire Kraken assembly video:

There was no mention of this very thick grub screw. The E3D Kraken assembly wiki page may refer to this part as the "stainless plug".

Does the depth of the screw inside the Kraken heatbreak affect the effectiveness of the water cooling?

Why was it included in the design at all?

I'm asking because water frequently leaks out of this pore for me, ever since I had to repair some damaged tubing. Additionally I often have to use an extra fan when printing at high temperatures. I'm wondering, before I epoxy this grub screw into place, whether the amount it is tightened into the Kraken has some advantages or disadvantages.

The video shows the part already assembled on the Kraken. This is what the part looks like - it is much larger than the screws used to secure heat throats.

The connecting channel between the two brass barbed hose fittings needs to be drilled out.  To open that channel, a hole is drilled into the side to connect the two top holes (which have the brass fittings screwed into them).  The hole doesn't need to penetrate both sides, but it must get through one side.

The grub screw seals the hole.

Instead of using epoxy to seal in the screw, you could use the PTFE (Teflon) white plumbing tape.  It is specifically designed to seal threads.

If I remember, you can thread it in as tightly as you like.  It won't interfere with the water channel.

I have a Kraken, and I looked at how to make another one.


Anet A6, Marlin 1.1.x, bed leveling with sensor probe I have an Anet A6, an SN04 sensor for the Z-axis, and Marlin 1.1.x software that has automatic bed leveling enabled.
My question is (looking at the image below): "It seems my bed leveling is not working correctly. What can I do to improve it?"

You can see several things below:

I tried to use glue to make the first layer adhere better.. works only for small prints;
the middle part of the print is being done quite okay;
the outer part are either too low or too high.

I used the following procedure to get my leveling "right":
First I set the z-offset with the M851 command, followed by M500. Then I performed the bed leveling with G29 T, followed by M500. Then I started my print.
Maybe I need more grid points for my bed leveling, even though I have this interpolation method on. Or do I need to check the implementation of the bed leveling, maybe something is just plain wrong in the software.
What is your recommendation?
Current bed level status (M420 V)

Send: M420 V
Recv: Bilinear Leveling Grid:
Recv:      0      1      2      3      4      5
Recv:  0 +0.709 +0.609 +0.519 +0.456 +0.448 +0.404
Recv:  1 +0.525 +0.440 +0.370 +0.325 +0.304 +0.298
Recv:  2 +0.368 +0.282 +0.222 +0.177 +0.189 +0.182
Recv:  3 +0.221 +0.152 +0.100 +0.055 +0.069 +0.082
Recv:  4 +0.086 +0.020 -0.028 -0.060 -0.050 -0.020
Recv:  5 -0.027 -0.093 -0.138 -0.187 -0.163 -0.146

Eventually it was a mixture of things that sort of solved this.

Setting the Z-offset a bit more tight helped some
Probing with more gridpoints helped
Instead of using glue, I used painterstape. Way easier to refresh and easier to take prints off. I wanted to try kapton tape, but painterstape was good enough for now.
Manually leveling the bed to a better position also helped.
(After edit) recalibrating my two z-axis motors.

In the end, I think my bed has become a bit curved over time. So a final solution would be to print on a glass bed, but that was not really an option when using the SN04 sensor.
I am moving now to a BLTouch sensor + glass bed to make everything perfect again.
EDIT: important note, I also put off bed heating. Since I am working with PLA, it was not really necessary. Doing this allowed me to use painterstape, otherwise it would 'fall off' eventually.
EDIT2: I think I have thought of a better explanation. I am using an Anet A6 and it might be because the x-axis was not parallel to the plate. Meaning that my two z-axis stepper motors were not calibrated properly.


Why keep the bed heated after initial layer(s) with PLA (or PETG)? I'm printing on an Ender 5 with the default flex/magnetic build surface.
I read that PLA and PETG may sometimes be printed without any bed heating at all and also that bed heating is the main contributor to the power consumption of a printer.

As I do see that bed heating definitely helps with the first layer adhesion I did not want to turn it off completely, but I did start experimenting with turning off bed heating after all solid bottom layers have printed (using the ChangeAtZ script in Cura) and so far I haven't seen any negative effects, especially no warping (I am usually printing with a brim or raft; I think that might also help in that regard).

Am I missing something? Why is anyone keeping the bed heated for an entire print?

There are three reasons (I can think of):

A large problem you'd face with allowing the bed to cool after first layer is you stand the chance of losing adhesion after it cools. When you heat the bed, it expands somewhat. When it cools it contracts. It has been known for parts to actually pop off the bed if left on there to cool (after a print). If you allow the bed to cool fully, you could ruin a print due to it losing the adhesion, popping off the bed, then the printer keeps on going.
When you're dealing with 0.1 mm layer height, that's not a lot of wiggle room. When you level your bed before printing, it should be done after everything is heated. If you were to turn off the bed after you start printing, you could very easily shift the bed enough to take up the worth of an entire layer, which means your print has adjusted and will then have major imperfections. This isn't a given, but definitely a concern ... especially for larger or taller prints.
Whether PLA or PETG, the extruded filament needs to have heat in order to stay. This is not only heat in the extruder, but heat in the print itself. If the print cools off, this could affect subsequent adhesion for the filament getting laid down. If you turn the bed heater off after print start, you'll lose that heated environment. The print will cool off and you'll start seeing variations in the print, which, if the print is large enough, would most likely be more noticable. Think of it as a heated environment, not just putting piling host plastic on top of each other.

There may be other reasons, but I believe these are very good reasons not to turn your bed off after print start. If you are worried your power supply isn't providing enough power, then get a bigger power supply. If you're worried about power consumption overall, once the bed is heated, consumption goes way down (as @r_ahlskog stated in their answer).


Replacing ceramic tape on Wanhao Duplicator i3 I need new ceramic tape for my 3D printer. Does it matter which I get? Can I just get the cheapest? Is there a quality difference?

I have a wanhao dup i3 too. It does not matter a lot which ceramic wadding and / or kapton  you use. The more you seal off, the better it works. If you have a full metal hotend and a powerful cooling blower and need temps above 250 celcius, you might want to do the best you can with a good padding of ceramic and kapton. For normal operation, a half-done job will do just fine.
See this question too: Efficient and easy way to thermally insulate the heat block of the hotend?


Uniform squishy infill I try to print a stamp with flexible filaments. The problem I encounter is that the filament is flexible, but not soft. This leads to small differences in height to parts of the stamp not working.

One solution would be to add a small 'cushion' to add some squishyness to the stamp. I designed the stamp and the 'cushion' but now the question arises:
"Which infill will provide the best uniform squishyness (in one axis)?"

I did a test with cubic infill of Cura, and although it becomes quite squishy, some parts are squishier than other parts of the block.

TLDR; Trying to print a squishy cube, where in one axis all areas of the cube have the same squishyness.

As the rubber stamp needs to be soft in one axis for the whole area, you could use an infill that causes the same softness in all directions, but is sliced as such that the stamp experiences the same softness. Alternatively you can use the specific infill types for flexibility, but beware of the orientation:

Concentric
Cross
Cross 3D

First, to get the same softness in each direction you need to use an infill pattern that has similar/uniform properties (isotropic) in all dimensions.

It is suggested to look into the infill type called "gyroid" (see question What are the advantages of gyroid infill?).

This type of infill is described as:

  Gyroid infill is one of the strongest infill types for a given weight, has isotropic properties, and prints relatively fast with reduced material use and a fully connected part interior.

Second, since the stamp has relief, slicing the part may cause different infill height. You could look into Different infill in the same part to e.g. get a solid infill for under the relief to get a uniform infill for the "cushion".