Print job stops when given serial command I want to access the bed temperature of the 3D printer. I am able to get the temperatures using serial connection (Thanks to Demetris's help (Access Temperature sensor data of 3D printer via Serial connection)). The problem that I am facing now is that as soon as I give the command, I get the temperature values, however the print job stops. Is there a way around it? I want to get the temperature values as the print job goes on. TIA!

Opening a serial connection to your printer will usually reset the microcontroller, stopping the print.

The serial interface has a line known as request to send (RTS) that indicates to the microcontroller that the computer is ready to receive data. When the port is closed, this line is HIGH (indicating the computer is not ready), and when you open the serial connection the line goes LOW (indicating the computer is ready now) and the transition from HIGH to LOW triggers a reset.

There are a number of ways to prevent this:

In software: disable hang up on close (HUPCL). This prevents the RTS line from going HIGH after you close it, allowing it to be subsequently opened without causing a reset. However, this does not work for the first attempt (the first, initial connection still causes a reset). How this is configured depends on your software/driver set up, but it is widely supported.
In software: disable the RTS line from going LOW in the first place. I'm not sure if this is readily possible with common serial drivers.
In software: modify your workflow to always keep the connection open, preventing the associated reset from happening.
In hardware: your printer's board will have some circuitry on there that translates the RTS line transitioning from HIGH to LOW to trigger a reset, usually this is implemented in the form of a single capacitor between RTS and RST. RST is normally pulled high with a pull-up resistor (on the order of 10k or so), and when RTS transitions to low the capacitor briefly allows some current to flow, pulling RST low. One way to prevent this is to include a stronger pull-up resistor that overcomes the current drain associated with the RTS line going LOW. DisablingAutoResetOnSerialConnection suggests using a 330 Ohm resistor between VCC and GND.
In hardware: desolder the capacitor mentioned earlier.


P3Steel v4 w/ 20x30 cm bed, or 2.5.1 w/ 20x20 I'm building a new printer after having an Anet A8 for about two months and getting a feel for what I want. I'm planning to buy a P3Steel frame; but can't decide which version to get.

There are one or two prints I would like to make that are larger than 20 cm in length; but I could always do these in multiple pieces.

What I'm wondering is how serious are the trade-offs I would be making for a larger bed? I would think I would need thicker linear rods for the 510 mm length y-axis; and the bed would also have a large amount of inertia so that could slow down printing. Does anyone have any experience with this size bed in a moving y-carriage scenario? Also how thick of rods should I get? Orballo printing is saying 8 mm is fine but the research I've done implies that you shouldn't really go over 200-250 mm unsupported for that width.

Go for the P3Steel v4 (20x30). The extra print area is worth it. There is a Polish supplier, Printo3D, on eBay that has the cheapest frame, and parts - cheaper than the Spanish supplier. That is where I got mine from. See Frame Prusa I3 P3Steel v 4.0, 300mm x 200 mm, which costs around £80.
This kit uses 10 mm smooth rods for the Y axis:

Smooth stainless steel rods:

2x Ø8x385 mm for X-Axis
2x Ø8x320 mm for Z-Axis
2x Ø10x520 mm for Y-Axis

Threaded stainless steel rods:

2x M5x300 mm

With respect to the Y-axis carriage, the steel carriage does add a lot of weight/inertia, you are correct. This may or may not be an issue, depending on your steppers motors that you choose1, and their torque. That said, the 3 mm steel print bed/Y-axis carriage, is ridiculously heavy, and it would be most wise to substitute it for an aluminium, plywood, or some other lightweight solution.
Apart from that the 3 mm steel frame is fine and as solid as a rock. There are a number of aluminium 20x30 print beds/Y-axis carriages available on eBay and Amazon. A thorough search should reveal a few. There are also composite Y-axis carriages, I found a supplier in the Ukraine, tehnologika_net, who, last year, had a number of different types at a reasonable cost - in fact they were the cheapest that I found.
As an aside, I built mine sourcing all of the parts separately. It was a bit of a task, but an educative one. The process certainly made me understand the ins and outs a lot better than purchasing a ready built, or complete kit, 3D printer.
I have written up some blogs regarding the kit that I purchased, see P3Steel from Poland – A tale of despair, dismay and woe. Ignore the depressing title, it really isn't that bad.
See also Heatbeds. At the bottom there are some links to various alternative Y-axis carriages. However, some of the links/items may no longer be available.
You may also find this question of mine useful, Z axis top brackets, of P3Steel, differ between v1.x/2.x and v4.

There are a number of modifications to the standard P3Steel, that may well be worth considering. In particular, you should note the Toolsen Edition MK2, see P3steel toolson edition MK2 (in German), and P3steel - toolson edition. I have written about these, and more, see P3Steel version 4 modifications. In summary, these are:

Bowden extruders
Endstops
Endstops by Toolsen
Optical Endstops by Toolsen
Idlers by Toolsen
Extruder by NWRepRap
Lead screws
Aluminium/Composite Y-axis carriage

1 I got the Rattm 17HS8401 steppers. See RepRapWiki - Nema17. The recommended steppers are high torque:

Kysan 1124090/42BYGH4803;
Rattm 17HS8401, and;
Wantai 42BYGHW609

However, motors close to NEMA 17 size, with approximately the
following specifications, can also work:

1.5A to 1.8A current per phase
1-4 volts
3 to 8 mH inductance per phase
44 N·cm (62oz·in, 4.5kg·cm) or more holding torque
1.8 or 0.9 degrees per step (200/400 steps/rev respectively)


Pulling filament through long tubes I'm setting up my printer in a small room, and I thought I'd come up with a system for more easily swapping filaments, but I'm not yet sure it is feasible.

Rather than physically replace the spool, I'd like to hang most of my spools on the wall, where they can rotate, and only swap filament leads in the (direct drive) extruder. The spools would be placed at some distance from the extruder, and at various angles. So to make sure the filament is pulled from the spool at the proper angle, and to avoid breaking it, I think it should probably run through a flexible tube to reach the printer.

I know such tubes are used for Bowden style extruders, but what I'm proposing is different in at least two ways: [1] the extruder motor would be pulling (not pushing) filament through the tube and [2] the tube would be longer than normal, e.g., between 1 and 2 meters.

Is this plan feasible? Or are the problems I am not foreseeing?

Edit 1: I don't know where I got 1-2 meters from. The distance is actually closer to 50cm.

Edit 2: To clarify my proposed setup, here's a crude mockup:

I would say it's not the best approach.

In the situation you've described I would rather install some kind of vertical ring a bit above your printer. This ring would organize your filament going from any direction.

So let's assume you got one spool on the right and one on the left of your printer, both are 1m away from the printer itself. If you get filament and put throught the ring then to your extruder.

In my opinion the ring should be around 15..20cm over the printer, it should have around 10..15cm diameter and spools should not be too low.

The only issue I see is unwinding spools which are too far from the printer because then filament would be unwinded angular but the same issue would be with and without teflon tube.

[edit]
Here is a simple change of your design

[edit2]
Please also note that you can assure proper angle of unwinding filament by installing small rings ("eyes") next to spools. These eyes will direct filament out of spool and then filament will turn to your big ring mounted on the printer. This is common solution in textile industry


How to install a .hex firmware? Creality does offer its firmware on creality3d.cn as .hex files. These are pretty good as backups as one can't alter and destroy them by accident.

But... How do you install them?!

This is about installing firmware directly and without another microcontroller. To use another mictrocontroller is How to install new firmware via a Microcontroller?

A major part of the Arduino IDE is sort of semi-hidden, and that is some guy called  avrdude. Actually, AVRDUDE – AVR Downloader/UploaDEr is a standalone binary.

As an aside, there is also gcc which does the compiling, but that is another matter. The avrdude uploads the compiled binary provided by gcc on to the Arduino, via the USB port (COM port).

You can invoke this from the command line (assuming that you have the Arduino IDE installed).

You will need to specify (see command line option descriptions):

The baud rate of the COM port (-b)
The COM port (-P)
The processor used in the board (for the Arduino Mega2560 board: ATmega2560) (-p)
The path to the .hex file (-U)
The path to the .conf file of avrdude itself (-C)
Verbose mode, so see what is happening (-v)
Specify the programmer to be used (-c). See the -c option on command line option descriptions for more information.
Disable auto erase for flash (-D)

The command will be of the form:

<path to arduino>/hardware/tools/avr/bin/avrdude
-C<path to arduino>/hardware/tools/avr/etc/avrdude.conf
-v -patmega2560 -carduino -b 115200 -cstk500v2
-P<name of serial port>
-D -Uflash:w:<path to hex file>:i

This example above:

Specifies the full path to the avrdude binary
Specifies the full path to the avrdude .conf configuration file
Verbose mode
The ATmega2560 processor used in the Arduino Mega2560 board
The Arduino programmer
The baud rate of the USB port
The Atmel STK500 Version 2.x firmware programmer (may not be required)
The port to which the Arduino board is connected
Disables auto-flash as it is not required – Auto erase is not used for ATxmega devices as these devices can use page erase before writing each page so no explicit chip erase is required. Note however that any page not affected by the current operation will retain its previous contents.
The memory to be uploaded to and the path to the .hex file (see the -U option on command line option descriptions for more information):

flash specifies the flash ROM of the device.
w: read the specified file and write it to the specified device memory
:i specifies Intel Hex

Examples

For Windows

C:\dev\Arduino\hardware\tools\avr\bin\avrdude
-CC:\dev\Arduino\hardware\tools\avr\etc\avrdude.conf
-v -patmega2560 -carduino -b115200 -cstk500v2
-P\\.\COM1
-D -Uflash:w:C:\Users\<username>\Documents\firmware.hex:i

For OSX

/Applications/Arduino/hardware/tools/avr/bin/avrdude
-C/Applications/Arduino/hardware/tools/avr/etc/avrdude.conf -v -patmega2560 -carduino -b115200 -cstk500v2 -P\\.\COM1 -D -Uflash:w:/Users/<username>/Documents/Arduino/firmware.hex:i

Alternatives

If you are not comfortable using a command line interface (CLI) it might be easier to use a GUI solution…

XLoader

For a Windows only solution, see Uploading Arduino HEX files with XLoader

From the author’s website:

  I’ve made a small program that can be used to upload your own *.hex
  files to arduino boards using the bootloader. That means you don’t
  need a flash programmer. I made it for my own use and found it pretty
  useful. So now I’ve made a more user friendly version.. To use it
  compile you’re code in something like AvrStudio. Then simply start
  XLoader.exe, pick a hex file and press upload. That’s it. Good news it
  now also supports Arduino Uno.

Arduino Builder

From Arduino Builder – standalone utility for building and uploading Arduino sketches

  Choose file, either a sketch file (.ino), an HEX file (.hex) or an ELF file (.elf)
  Choose the board type in the dropdown list.
  Click on the serial port (or USBASP button) and theuploading will be proceeded.

Arduino Uploader

From the same page, there is Arduino Uploader which is a command line version of Arduino Builder.


Help with a Tool Change Script So, I have a Raise3D Pro2, and I'm looking to perfect a tool change script for it, the goal of which is to reduce or eliminate the excess plastic that tends to build up on the nozzle when using the dual extruder. The printer uses the Marlin G-code flavor, and although I'm not sure this matters, I'm slicing in ideaMaker. The script is supposed to flow as follows:

Retract current tool
Move to X30 Y300
Check if the new active tool is T0

If T0, wipe nozzle 2mm circle
If T0, cool T1 to 165C
If T0, heat T0 to 230C
If T0 and not layer 1, recover
If T0, wipe nozzle again, this time for the new tool

Check if the new active tool is T1

If T1, wipe nozzle 2mm circle
If T1, cool T0 to 165C
If T1, heat T1 to 230C
If T1 and not layer 1, recover
If T1, wipe nozzle again, this time for the new tool

The current script I have looks like this:

; extruder switch gcode start
G10 S1; Retract for current nozzle
G1 X30 Y300 F6000; Move to X:30 Y:300
[if {new_extruder}=0]; LEFT Extruder is active (T0)
[if {new_extruder}=0]G12 P2 R2; Clean inactive nozzle 2mm circle
[if {new_extruder}=0]M104 S165 T1; Cool inactive extruder to 165c (T1)
[if {new_extruder}=0]M109 S230 T0; Heat active extruder to 230c (T0) and wait.
[[if {new_extruder}=0] and [{layer_index} NE 1]]G11; Recover current nozzle when not first layer
[if {new_extruder}=0]G12 P2 R2; Clean active nozzle 2mm circle
[if {new_extruder}=1]; RIGHT Extruder is active (T1)
[if {new_extruder}=1]G12 P2 R2; Clean inactive nozzle 2mm circle
[if {new_extruder}=1]M104 S165 T0; Cool inactive extruder to 165c (T0)
[if {new_extruder}=1]M109 S230 T1; Heat active extruder to 230c (T1) and wait.
[[if {new_extruder}=1] and [{layer_index} NE 1]]G11; Recover current nozzle
[if {new_extruder}=1]G12 P2 R2; Clean active nozzle 2mm circle
; extruder switch gcode end

The issue is that, when I run a print with this, it doesn't seem to run all of the commands. It does the move, and the cooling/heating, but the retract/recover and nozzle wipe doesn't seem to read. I'm not sure if that's because of a printer or syntax issue, or because those commands don't work the way I think they do.

EDIT: (by Pᴀᴜʟsᴛᴇʀ2 - Added new code and logic back in)

New logic:

Retract current tool
Move to X30 Y300
Check if the new active tool is T0

If T0, wipe nozzle 2mm circle
If T0, cool T1 to 165C
If T0, heat T0 to 230C
If T0 and not layer 1, recover
If T0, wipe nozzle again, this time for the new tool

Check if the new active tool is T1

If T1, wipe nozzle 2mm circle
If T1, cool T0 to 165C
If T1, heat T1 to 230C
If T1 and not layer 1, recover
If T1, wipe nozzle again, this time for the new tool

The new script I have looks like this:

; extruder switch gcode start
G10 S1; Retract for current nozzle
G1 X30 Y300 F6000; Move to X:30 Y:300
[if {new_extruder}=0]; LEFT Extruder is active (T0)
[if {new_extruder}=0]G12 P2 R2; Clean inactive nozzle 2mm circle
[if {new_extruder}=0]M104 S165 T1; Cool inactive extruder to 165c (T1)
[if {new_extruder}=0]M109 S230 T0; Heat active extruder to 230c (T0) and wait.
[[if {new_extruder}=0] and [{layer_index} NE 1]]G11; Recover current nozzle when not first layer
[if {new_extruder}=0]G12 P2 R2; Clean active nozzle 2mm circle
[if {new_extruder}=1]; RIGHT Extruder is active (T1)
[if {new_extruder}=1]G12 P2 R2; Clean inactive nozzle 2mm circle
[if {new_extruder}=1]M104 S165 T0; Cool inactive extruder to 165c (T0)
[if {new_extruder}=1]M109 S230 T1; Heat active extruder to 230c (T1) and wait.
[[if {new_extruder}=1] and [{layer_index} NE 1]]G11; Recover current nozzle
[if {new_extruder}=1]G12 P2 R2; Clean active nozzle 2mm circle
; extruder switch gcode end

As far as I can recognize, the g-code file cannot be evaluated by printer firmware.

It is expected that slicer software will be aware of tool head selection and process tool changes according to g-code provided in an on-tool change in most slicers.

The best way to think about g-code (in RepRap word) is a one-way communication as the file is not treated as a script that can read and evaluate parameters on the go. (firmware capabilities).

references:

RepRap G-code list
Printer quick start guide


How can I avoid jamming in the feeder? Recently, at work we bought a Guider II printer from FlashForge.
When we try to print models using a high resolution or models with a too high printing time, the feeder gets clogged. And the feeder is too hot. We have concluded that the feeder is getting clogged because the high temperature softens the PLA.

We check the feeder fan and is working fine. How can I avoid the jamming? Pausing the 3D printer and wait a few minutes is not working for us. I don't know if it is a common problem for this 3D printer model.

Edit:

The hotend is an all metal hot end. I can't find more information about the hot end.

In the manual of the guider II flashforge recommend a temperature of 210°C for the head and 30°C for the bed. I have tried different temperatures. The most common temperature I've used is 190°C for the head and 55°C for the bed (I obtain the best results with this temperature).

This is the Hotend used by this 3d printer.

The symptoms you describe hint to heat creep. Heat creep is the gradual increase in temperature of the cold end assembly (cooling fins and heat break). This gradual temperature increase leads to too high filament temperatures and as such premature filament softening. In combination with (large) retraction settings, this can lead to clogging of the nozzle. All-metal hotend assemblies are more prone experiencing these problems; lined hotends have a PTFE lining that also insulates the filament so that it does not soften prematurely like in all-metal hotends can happen. Heat creep is best remedied by properly cooling the hotend (good quality fan, no obstructions or large ducts) and reducing the retraction length (and possibly lowering the print temperature, but you already tried that). You could also contact the manufacturer for advice.


Understand and developing firmware - IDE help Lately I've been working on tweaking firmware to fix functions on my printer.  A few of my biggest issues are lack of understanding of C and finding out how the multiple cpp and h files are linked.  Most of what I am doing is easy enough to do with copy and paste but with most firmwares having 30+ individual files it's hard to find where each parameter comes from or goes to.

I've been looking at Eclipse with an Arduino plugin as well as Visual Studio (or Atmel Studio) with the Visual Micro plugin.  What I would like is an easy way to view where each parameter is used, maybe highlight the parameter and it shows all instances or something similar?  Is there any IDE that offers something like that or is everyone using the Arduino IDE for firmware development?

As far as I know, Marlin - assuming that is the firmware you are using - is a standard C++ (the big brother of C) project that can be opened and compiled in the Arduino IDE, but also - at least - edited lots of other IDEs.

Depending on your OS, there are several alternatives. Visual Studio, Atmel Studio, Qt Creator, XCode, Eclipse, Visual Studio Code, Atom, Sublime Text and the Arduino IDE are just some of them.

I also believe that this question should be moved to StackOverflow. However, if you have questions as to how you can make specific modification to Marlin, this forum is the right place to ask. If that is the case, consider reformulating your question!


How do I determine that the electronics are working with the test firmware? You may want to use this code to test all the electronics before
  installing any of the suggested firmwares.

From Final Step in the RAMPS 1.4 Wiki

There's a bunch of code in the sketch, and it looks to me like it just makes a component run, or heat up, for a little but and then move on to the next component, and do the same thing is that about right?

Well if I'm testing this out and my printer is already for the most part assembled; should I set the stepper jumpers to something larger like a full turn, or half step, so I can see the motors move?  Because I've also read that if you're going to test things out you shouldn't even be hooking up but one of the stepper drivers in case you burn one out!

Running this kind of test isn't really necessary; it provides a nice test to see if everything is working but so does uploading actual firmware (and this isn't any safer than traditional firmware, at that).

It looks like it runs the steppers in one direction for 5 seconds and then in reverse for 5, which should be more than enough to see them move even with 1/32 stepping (it moves them at 1 step/ms, which would come out to 3/4ths of a turn with 1/200 steppers and 1/32 microstepping).

It isn't necessary to remove any code that isn't used. It does no harm.


Settings to change when upgrading from Smart Extruder to Smart Extruder+ I am optimizing a collection of slicing profiles and in the process of upgrading some profiles from the classic Makerbot Smart Extruder to the new Smart Extruder+.

What are the parameters that should be changed with the new extruder?
Are there any params to which the new extruder is more "sensitive"?

Thank you!

There are no "sensitive" params here. You just need to set it up like the regular Smart Extruder.

Like the original design, the Smart Extruder+ is supposed to make Replicator printers simpler to use, more reliable, and more future-proof. It automatically detects when the printer's filament runs out and pauses the job, notifying users via a desktop or mobile app. It also can be quickly swapped out upon wearing out or becoming obsolete.

Additional improvements include faster print start up and refined build plate leveling, the process of calibrating a 3D printer. The smart sensors within the extruder have been enhanced for better performance and to streamline the printing process from start to completion.

Improved components include:

A better thermal management system
Extended PTFE tube to feed the filament into the nozzle
Faster print start up
Refined build plate leveling and calibration

The enhanced smart sensors are a big part of the story here though in that they allow for better speed, along with savings on the bottom line too, keeping users informed about print status from beginning to end, whether from the PC or mobile app.


Toxicity of Light-curing resin? I'm one of the lucky (??) Kickstarter supporters who received a T3D resin printer.  This uses a proprietary (so far as I can tell) resin which cures under exposure to visible, rather than the usual UV, light.  The manual is full of dire warnings about touching the resin, but no MSDS.
Anyone know if there is a datasheet on their resin, or more generally, for light-curing resins in general?
(see myt3d.com  for limited info on the machine and the resin)

While you probably cannot find an MSDS on the resin for your printer (yet), they are out there for other resin based printers. Here's a generic MSDS on one for Objet RGD515:

It's not a pretty thing.
To back this up, Fabbaloo has two articles out which talk about the toxicity of liquid resin which is light cured. I'm not entirely positive your resin falls into this arena, but would assume since they state in the handling instructions it's toxic, it's probably right along the same lines as the other toxic resins. Please note, in the article it states there are resins out which aren't toxic. They suggest one should handle all resins of this type as though they are toxic unless you have specific documentation which states otherwise.
In one of the articles (Nov 2015) quotes findings which were published by the University of California, Riverside. Their study focused on zebrafish embryos and the toxicity of two different 3D printed materials which are commonly used. The materials were Stratasys Dimension Elite (plastic extrusion) and Formlab’s Form 1+ (photo-cured resin). These printed samples were placed in zebrafish tanks to observe their effects on fish embryos and compare to “control” tanks without the samples.
The University stated:

While the embryos exposed to parts from the plastic-melting printer had slightly decreased average survival rates compared to control embryos, the embryos exposed to parts from the liquid-resin printer had significantly decreased survival rates, with more than half of the embryos dead by day three and all dead by day seven. And of the few zebrafish embryos that hatched after exposure to parts from the liquid-resin printer, 100 percent of the hatchlings had developmental abnormalities.

Note: Here is the second Fabbaloo article from April 2016.
Fomrlabs has quite an extensive list of MSDS sheets for their products. Their page states the following about their resin materials:

Formlabs Standard resins are designed to be similar or safer to handle as other household chemicals or adhesives. When measuring potential acute health effects of inhalation or ingestion, there are no known significant effects or critical hazards. Eye contact may cause eye irritation. Skin contact may cause an allergic skin reaction. The safety data sheets (SDS) are up to date for every resin product and follow the latest government guidelines. Always consult the SDS as the primary source of information to understand safety and handling of Formlabs materials.
Use chemical-resistant gloves - such as nitrile or neoprene; do not use latex - when handling liquid resin, including when removing printed parts from the printer. Exposure to resin in the liquid form can cause mild skin irritation for some people. If you get any on your skin, make sure to wash thoroughly with soap and water before moving on to other activities. Do not use solvents to wash hands, face, or any body parts. Wear gloves and use alcohol, followed by soap and water, to clean tools after handling resin.

While this is not conclusive about your specific resin, like was stated, always treat the material as though it is toxic until documentation tells you otherwise. If all else fails, treat it as toxic and you can't go wrong.


In Cura, can I make my top and bottom layer be all perimiters? I'm using Cura to slice my prints. I've noticed that when printing the bottom layer (and also the top layer, if it's flat), it first prints three walls, then fills in the middle by moving back and forth in straight lines.

I've noticed that for my parts, the walls look much nicer than the zig-zag pattern in the middle, and it also seems that the zig-zag part detaches from the bed quite easily, whereas the walls don't.

My parts would look much better, and possibly also stick better to the bed, if I set the number of walls to 100 or so, so that the parts would be entirely filled in with walls. But then the parts would be completely solid, which isn't what I want. So what I want to achieve is that the bottom layer (and if possible also the top layer) are printed as if the part was composed entirely of walls, but the other layers are printed with three walls as normal. Is this possible in Cura?

I found the answer myself just after posting - I'm posting it because it might be helpful to other Cura novices.

There is a setting for this, it's just that it's not shown by default. In print settings, you have to click on the three lines next to the search box, and select "Show All Settings". Then you can find a setting called "Top/Bottom Pattern". Setting this to "concentric" does what I described.

Actually this setting affects not just the top and bottom layers, but all layers that are part of the top and bottom shell. This seems like a good thing, but if you really want to affect just the bottom layer, there's a setting "Bottom Pattern Initial Layer" that does this. There is also a setting under "Experimental" called "Top Surface Skin Pattern" that I think does the same for just the top layer.

In addition to "Concentric" there is also a "Zig Zag" option that's quite similar to the default "Lines" mode.

You can also change the visibility of settings in the preferences menu, to make these settings show up by default.


Extruder clicking issue with MKS Board v1.5 So I know there have been several clicking Extruder threads but have not found any solutions to the one I am having.

Background:
I have a custom Prusa like 3d printer fitted with an MKS board (v1.5) and an MK3 Extruder.

The issue:
While i can extrude fine when ordering some extrusion, as soon as i start to print an object the extruder just starts "clicking".

What I have tried so far:

Changing motors: I have tried using a new motor which I know it
works and the problem persists.
I have adjusted the stepper driver voltages, and the problem
persists.
I have changed the PSU and the problem persists.
Changing the whole board: I have changed the whole board with a
brand new one and the problem persists.

I am out of options here. So now the only logical explanation is that the both boards (the old and new) have exactly the same problem, i.e. the extruder stepper driver is bad in some way. Yet again, it works fine when simply extruding...

Any help would be much appreciated.
Thanks.

There is one reason why extruders "click": the material can't be melted and advanced fast enough.

There are two likely reasons why your extruder works when used manually, but not during a print:

1. The temperature is not hot enough for the speed (volume per second) demanded by the print.

Have you verified that you're using the proper temperature, and that the head is reaching the proper temperature?

2. There is too much resistance on the delivery.

Have you verified that the Z positioning is not too close, causing back pressure and interfering with the deposition?


Correct nozzle replacement I have a Monoprice Maker Ultimate 3D Printer and have tried to replace the nozzle.

The nozzles I bought turned out to be too small.

What are the important specifications of a nozzle?

Thread size
Thread length
That plastic tube thing?

Monoprice is very bad at publishing the specs, can I work it out with a caliper?

This is a so-called MK10 nozzle, it is larger than the normal nozzles you find (as you found out).

There are quite a few questions on this nozzle, with e.g. this answer or this answer.

This nozzle uses M7 (metric threads of 7 mm) to have more room to fit the PTFE tube (white tube) in the nozzle itself. This tube forms the barrier between the heating source and the filament feed so that it does not melt too soon. You can find these nozzles on those typical auction websites by searching for "MK10 and M7".

When you have ordered the correct nozzle you could reuse the existing PTFE liner if it has not degraded or damaged, or buy replacement PTFE tube of 4 mm outer diameter and 1.9 or 2 mm inner diameter and cut a similar sized replacement liner.


Very low strength of HIPS prints - Why? I'm using a Prusa i3 MK3S printer. After ~8 months of printing PLA, PET-G, ABS I decided to buy some HIPS and print something with it. I cannot print >1 filaments at once, so I'm not using it as a support for ABS, I want to create some high durability working models, like gears, robot parts etc.

While the quality of my models is perfect, unfortunately their strength is disappointingly low. They easily undergo plastic deformation or break. I've tried lots of settings, some yielding better or worse results, but the problem is present regardless.

My settings:

Printer: Prusa i3 MK3S
Nozzle: Default 0.4 mm nozzle for Prusa
Layer Height: 0.2-0.3 mm
Temperature: 230-240 °C nozzle, 100-110 °C bed
Slicer: PrusaSlicer 2.0.0

I've read lots of tutorials regarding HIPS printing and they did not give me the answer to my question...

Am I doing something wrong or is it normal for High Impact PolyStyrene? At this point, the High Impact Polystyrene seems less High Impact than generic PLA.

It might. If HIPS is a single material with consistent properties, it might have a narrower temperature range.  Online references suggest up to 240 °C. Try that, then 245 and 250 °C. Maybe higher.


MKS GEN L unknown motherboard error This is my first time asking for some help on here and I have Googled, but only found a few reference to this issue. I know I am doing something dumb but I have no clue what it is.

I get an unknown motherboard error every time I try to setup my MKS GEN L. At first I found that in the boards.h file there was no reference to this board and the pins.h file was not there either. I have added both of these in and still nothing. I have checked the configuration.h and as far as I can tell I cannot find the error.

I have tried this in 1.1.9 and 2.x of marlin and get the same error.

The message is:

    Arduino: 1.8.9 (Windows 10), Board: "Arduino Mega or Mega 2560, ATmega2560 (Mega 2560)"

In file included from sketch\MarlinConfig.h:33:0,

                 from C:\Users\name\OneDrive\Desktop\Ender 5 1.1.61 version (1)\Ender 5 1.1.61 version\Marlin\Marlin.ino:31:

pins.h:235:4: error: #error "Unknown MOTHERBOARD value set in Configuration.h"

   #error "Unknown MOTHERBOARD value set in Configuration.h"

    ^~~~~

In file included from sketch\MarlinConfig.h:39:0,

                 from C:\Users\jcgra\OneDrive\Desktop\Ender 5 1.1.61 version (1)\Ender 5 1.1.61 version\Marlin\Marlin.ino:31:

SanityCheck.h:311:6: error: #error "BABYSTEP_ZPROBE_OFFSET requires a probe."

     #error "BABYSTEP_ZPROBE_OFFSET requires a probe."

      ^~~~~

SanityCheck.h:624:8: error: #error "Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN requires the Z_MIN_PIN to be defined."

       #error "Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN requires the Z_MIN_PIN to be defined."

        ^~~~~

SanityCheck.h:909:4: error: #error "HEATER_0_PIN not defined for this board."

   #error "HEATER_0_PIN not defined for this board."

    ^~~~~

exit status 1
#error "Unknown MOTHERBOARD value set in Configuration.h"

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

My config file is as follows Config.h.

Please let me know if there is anything else you might need to help with this matter and thank you for your time and attention.

The MKS GEN L board was added in Marlin release 1.1.7 .

According to the configuration file you've linked and previous Marlin releases, your copy of Marlin is release 1.1.6. While all Marlin releases before 1.1.7 had "010100" as "CONFIGURATION_H_VERSION", earlier versions had less features than listed in your configuration file.

In Marlin 2.0.x, the MKS GEN L is also available.

Since you said it was also unavailable in 2.0.x, please provide a copy of your entire 2.0.x setup.


Good (preferably free) Beginner Software for Part Creation? What software is best for the basest of n00bs when it comes to 3D parts creation?

I have a heavy math background and know how to create explicit functions of volume, surface area, center of mass, etc. Ideally, I'd like a program that uses those strengths but I realize that most n00bs have a crippling math phobia so I'm not holding my breath.

I tried freeCAD once and made some headway but the next time I turned my computer on, it refused to open. It was just a weakling netbook that I don't even have in my possession anymore but the computer I'm currently using is rather slow and doesn't seem to have much memory left either, so I still need something lightweight.

tl;dr: Seeking a free, lightweight program to create .stl files that is good for n00bs that are not afraid of math.

I don't have a heavy math background, but enjoy using such skills when applicable.

If you've not yet explored OpenSCAD, you may find that it meets your qualifications. It's more or less a scripting/descriptive language "compiler" that takes ordinary text and converts it to your model design. I use quotes, because I'm not skilled enough to qualify it as a true compiler, although it works in a similar manner and may indeed be a compiler.

It meets another qualification of yours in that it's free and there's quite a supportive mailing list/forum for any questions or difficulties that arise. If you look on Thingiverse using OpenSCAD as a search term, you'll find others' code available for examination and integration into your own models.

For the folks who are not so much into the math and text and logic, there's a GUI of sorts for OpenSCAD called BlocksCAD that allows drag and drop of various modules in a manner akin to Scratch programming.

I'd been using OpenSCAD long enough that I found BlocksCAD to overly complicate the creation of models by obscuring details. It may be better suited for younger model makers in that respect.

Syntax and punctuation errors would be eliminated with BlocksCAD, while it's far too easy to create such errors in the editor for OpenSCAD. One gets used to it and error count quickly is reduced.


Proper way to power down a FDM printer I just got my first 3D printer today, QIDI X-ONE[2], and so far so good with the setup and getting my 1st print. I wanted to power off the printer, but I don't see any instructions on how to properly power off the machine.

Does anyone know how long I should wait, or what the minimum temperature would be safe to power down the machine?

[TL:DR] - If you can comfortably hold the nozzle with your fingers, you are good to go

In order to understand how long one should wait, it is important to understand why one has to wait.

All modern consumer-grade FDM printers have their printing head made of two assemblies: the cold end, where the extruder stepper motor is located and the filament must be in solid state, and the hot end, where the filament is actually melted and pushed through the nozzle.

Between the two there is a thin-walled length of pipe called heat break, whose purpose is to keep the two separate and make difficult for heat to reach the cold end by conduction.

However, the heat break is not "watertight", and heat also transmits via the convecting motion of air and IR radiation, so the cold end is actively cooled (most commonly with a fan).

The reason you want to wait before switching off the printer is that you want to keep that fan spinning until there is no chance for the heat to creep up and melt the filament in the cold end.

If the filament were to melt in the cold end, the extruder would clog and you would probably need to disassemble it.

In order to make sure the cooling happens, you have to make sure that your G-code tells the printer to stop heating the nozzle, after the print is done.

All slicers that I know of have a specific configuration setting called "end G-code" or something similar where you can manually insert the code you want to execute at the end of each print.  The part relevant to your question could look like this:

M104 S0 ; turn off heating block

If you want to get fancy and your hardware has a beeper you may also try:

M109 S60 ; wait for nozzle temp to drop to 60 °C
M300 S300 P1000 ; make a beep sound

Typically "end G-code" has other stuff too (move the head out of the way, switch off the heated bed, disable the idle hold of the steppers...)

Just make sure to move the nozzle away from the printer as your first action: you don't want the hot nozzle to linger idle above the print and ruin its top layer!


Underextrusion after travel moves with PETG/Colorfab XT I came across several issues which seem to have been lowered.
Firstly, I changed from a 0.4 to a 0.5 mm nozzle. Because of the backpressure I was not able to print my PETG (Colorfabb XT filament) below 270°C which caused unresolvable oozing. After that I was able to extrude till 230°C.

The left print below shows the result. I disassembled the hotend, there was no leak or whatsoever. Maybe it was too cold for printing. However, the temperature displayed was 250°C. Then I replaced the cheap aluminum heat block with a copper alloy based one. After that my PIDs did not work anymore. I had to greatly enhance the d-term, otherwise there was a big overshoot. Guess there was a serious heat conducting issue with the old BQ hotend.

Anyway, from there it became better. However, I noticed that I still have severe underextrusion after travel moves (second piece, first picture, first piece, second picture). I use Cura, so I activated retraction with the feature to prime after travel moves. I got the wall closed just after 0.35 mm³.

My Question: Is this underextrusion after travel moves normal for PETG/XT? I did not discover such behavior with PLA or ABS in the past.

Current Site Advice: Despite the weight, copper heat blocks seem to be worth the upgrade.

Have you tried adjusting the Extra Restart Distance in Simplify3D or Retraction Extra Prime in Ultimaker Cura?  Most slicers should have a similar setting, perhaps named just slightly differently.  A small positive value can help prime the nozzle after a long travel when you've lost back pressure or oozed a little.


Outputting an STL file that contains multiple objects for import into Blender I want to print a object that looks like a flat board with a set of matchbox-like lumps on top of it.

I have written a script that outputs an STL file. To keep the script simple, it creates an object that includes non-manifold edges. To be precise, the board and the boxes are a single model, but each has 6 faces made from 2 triangles. The underside of each matchbox rests on the top of the larger flat board.

If I understand correctly, the top face of the board should be broken up into many smaller triangles to take into account the position of the matchboxes, but coding this by hand (although it might be an interesting Exercise For The Reader) would not be a good use of time. Well-written code that already does this is built into FOSS applications like Blender.

However, Blender cannot merge or fuse shapes that are part of the same object. My current understanding is that I will need to:

Provide Blender with multiple objects
Select all the objects
Use Ctrl-J to merge them
Export the world in STL format

Is this a valid approach?

If so, my key question is: how do I format the STL file so that Blender will recognize that it contains multiple separate objects?

(I have found references to STL files containing multiple objects, but I have seen nothing in any of the STL files that I have examined that tells me: here is the end of one object and the beginning of another.)

Or should I just be clunky and export two STL files — one for the board and one for all the matchboxes — and then import both into Blender?

NOTE: I know that there are free services like Netfabb that will correct my simple files for me, but I would prefer not to include that in my workflow if possible.

Blender imports all STL files as if they are a single object. If you have multiple meshes in the object that you want to be separated, you can press tab to enter edit mode, select the parts that need to be separated, then hit P and separate by selected.

If you want to print those pieces as one part you have to get rid of any internal faces. The easiest way to do that is to select an object and then use the boolean modifier in union mode. Once you have the object that you want to fuse selected and in place, apply the modifier, that should leave you with an object without internal faces.


It seems my filament is burnt when I use PETG I use the Cura; nylon default(recommended) settings for PETG. Upon my filament's box is written 200-240 for nozzle and 75-85 for bed. So I tried 245/80 - 220/80 - 220/60 - 245/60.

But I got same result as you can see in the pics:

My printer is PrusaI3 (actually a chinese kit that I assembled it myself). Also I had good print results with PLA before this. I was using 190/50 for PLA).

It looks like you have a clogged nozzle/hot end. I use 225°C @ 40mm/s for PETG with 235°C @ 30mm/s for the first layer.

If you print at 245°C, you risk burning the PTFE liner in your hot end. You really need an all-metal hot end to print at such temperatures.

It is possible that you have already damaged the PTFE liner, and this may be the cause of your problem. However, I would check for a clogged nozzle first.


How to edit G-code created in Cura to begin printing at a specified layer height? I have an issue with implementing a G-code to print a large 3D object using the Creality CR-10 printer. The print went well for over 30 hours but the filament broke off during the print and stopped at a height of around 172 mm of a total height of 256 mm. 1753 layers total , stopped at layer 1170.

I want to restart the print so the extruder begins printing at a height of 172 mm rather that from the start.

I have tried several sites online and had removed the previous 1169 layers and also changed the start position of the extruder to the code below:

G1 X20 Y20 Z385; Center extruder above bed

The problem I have is that when I start the print, the extruder moves to the middle of the plate and begins moving upwards but I need the extruder to stay near the edge of the build plate and move upwards past 172 mm and then begin printing as it would have for layer 1169 and continue the print. At the moment the extruder moves upwards and towards the middle of the plate and will impact with the existing printed material (see picture attached) and this stops it from correctly positioning.

Can anyone help with the start code for the G-code that I could use ? I just need the x,y,z to home and then for the extruder to stay near the edge of the build plate but move past 172 mm in the z direction before then beginning to print. Any advice would really be appreciated , first question on this platform so apologies if the detail isn't there. If you need anything more please don't hesitate to get in touch.

Well this is a little complicated since nozzle height could collides with the part if the line 1169 has had started to be printed (part of the line), so the overlap will be the main problem, however adding the initial parameters to heat the extruder and getting the X0 and Y0 with G1 X0 y0 Z385 I recommend to increase Z by 3 or 5 mm, so the extruder will travel from a higher position to avoid the crash going for example, from Z390 to Z385.


How to identify, use, and replace the Copperhead Bowden coupler? After attempting to remove my Bowden tube for maintenance I have managed to break the coupler used to secure the Bowden tube in my Slice Engineering Copperhead heat sink. I'm having significant trouble identifying the proper name of and source for a replacement coupler. I've located others which seem to be similar in design but not the same size. I'm finding conflicting name and type information and am unsure which is correct. It's a small black plastic coupler with a blue ring clip used to secure it.
To prevent future issue I also would like to know the proper procedure for use... i.e. the methods for securing and removing the Bowden tube without damage.

It's an embedded Bowden collet. Also called a Bowden clip which is a much more vague and overloeaded term.
E3D (UK) and MicroSwiss (US) have their own branded versions but they're likely not made in house, they're prbably reselling what they buy in.
Youtubers appear to pronounce this Bowden collect which does not help.


Printing 3D letters in any font? I am looking at printing a fair amount of text, ideally using some custom fonts. I quite like Stay Classy but will likely have to consider change if it causes issues.
I am a little stuck on where to start with using these in some tools. I have tried creating an SVG using the font and importing to Tinkercad however that always fails. I only want to print the text, nothing else.
How do I properly convert my font into .svg and import that so I can make my bodies? While I have tried Tinkercad I am open to alternative tools if this can be achieved more easily.

I think @Trish answered your question more specifically, but an alternate route (that I think its simpler assuming you don't mind the learning curve) is using Blender.
Rather than creating an svg in a different software and having to go from something like photoshop to inkscape to tinkercad to your printer software...  Blender could do most of that in one step, and its free.
In Blender, add text:

Hit tab to go into "Edit" mode and in edit mode you can simply backspace and type whatever you want.

In the "Font" menu, you can choose from any font on your computer.

And you can make it "3D" by extruding it:

When it looks good and you're ready to print it, make sure to convert it to a mesh, then export as .stl for your printing software. (Cura/Slic3r/etc.)


Threads for nozzle (Anet A6 extruder) How do I know what nozzle to get for my Anet A6 printer? I want to get some hardened nozzles because I would love to print with some glow in the dark filament, but I know that eats up brass nozzles fast. But there is so many thread differences so I don't know which one to get, or even what thread the Anet A6 is. Could I have some help finding the thread type and what hardened nozzles would be recommended?

The Anet A6 uses the mk8 extruder (also used by the Anet A8). Please search for mk8 nozzles (for 1.75 mm filament). These nozzles use M6 threads. Standard nozzle size is 0.4 mm.


Is there a method or S/W available to stitch together a DLP projector's output into a "moving picture" to SLA print in a larger area than its output? I'm popping my cherry here, so to speak. Refer to my Hackaday project for system details & pictures:

Sciclone 3D Printer Conversion
Repurposing a lab-grade liquid handling system to a 3D printer featuring 3 axis, 20 micron bi-directional repeatability on a 14 cubic foot build platform.  https://hackaday.io/project/3212-sciclone-3d-printer-conversion

I have an opportunity to repurpose a high-dollar lab machine into a 3D printer with very high performance capabilities and 14 cubic feet of production volume.  Although FDM is certainly a realistic "no-brainer" capability for this setup, I believe this level of accuracy, speed and volume - not to mention the original cost being well over $100K - justifies a finer level of output and I believe Stereolithography (SLA) is what I'd like to concentrate on.  With such a large printing surface/volume (37"X x 24"Y x 28"Z), I don't know how I would implement a DLP projector to cover such a large surface and still maintain the level of accuracy and resolution.

This system is already equipped with the highest quality stepper motors and a "staccato" high-speed driver-controller, an on-board pneumatic & electrical 6-channel controller that could be used for selecting colors, resin injection/flow, resin tank elevation, curing LEDs, temperature/ventilation fans, laser scanning, router speed, etc.  The X & Y movement guide bars are located in the upper deck, moving the Z axis component assembly.  That assembly requires simplification to enable it to be downsized to allow for the printer output to reach closer to the perimeter of the output area, but the weight & bulk of the assembly is greater than any DLP projector that would take its place so this system can reliably perform with a heavier projector if necessary.

Basically, I think I'm looking for a software-defined method of coordinating the X & Y movement of the projector's output to the printing surface (presumable a tray of photo-sensitive SLA resin).  Since the projector's proximity to the printing surface must remain relatively close, the output will be constrained to an area significantly smaller than this platform's entire printable surface, the projector's output will have to "play a movie" of the model and instead of projecting still images, I believe it would require an animated output that exposes the resin to build models.  Sort of like a silk screen process but with UV light.

I'm slightly familiar with the concept of manipulating laser beams using micro mirror aiming devices to draw on SLA resin beds - and this is a possible solution if I knew where to find such a component and how to control it, but that kind of printing would be far too slow for making large-scale models because it would essentially almost as slow as a pen plotter.

Is anyone aware of an existing method of integrating the "moving picture" method I'm thinking of, or have I envisioned something that hasn't been invented yet?

Cheers!

Cool Idea.

I know using a projector sounds like solution; but, I in practice, think it is going to be difficult.

My concern with trying to use a projector would be two-fold.

It would have to project on a large flat surface.  Since basic optics wants to focus on a sphere, when projecting on a flat surface you have to adjust for a focus distance that varies with angle and also deal with keysoning. I know this is a common problem fro projectors; but, there is no perfect solution so either.    The focus issue may be solvable with custom optics; but, that is not something that is easy to DIY.  The keystoning could be corrected for with optics and/or in software; but even then you are going to have inconsistent resolution.  Not only that; but, the problem gets worse the wider and closer you are, which is EXACLY what you want to do.
I would be concerned that the frequency range that the SLA resin cures at will be outside the normal range of projector so you would require A LOT more power/time to get it to cure.

On the other hand, lasers light projectors are a well established technology.  They moved into the entertainment space quite a few years ago; so, I suspect you could get one that covers the space you are interested in for a reasonable price.

Since laser beams are very narrow, focus should not be an issue.  Keysoning can be easily accounted for in the sweep algorithm.
You could choose the frequency of the laser to that it in the most efficient curing frequency for the resin you want to use.


Is it possible with current 3D printers to print a sound trace? Is it possible with the accuracy of current 3D printers to print a sound trace?

On a vinyl record the grooves in the record are an encoded sound. Is something like this doable with 3D printers?

If Vinyl-like isn't possible, could a sound be printed at desktop scale? I mean printing the waves out that if you ran your finger along it it would reproduce the encoded sound? Examples would be Rumble Strips, the Musical Roads or highway rumble strips.

Sound Encoding basics
Sound is a compression wave, and any depiction of it has to be an encoding of it. You can encode it so you can recreate the sound using a contraption that oscillates in the right way to compress air again in the right pattern, but you can't just "print it out" like you can scale up a lightwave from the nanometer scale to a visible one as a representation.
Let's take a simple example: a 440 Hz tune is generally considered to be the A4, aka concert pitch a or A440.
It could be encoded in a various ways. The probably oldest is to encode it as a note in violin notation, which then could be reproduced by anyone using a properly tuned instrument. The actual result depends on the instrument used as much as on the skill of the player. Each instrument thus might decode this encoded note differently, based on the physical setup of the instrument. Each instrument automatically creates the appropriate overtones.

In Midi, it is encoded as Note 69 and any machine that can decode a midi file could use this instruction, paired with an instrument to use, to create the A4 that is set for it. In Midi, the mere instruction of Note 69 does cut out skill, but how it sounds and feels comes from the instrument setup - which contains information about what overtones are to be created when playing this note.
For a physicist, the pure sound is encoded as just the notion of 440 Hz and some amplitude to balance how loud it is. With those instructions, he'd be able to set up a device that has these creates a 440 Hz tune. To generate the sound and feel of an instrument, the encoding for a physicist would need to contain all the overtones that are to swing with this one sound.

History of sound recording
Let's look at the very first way of recording sound: The Phonautograph of 1857 used a piece of paper or a sheet of glass blackened and then a membrane move a needle. When the plate would be moved, the needle left a written path. The encoding was done via 2 factors: the setup of the stylus (mainly how long is the arm) and the speed of the movement of the plate. Changing either changed the encoding. A longer arm would record a larger amplitude (making fainter sounds recordable) while faster movement would alter the timescale recorded, allowing to look at short instances and better compare them.
These vibration-pattern records could be used to measure and compare sounds but not be used to recreate the sound, as lines on paper nor scratches in soot are a good way to keep a reading needle in boundaries. it took till 2000 and the use of scanners as well as digital processing to recreate these recorded sounds.
The solution to recreate sounds was found by the Edison Laps in 1877 with the phonograph, which used a piece of thick tinfoil to record the motion pattern of the membrane. Again, then encoding was done via the arm setup and the speed at which the tinfoil clad cylinder moved (or rather rotated). It would till the 1880s develop to a wax cylinder, which was easier to inscribe and reproduce from. One such machine was used by Carl Orff.
The first Gramophone came in 1889, mainly altering the shape of the recording medium from cylinders to the well-known shape of vinyl records but made from hard plastics and shellac. Around 1901, a 12-inch gramophone disk held only a 4 minutes track, speaking volumes about the problems of encoding the complex patterns of sound onto a disk. At the same time, an Edison Amberol Cylinder held 4 minutes 30 seconds but would spin at 160 rpm. Soon after, celluloid would become the recording medium of its time, and the disk the de-facto "standard" as it was much better storable.
In 1925 finally, a real standard was developed to record at around $78^{+0.26}_{-0.08}$ rpm, which lead to only a 0.34 rpm difference between areas of 60 or 50 Hz mains voltage (though they needed different encoder rings), making records interchangeable between both machine types. All these recordings were encoded naturally: the vibrations of the membrane in the recording tool would be 1:1 transmitted to the vibrating stylus that would then do the encoding in such a way that a machine would reproduce what the recording one "heard" quite accurately.
When Vinyl came to the playing field as a recording medium at the end of world war II, so came a swap in the reading needle type: instead of a needle that would agitate a membrane directily, sapphire needles that would agitate an electrical pickup which in turn would activate a speaker. But while the recording technology advanced, the track length of a 12-inch disk was still limited to about 4 minutes at 78 rpm. It would only reach more than this in the last years of its use by applying LP technologies to pack the track tighter in the 1950s, achieving 17 minutes.
1948 came the LP, what we know as a classic vinyl record. At its introduction it could cram 23 minutes onto one side, making this possible by only using 33.5 rpm as the recording speed and thinner, much tighter coiled groves, increasing the information density by a factor of 5.75 for a 12-inch disk. 7-inch 45 rpm "singles" came out 4 years later. Within 10 years, the 33.5 and 45 rpm encoded variants had almost completely replaced the 78 rpm market.
Vinyl
As the history of analogous recordings shows, encoding a sound signal is rather easy in theory, hard in practice. A typical 12-inch LP Vinyl record of 20 minutes is a grove that is  427 meters long and coiled up 667 times. That means a single groove is between 0.04 and 0.08 mm wide - with an equally thin wall between. That means, that to achieve a printed phonograph record, you'd have to print accurately down to 40 microns to get an empty track. However, we also need to add the signal atop. And here comes the real problem:
An empty track has some 22 µm deviations, which the needle will usually not pick up at all. Dust, which creates the crackling at times, is in the same area (1-100 µm). The actual sound signal is encoded to have features as small as 75 nanometers. That is 3 magnitudes lower than the mere geometry of the grove, and equally much lower than any printer - including SLS - can achieve today, as 50 µm is often considered a lower limit in 2019.
To show how much tiny defects would ruin the sound quality, look at this rapid cast of a vinyl record. The resolution of the negative and the subsequently cast record is good enough to recognize the music, but the resin cast did contain so many gas bubbles that the noise level of the copy is very high.
Bonus: Unlike on cylinders the encoding of the signal on disks changes from the start to the end! The vinyl spins at a constant rate, but the radius from the center changes, leading in the speed on any part of the grove to be different as $|v|=|\omega \vec r \sin(\theta)|$, where omega is the speed in rad per second, theta is the angle of the reeding, so in this case, the sinus term becomes 1 and vanishes. This factor has to be taken into account for encoding so the pitch of the record doesn't change if the record is not created naturally by inscribing the signal onto a spinning disk.
Other encoding
Rumble Strips
However, it is quite easy to create a structure that creates sounds based on interaction with another body. Highway Sound Strips create sounds as the car tire bumps up and down, turning the car and tires into resonance bodies while the street "beats" upon it. In the case of a large percussion instrument like a car, we are talking centimeter scale.
Peg-Cylinder
A very simple method would be to go back to encoding and check out the note notation but limiting the length of notes to one unit. Encoding music this way results in pegs or ridges on a cylinder, which then can be used to actuate a mechanism to decode the music and create sounds like in a music box. In a music box of this kind, the demand for accuracy is about 3 to 5 magnitudes lower than in vinyl records: we speak about a tenth of a millimeter to centimeter scale.
Such a Musical box or noisemaker can be easily printed and is pretty much a rumble strip coiled around a cylinder. The length of the sample is determined by the resolution, playback speed and diameter of the cylinder while the complexity is determined by the rows of pegs of it: a noisemaker is pretty much a 1-note, high speed, music box. Typically, one rotation stores about 25 to 30 seconds. Typical examples would be the first part of Für Elise,  or the Marble Machine (Between second 30 and 35 the encoding wheel rotates 1 fifth). Some barrel organs also use the peg method, like one can see here. With some trickery, one cylinder could be used to encode multiple parts that play one after another once a rotation is done by and silencing some parts of the machine depending on an extra encoder, like this 3-part Für Elise music box.

Hole-Plate(-strip)
A different method would be to encode the music as holes in a continuous strip and use air as a decoding method. If the air then gets directed into pipes, we have a street organ. Typically, one would use a paper strip as the encoded message, but it could be printed just as well, especially if one uses a setup that uses plates hinged to one another instead of a rolled-up paper as in this example. With such a way to stash away the extra length, the upper limit for music length rises from a couple of seconds to several minutes easily even with such a "bad" encoding.


Underextrusion after long travels I'm having problems when printing small parts over big areas.

I'm currently printing quite big casing (~180 mm x 100 mm), which has hexagonal holes on the corners. On the first layer the printer prints, in order:

Supports inside the holes,
Borders around the holes
Border of the whole casing and finally
Infill (since it is first layer, infill is solid)

When printing borders around holes, printer's head travels between all holes (so that's around 90 % of the whole bed width), what results in filament oozing and the hole borders being underextruded (sometimes to the point, that filament doesn't stick to the bed).

My setup is CReality3D Ender 3 with Ultimaker Cura 3. Most important settings:

Print speed 40 mm/s
Nozzle temperature 215 °C
Bed temperature 60 °C
Retraction on travel turned on
Retraction additional prime amount set to 0.05 mm3.
Outer walls printed after inner ones

What would help (I guess) is slowing down the print after long travels or priming more filament, but proportionally to the travel distance. There are no such settings in Ultimaker Cura though.

How can I deal with such problem?

it seems like retraction issue

i would say you should experiment with

retraction length - so it would retract more
extra extrusion after retraction - so the printer could put some material before it will start your next hole :)

unfortunately there is no good guide how much it should retract and how much it should additionally extrude as it depends on "all your printing circumstances" but here is my arbitrary list in order of importance

filament (density - type and producer)
temperature (viscosity - hotter filament flows easier)
nozzle diam (as filament escapes easier through big hole ;)
heat barrier (cooling efficiency - filament should be cool as long as possible up to (or down to) the nozzle)
extruder gearing quality (good coupling makes precise retraction and extra-extrusion)
cooling (fan and duct should cool your printing right after it sticks to the surface)

and one more thing worth to mention

usually the first layer is not cooled which makes whole system hotter (so filament flows easier)

you could experiment with it too especially for big printouts

so

overextrude first layer AND
turn on cooling first layer

it seems like there is a bunch of things you can do to master it :)

good luck - it's definitely manageable


First Layer problems? I am using the E3D v6 hotend with the titan extruder. Everytime I go to do a test print, just enough stringy filament oozes comes out of the hotend "right before" it lays down the first layer. I have no idea why it oozes out the little bit of filament before it prints.... The unwanted filament builds up while some of the first layer is done. As a result, what has been printed or about to be printed get stuck together as it tries to do the rest of the print....

As the filament in the melt chamber heats up, it's going to inevitably ooze a little bit.  Make sure you watch for this and clean it off as the hot-end heats up, and setup you slicing software to print a skirt, which will print a few loops around the outside of your print, separated by a few mm, to deal with ooze and get filament flowing properly.

If it oozes a lot, try reducing your print temperature a bit.


Ender 5 Pro print quality issue I got my 3D printer from Creality 1 day ago. My dog off the SD card came perfectly, Benchy was also printed almost flawlessly. I used standard Benchy settings on all my prints.

Now I tried making a mask and it failed mid-print. When I saw it failing I stopped the print.

What do you guys think is the cause of this?

I printed with the following settings:

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

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

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


I have bad print quality, what should i do? So I have an issue, every time I try to print anything it basically looks like a comb. All around the model there are just holes and holes everywhere. I dont know what to do about it. I don't have any infill, but honestly, this is just all stacked ontop of itself, so it shouldnt need to be filled in.

Please help me figure out how to make sure that the layers are actually layers, not just sticks standing up into the air.

The images that you show are typical for heavy under extruded prints. The "comb like structure" is caused by extrusion of too little filament which balls up to a certain point in time that it sticks to something previously printed, then balls up again, etc...

Under extrusion can be caused by many things, but this much is usually caused by an incorrect filament diameter set in your slicer. But, it can also be caused by a mechanical (or electronic) defect like a slipping extruder caused by a loose gear or missing steps.

I'm operating 2.85 mm and 1.75 mm 3D printing machines (both have pros an cons) and occasionally I've experienced exactly the same results (you call it a "comb" like print). E.g. the slicer Cura (Ultimaker software product) is known/used to be known to reset the filament diameter to the default of 2.85 mm after an upgrade of the software, which is the filament diameter used by Ultimaker printers.

If you add more details to your question, we can tailor the answer to your specific issue, but it certainly is under extrusion.


G2 / G3 command in Cura I'm using Cura for my 3D printing (an ultimaker S5 printer) and in order to understand 3D printing I'm trying to learn G-code.
I've noticed that even when the model is full of circles, the G-code is full with the G1 command. I haven't seen the G2 or G3 command at all!
How could this be?

The .stl files most commonly used for printing do not have any circles in them at all!
.stl files describe the surface of the things they represent with lots and lots of triangles:

That also means that your slicer doesn't really know which parts of the model are supposed to be round (where G2 and G3 might be applicable).
And, another consideration, though historical: Most 3D printers were (and are) based on relatively weak 8-bit microcontrollers. It's much easier for those microcontrollers to calculate the movements needed for the print if it's just straight lines, rather than elaborate curves.
One issue that can arise with this is when your model is of high quality, and your slicers uses all of that quality - a simple circle can then become hundreds or thousands of tiny segments, which all need to be transmitted, parsed and executed - which may lead to stuttering.


Convert ball-stick model to STL from the command line I regularly have 3D models that consist of a Boolean union of balls and cylinders (molecule models, star maps, mathematical designs), that I then want to convert to a STL model for printing at Shapeways. But I don't know how to easily do that! I already have the model as a series of floating point numbers (four for each ball, and seven for each cylinder), so I don't want to have to go into a graphical interface to click/drag points. Instead I want to convert my lists of floating point numbers to STL from the command line.

I thought this would be a trivial thing, but I cannot find what is the best tool for this. All I need, I think, is a pointer to what tools are most appropriate (although more detailed help will be appreciated :-)) I thought that "gmsh" might be good for this, but it is not immediately clear to me how to use it for that.

I would like the software for this to be "free", in the sense that it does not cost money. Also, I am not a Windows user, so I would like to be able to run this under Linux or macOS.

I would suggest using OpenSCAD for this. OpenSCAD does not natively support reading data files that aren't 3D/2D models or images, but you can write a simple program to generate OpenSCAD code.

I would suggest first writing an OpenSCAD file that implements your chosen type of "ball" and "stick", perhaps like:

module ball(x, y, z) {
    translate([x, y, z])
        sphere(d=10, $fn=60);
}
module stick(x, y, z, length, rx, ry, rz) {
    translate([x, y, z])
    rotate([rx, ry, rz])
        cylinder(d=5, length=length, $fn=60, center=true);
}

Then, take your data file — let's suppose it's a CSV —

ball,0,0,0
ball,100,0,0
stick,50,0,0,100,0,90,0

and convert it into OpenSCAD by adding the appropriate syntax (this could even be done using a basic find-and-replace tool):

import <ball-and-stick-definitions.scad>
ball(0,0,0);
ball(100,0,0);
stick(50,0,0,100,0,90,0);

Then, producing the STL is just a matter of running the openscad command on your generated OpenSCAD source code.

If your stick parameters are not Euler angles but "start point" and "end point" you'll have to add the "rotate to point at…" math yourself, but that is within OpenSCAD's capabilities as it has vector math operations and multmatrix, or trigonometry if you prefer to generate Euler angles; you don't need to do that math at the file-conversion stage.


PETG filament doesn't stick reliably to fake Buildtak surface I just got my first spool of PETG and tried to calibrate an Ultimaker Cura profile for it on my Ender 3 today with limited success.

I've had severe issues with the filament not sticking to the build surface, instead balling up around the edges of the nozzle tip. (rather like this post) Sometimes it sticks alright, but that happens properly > 50 % of the time. I've never seen this behavior with my PLA materials.

So far, I've only been trying to print this calibration part.

Relevant Profile Params: (let me know if I need to post more, I think these are the relevant ones)

Layer Height: 0.2 mm
Temp

Nozzle: 240 °C
Bed: 60 °C

Print Speed: 60 mm/s (more specific params left to auto calculation)
Travel Speed: 300 mm/s (max)
Cooling fan

Initial: 0 %
Fan Speed: 100 %

Retraction

Distance: 5 mm
Speed: 50 mm/s

Skirt min length: 250 mm

I was initially going by advice from Thomas Sanlanderer's video on PETG, starting with 230 °C/70 °C, but when that really didn't work, I then tried the advice of a Reddit user (can't relocate thread) that said to try a lower bed temp. I then experimented with different bed temps in the 50's to mixed avail. Most other threads are talking about PETG + glass, which seems to work well with a PVA glue stick surface finish.

I'm getting a glass build surface soon (as soon as GearBest can ship it from across the pond), and I hear that will help, but in the meantime, I want to find a way to make it work with the fake Buildtak. What can I do to try to make this work better? My thinking is that the issue is with the bed config (temp, surface, etc.) and not with the nozzle temp, but I could be wrong.

I have printed kilometers of PETG and found the sweet-spot for my brand to be 240 °C for the hotend and 70 °C for the build plate (for my Ultimaker 3 that is, the extruder temp is 5 °C higher for my home build HyperCube Evolution). The reason for the 70 °C is that the glass temperature of PETG is around 70 °C. The PETG is flexible at that temperature such that there are no stresses because of shrinkage causing the PETG to keep attached to the heat bed surface (aluminium, glass, Buildtak, etc.). A little PVA based glue (stick) or spray (hair or specific print sprays) can even further improve the adhesion. A slow first layer also helps adhering better.

Note that the hotend temperature should be calibrated to the speed you are printing. If you print faster, a higher hotend tempearture is required. To determine the sweet spot for your filament you can print typical calibration towers that can be found on e.g. Thingiverse. Note that you need to manually change the G-code file after slicing of the tower or use plugins of your slicer to change the temperature at a certain level.

Furthermore, PETG does not like to be cooled by the print fan, so keep cooling fan rpm low to prevent layers not to bond (else you get a sort of string cheese print).

Edit:

I use parametric stair case style calibration prints that include the slicer print settings that are to determine the best settings for temperature, print cooling, layer size and print speed.


Klipper doesn't seem to adjust Z after BED_MESH_CALIBRATE My rig:

Ender 3
BLTouch
Octopi
Klipper
Solid bed mounts

I've updated my start G-code from Cura to include a G29 right after G28 and my Klipper config has the following override for G29:

[gcode_macro G29]
gcode:
    BED_MESH_CLEAR
    BED_MESH_CALIBRATE
    BED_MESH_PROFILE LOAD=default

Every print now goes through BED_MESH_CALIBRATE sequence and the Bed Visualizer plugin yields this result:

Based on the info here, Klipper: G-code commands - Mesh Bed Leveling I would expect Klipper to adjust for the differences seen in the visualization above, but the initial layers of my prints are very squished on the right and rear of bed (right and rear of image) and not squished on the left and front of the bed (left and front of image) which make it seem like BED_MESH_CALIBRATE measured the differences in the bed level, but didn't actually do anything about it.  Isn't the point of BED_MESH_CALIBRATE to adjust for these differences?

You can see in the first pic below that the final move on the initial layer from the outside edge of the print (right front corner) to the inside has the nozzle so low that it melted a line in the first layer as it skidded across.

In the second pic below you can see that the left front edge of the print didn't squish properly so it has detached from the bed.  What am I missing?

I have identified the problem as lead screw backlash!

Bed calibration and Z-axis offset compensation appear to be working as intended, but there is enough backlash in the Ender 3 stock lead screw that the corrections in Z-axis movement commanded by Klipper result in almost no actual nozzle movement.

I'm measuring about 0.35 mm of backlash in my lead screw.  With differences between the lowest and highest points of my bed being only 0.6 mm the best case scenario (which would only happen if I was using my entire bed) is that the actual nozzle movement would only be about 42 % of what Klipper commanded.  The fix for this is to change out the lead screw for a ball screw. The problem could also be mitigated in Klipper if Klipper implemented backlash compensation, but from what I've read on GitHub it doesn't seem like that is a feature the developer of Klipper wants to implement.

Update:

I installed this anti-backlash nut and it greatly reduced the backlash, but didn't eliminate it. I've uninstalled my solid bed mounts and reinstalled springs until I upgrade to a ball-screw for the Z axis. The auto bed leveling compensation still does something, but the adjustment allowed by having springs is what is really doing most of the leveling work.


Rule of thumb for small type Is there a good rule of thumb for small type on 3d printed pieces?

Minimum type size?
Good typeface for accurate reproduction?

I've had better luck with fonts that are heavier, usually sans-serif, and usually bold-face. All-caps can help, too, if it makes sense at all for the text. Impact is one widely-available example, though it's far from perfect and rarely has the look I want. I also usually need to turn on the "Print Thin Walls" setting in Cura when handling smaller text.

When looking at how small you can get, we'll start with font sizes. It would be easy to get lost here in a discussion of points and measurements. The thing is, font sizes describe the vertical height of the characters. For 3D printing, I believe you'll do better paying more attention to the horizontal width of your text. Most characters are taller than they are wide, so if you can produce legible horizontal features, you can probably handle the vertical features, too.

I'll use the letter "H" as an example here, because it shows the full size of the box for a typical character. Specifically, since I'm talking about horizontal features if you look at the bottom of the H, it has a three sections: leg, then gap, then leg. Also notice the gap is about 3 times the size of the legs (you can see this better if you zoom in close). This varies by font, but 3:1 is good average ratio. That gives us 5 units of width for the character itself. Additionally, you want to allow some spacing between individual characters; not every character needs it next to every other character, but I find it useful to allocate a 6th unit here.

Now consider those 6 units in the context of your nozzle size. With a typical .4 mm nozzle, that means the smallest size character you can legibly produce is about 2.4 mm across. Of course, most fonts are not monospace, where a character might be larger or smaller, but I believe this makes a useful average. Count the number of letters in a line of text you want to print, multiply by 2.4 mm, and that's the minimum amount of horizontal space you need.

If you really want to push things, a font specifically designed for 3D printing should theoretically be able to work in terms of 3 nozzle units wide + an extra gap between certain letters. But this is all theory, and for the minimum of what's possible. When you also start to think about what actually looks good, especially if you want to show features like serifs, the real world can really mess this up. In practice, I've found I need to go significantly larger even than the 6 unit / 2.4 mm option... but maybe I've just used the wrong font. You can always try a test print of your text in a small rectangle, to make sure it will be legible before using in a larger object.


Connecting Anet 8 2004 display with Ramps 1.4 to Aux2 can't seem to figure it out I've heard about switching out some connectors, but can't seem to figure out which ones and can't seem to find a diagram out there that is much help. Does anyone know which connectors I should switch to achieve this?

This answer clearly describes that you need to switch pins 1 and 2. It also describes that the MKS board is similar to a RAMPS board.

First thing to look for is the layout of the AUX2 header:

The pin layout reveals that pin 1 is VCC and pin 2 is GND. These need to be switched to be able to connect the display on AUX2.


Cause of slicing artifacts layers not connecting diagonal errors Sometimes my meshes turn out with artifacts Which can be seen in the bottom image. What is the cause? The first image shows my mesh which its generated from.
I've tried multiple slicers. This tends to occur sometimes.
Any help appreciated. Is there something going over my head???

The artifacts you spot in your slices do not come from the slicer, they are actually present in the STL file you export.

I suggest checking your model for problems like vertices that share a position or edges that are parallel but not joined. Use the remove doubles function in blender to merge up these vertices. Then make sure that your surface consists of only squares and triangles to aid the stl generation.


How to minimize damage when removing an ABS print from a heated glass print bed? Usually it will either will rip the tape, or break the print somehow. Currently using ABS on a taped glass bed with a layer of hairspray for adhesion.

I moved to a plain glass heated bed with a brush applied acetone and ABS mixture. Using an old emptied nail polish bottle with brush, I added some acetone and then threw in ABS pieces until it reached a brush-able consistency. I then brush it on the glass build plate where I believe the print will occur, and it works very well. On removal of the part the coating comes with it.

I just found previously that ABS would adhere to my kapton taped heated bed too strongly to use, and so while this involves a little work before each print, it's overall better than kapton for me.

I did experiment with sheet metal beds coated with kapton, but they curl during printing due to the ABS thermal stress, allowing my parts to be concave on the bottom side. Easy to remove from the plate, though, since it flexed. There may be a good middle ground material but I didn't experiment further.


Thermal runaway with specific prints I have been experimenting with PETG on my CR-10 upgraded with an E3D all-metal hot end and Marlin firmware on the controller. I am printing with 0.8 mm nozzle at 250 °C and an 85 °C bed.

When I print in vase mode, the prints come out beautifully (and quickly with the 0.8 mm nozzle). However, with solid-body prints, I routinely get a thermal runaway fault at about the third layer (the fault references E1). Can anyone suggest how to solve this and why the thermal runaway protection only trips with solid-body prints?

For context, when I tried to print the same solid-body print in PLA (205 °C hot end and 50 °C bed) I did not get the thermal runaway fault.

Thermal runaway protection (see What is Thermal Runaway Protection?) is triggered when the scheduled voltage to the heater element does not result in a specified increase in temperature within a specified timeframe.

The exit of hot filament from the nozzle and the loss of heat of the heater block and the conduction heat loss through the heat break to the cold end need to be supplied by the heater element. When the filament melting temperature is high, heat losses are relatively high as well, this means that the software needs to compensate by scheduling the heater element more quickly/activated sooner (there is some heat capacity in the heater block) and longer. If it is unable to provide enough heat than is being used, the temperature cannot be maintained and the printer notices that scheduling power doesn't result in a temperature rise. This will trigger the thermal runaway protection in the firmware.

This can imply that too much heat leaves the nozzle in the form of hot filament, and as such, your printing speed may be too high (or the printing temperature too high).

Note that you are using a 0.8 mm nozzle diameter, this means a flow increase of $ \frac{0.8^2}{0.4^2}=4 $ with respect to a "standard" 0.4 mm nozzle! A slower print speed is therefore advised anyways.

To solve this, you can either:

Insulate the heater block, e.g. with a silicone sock
Install a different type of heat block, e.g. a E3D Volcano which has a larger heat input zone
Print slower
Print at a lower temperature
Change the firmware settings of your TRP (should be done with care!)

To explain the latter option, from the Configuration.h you can read that if you encounter these problems, you can tune this in the Configuration_adv.h

Excerpt from Configuration.h:

 * If you get "Thermal Runaway" or "Heating failed" errors the
 * details can be tuned in Configuration_adv.h

Excerpt from Configuration_adv.h:

 * If you get false positives for "Thermal Runaway", increase
 * THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD

So you need to change these constants:

#define THERMAL_PROTECTION_PERIOD 40        // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4     // Degrees Celsius

The most effective solution for your problem will be limiting print speed and experiment with printing at slightly lower temperatures.


How to control 4 thermistors in a heated bed? My print area is ~ 17x16 inches (431.8 mm x 406.4 mm = 175,158.4 mm/2). To that end I need four (4) 200mm square heaters, and associated mosfets to run it. Each heater has it's own thermistor and can potentially reach the target temp independently (theoretically they could, since there will be deviations in manufacturing).

My mainboard (the SKR Pro) has support for 4 thermistors; however my solution in this configuration has 5.

When I double the size of the printer later this year, I expect that I will need 8 heaters.

Is there a solution to control that many heaters such that non of them over shoot their temps, or am I going to have to design and build a dedicated thermal management board to control beds of this nature?

You can use the Klipper firmware which accepts an arbitrary number of heaters.

Then you can write a Klipper macro which takes one input and applies it to each heated bed (or not, as you prefer).

With Klipper you can also add another Arduino and connect it to klipper as well, in case you don't have enough pins on your board: klipper is not limited to controlling one single board per printer.

Check the docs.


How to estimate the printing time of a 3D printer from an STL file? My local library has a 3D printer (Lulzbot Mini) for patrons to use. The prints are limited to 4 hours and if I go after work I really only have two hours before the Library closes. The software at the Library will give an estimated time, but I would like to be able to estimate the time before I get there.

Currently I have been creating my designs in TinkerCad and then I export the STL file. From the STL file I can find online estimators that will tell me how much material but nothing that says how long it will take to print.

Is there a way of calculating the estimated printing time from a STL file for a given printer?

There is no way to estimate the print time of an STL file directly.

The print time is based on the number of instructions in the g-code file plus the time it takes to move the effector (the hot end) around the build area. The only way to compute that is to know what settings their slicer is using and then slice your stl the way they will; and this is assuming that you have the same slicer software. If you manage to do that, then the slicer software will give you an estimate.

Here is what you would need to do:

Get access to the same slicing software, and obtain a copy of
the profile that they use to slice with. The nozzle diameter, feed
rate, layer height, and infill settings will affect the print time.
Import your stl into the sofware and "slice it" There will usually be a large button that is used to generate the g-code. There are quite a few slicers that will output the print time into the text of the g-code. They may also show the print time on the UI during slicing.

alternatively: Email the stl to the staff at the library, and them to generate an estimate for you. They might just do it.

However, that estimate could be incorrect. It will depend on the printer itself. As an example: the time it takes to heat the bed and the hot end is never included in the time estimate the slicer gives.


Efficient way to create a "mold" of a solid object in Meshmixer? Currently I have a model of a fingertip finished in my project, however, I would like to create some sort of "cap" that if printed would fit on top of that finger. Is there a good way to achieve this in meshmixer?

Surely! First of all, a mold is, simply put, the negative of the item. So we need to make such a negative and give it some thickness. I have this funnel model...

We start Meshmixer, import our funnel and then go into Meshmix and pull a cylinder into the frame. We size and align it to hide the funnel but for a tiny part at the top (or however much you need to have covered in the mold)

We click the cylinder, press SHIFT and the funnel top. In the top corner a menu pops up:

We choose "Boolean Difference", the menu changes to show this:

Next we alter the Target Edge Scale till we see the top corner (0.6 seems to work) then accept. The result is this mold:

But that's a REALLY snug fit at this moment. 0.0 mm space. We can use that to cast our funnel... but we might want to make this a box for our funnel or we know that our casting material shrinks some 4 to 5 % when curing. So we need some space in the mold or box. So we need to shift the faces some. What happens to holes if we scale the whole thing up by... say 5 %? They become 5 % larger of course! So let's just do that!

Edit
Transform
hook Uniform Scaling
pull X, Y and Z out by 1 mm (which happens to be 4 % in case of a 25 mm item.)

Use those square boxes marked with green dots to pull

Accept and... DONE! Last to do: export as STL and here you go! a Mold that is 4% larger and could be a cap for the funnel.


Ender 3 build surface is sticking up in the middle I have had my Ender 3 for a few months now and have loved it! I recently noticed that the build plate, the black removable part of the print bed, is sticking up in the middle. If I poke it, it goes back into place, but will not stay there. It shows especially when I print my leveling squares and find the the corners are near-perfect, but the center is crazy thin.

I am using a stock Ender 3 with Cura 4.5.0.

For those who may find this to be helpful, I am looking to find a good replacement build plate. In the meantime, I managed to get mine (without the sticky back) to lay flat by increasing the temperature of the bed from 50 Celsius to 60.

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

Note that the build surface is a consumable, it needs to be replaced once in a while.


Am I allowed to publish a 3d scan of a statue/thing I bought? I bought a buddha statue and I would like to scan it using photogrammetry and publish the result.

Am I allowed to do that?

Is this the same like scanning a book and publishing it? Sketchfab on the other hand is full of 3d models of commercial products.

If the design was made from an artist and is not public domain, than you should not upload that scan without the (written) permission of the creator of the design. Espacially a scan of a decorative object will likely be protected, so costumers buy the original instead of printing itself or buy a printed version. If you would design a deco object and sell copies of it, you also don't want that others just scan it and print it.


Hotend does not reach set temperature If I set the temperature of my hotend with pronterface to 200 °C, the temperature never reaches that value. For instance, it almost reaches the target with a temperate of 196/197 °C and then starts to drop to 184/85 °C before it starts to rise again to 196/197 °C. It remains in this loop forever and thus I'm not able to start any print because the temperature never stabilizes enough.

I've tried to configure the PID (M303 E0 S200 C8) with 8, 12, 15 intervals not help the issue continue.

I've tried to change heatblock and thermistor not help

Its important to refer this behaviour occur in any tempurate if I fix 150º it never reaches 150º it go to 146/147º and then drops again 10/15º and restart the loop. Same thing if I fix the tempurature to 210º.

Also I've tested this in multiple versions of marlin 1.1.8 and 1.1.9.The version of marlin 1.1.8 have worked in the same print in the past.

I'm have not clue about what can cause this issue, maybe its a board malfunctions (mosfet) or a powersupply malfunction.

Somebody can help me on this?

Your description sounds indeed as if the PID is not correct. You can try autotune with M303 only if your heating cartridge is not absolutely overpowered. However, in such a case you typically also have an overshoot, which you don't mention in your description.

In that case you need to lower your duty cycle (by the BANG_MAX parameter in the firmware) a bit. Otherwise autotune fails, because your heating cartridge overshoots even at small gains.

Out of the box I would suggest you to increase your D-term and decrease your I term if it cycles like that. For most printers, I used, a ratio like that is sufficient: 4/1.5/25.


Why does MakerBot software shows holes in the wall of a 3d model? I made a simple extrude on a sketch in Fusion 360:

But what MakerBot software shows me in the preview is

Can someone explain how to make it print a smooth wall? Mesh of the model also seems to be okay. Configuration is in the high preset.

I guess you are referring to the corner of the part facing you in the first figure, and the sliced corner on the left in the second figure and not the white lines on the wall facing you. This latter effect is called Moiré or moiré pattern which is an optical illusion created by interference.

This appears to be a slicer error or a rendering error, the walls are not finished. Furthermore from your sparse question it is noteworthy to say that you have sliced the model on a raft.

Why not print the model, it will start a raft and when you come to the part it will clearly show whether it is a slicing or a rendering problem!

If it is a rendering problem, keep continuing printing, if not, stop the print and download a most recent version of any other free available slicer tool. The most commonly used free slicer tools are Ultimaker Cura and Slic3r. Setup a printer profile and select and modify material and slicing properties to create a new G-code file for you to print. You can now compare the rendering of used new tool to your current rendering and print the model to see if the part now prints well.


Failing slow extrusion after upgrade to E3D hotend I recently upgraded to a E3D full hotend and I started to have problems with slowly printed parts. After I print first object and start next one, then the first layer has serious issue.

The first two test were extruded around 10mm/s, the right one around 15mm/s. The material is PLA (fillamentum.com) at temperature 210°C and nozzle diameter is 0.4mm. The Rebel II RepRap printer uses RAMPS with marlin firmware. I use Slic3r and Pronterface SW.

I didn't find answer in following troubleshooting guides:

Simplify3D - Print Quality Troubleshooting Guide
A visual Ultimaker troubleshooting guide
RepRap - Print Troubleshooting Pictorial Guide
all3dp.com - 16 Common 3D Printing Problems (And Solutions)

Do you have an idea what can cause this issue?

Update

I did a new print, where I just heat the hotend and start printing immediately. This is the result:

I bet your old and new extruders have different hobbed pulley/bolt effective diameter.
It looks like your new extruder has smaller hobbed diameter that's why it pushes too less material.

In MatterControl application there is a slider which allows user to tuneup extrude ratio on the fly (while printing). You coud check it so it would confirm the issue.

In Slic3r you could go to

Printer Settings > Advanced > Extrusion width

and experiment with it (especially with Default extrusion width)

Both (Slic3r and MC) could answer your question if it's extrusion ratio issue. If you confirm that - you can proceed with calibration. Here is method to calibrate extruder flow and general calibration article here.