29
votes
Accepted
How to set Z-probe boundary limits in firmware when using automatic bed leveling?
There are a few questions on this topic, so a more generic solution would be informative and will prevent multiple questions of others when their sensor has a slightly different location. This answer ...
16
votes
Accepted
What is Thermal Runaway Protection?
What is TRP and how does it work?
Thermal runaway protection is basically self-explaining; it is protection against the temperature getting out of control. Essentially, the firmware checks whether ...
16
votes
Accepted
Specifying Z offset in Marlin firmware
Z-offset persitently stored in memory?
Maybe the value of -2.97 for the Z_PROBE_OFFSET_FROM_EXTRUDER is retained in the EEPROM ...
15
votes
How many times can you re-flash the Marlin firmware to a RAMPS 1.4 board before it degrades the ROM?
The EEPROM is not where the program itself is stored, what's relevant for your question is the flash. The flash in the ATmega2560 is rated for 10,000 cycles (i.e. you can reprogram it at least 10,000 ...
13
votes
Accepted
Configuring Marlin 2.x with Ender 3 4.2.2 and BLTouch
The BLTouch now comes with a standard 5-pin connector.
and that connector is supported on the board that seems to be shipping with Ender 3s these days, the Creality 4.2.2 board (Notice it's in the ...
12
votes
Is there a way to invert motor direction with G-code instead of Firmware in Marlin
For the X/Y/Z axes, you can use M92 to change the axis steps per unit to a negative value, which causes it to move in the opposite direction. I.e. if normally your ...
12
votes
How to increase the amount of probing points for a BLTouch sensor in Marlin firmware?
You need to change the constant value(s) in your Configuration.h file of your Marlin version from:
// Set the number of grid points per dimension.
#define GRID_MAX_POINTS_X 3
#define ...
10
votes
Accepted
What is the difference between Linear Advance and Pressure Advance?
Both are implementations of exactly the same concept, even up to the units of the tuning constant being seconds (mm/(mm/s)). The difference is in the implementation details, and particularly how they ...
9
votes
Recalibrating Home-position
When homing the printer, the hot end carriage will be instructed to hit the (mechanical or optical) end stops. From this point a well configured firmware knows where to find the origin of the heat bed....
9
votes
Accepted
How to add menu options to the (Marlin firmware) LCD menu?
The answer to your question (baring in mind that the question is raised for Marlin 1.1.9) is the file ultralcd.cpp. Nowadays, you can also enable extra option through the Configuration_adv.h file, ...
9
votes
Accepted
What is the difference between M420 S and M420 S1?
TL;DR
Short answer: "There is no difference!".
Long answer
G-code is parsed line by line. The parser in the firmware reads the command and the options (also called parameters) following it, ...
9
votes
3D Printing with malicious intent
Ethics and justification:
If you have physical access to the device you could just... physically damage the device. Running arbitrary G-code is just more complicated
Most printer farms have a strict ...
8
votes
Accepted
How do I set the G-code buffer size on Marlin?
Marlin does allow one to change the size of the buffers, in Configuration_adv.h. In the current version there's an ifdef that switches between two cases, one with ...
8
votes
Accepted
How to configure Marlin to enable auto-fans with dual extruder
After trying many different things, I found out that the solution is quite simple and requires only a few lines of code. I'll answer my own question in the hope that this will help someone.
First, I ...
8
votes
Accepted
After some time stepper motor is hot
The second motor is hot. And the third is very hot. I can not even touch it.
This is to some degree, completely normal and expected. From the datasheet for a typical NEMA 17 stepper, the rated ...
7
votes
Nozzle jumps off the bed when using Marlin Mesh Bed Leveling
None of the answers address your question to solve it! The only sensible contribution comes from a comment of @TomvanderZanden.
For the sensor to stay within the limits of the bed (considering the ...
7
votes
Accepted
3d printer not printing circles correctly
Possible causes for the printer not printing correct dimensions:
Incorrect number of steps/mm in firmware settings
Belts are not tight enough
Pulley slips on the shaft
Looking at the picture, I ...
7
votes
Accepted
Should I be doing PID auto-tuning with my fan at 100% (Anet A8)
You should run the fan at what you expect it to be at the majority of the time it is printing. If you tune at 100% fan and never use a fan then it will be too aggressive, if you tune at 0% fan and ...
7
votes
Accepted
How to set the Z home offset
It is preferred to get the distance correct by hardware changes (leveling screws). But it is possible to do it with software. You can not only change the Z offset in the slicer or in the configuration ...
7
votes
Accepted
Configuring of MKS_GEN_L V1.0
The motherboard definition in configuration.h should be written like:
#define MOTHERBOARD BOARD_MKS_GEN_L
actually the word <...
6
votes
Accepted
Printer randomly moves to home during printing, then resumes as normal
The issue was due to a corrupt SD-card, which was occasionally having some garbage read from it. It turns out that Marlin will try interpret a corrupt move command like ...
6
votes
Accepted
Cloning the Marlin git repo while keeping my configuration.h settings?
Based on this answer, you need the following procedure:
Stash your local changes using git stash
Pull from remote repository using ...
6
votes
Clean or wipe move for delta 3D printers
Slic3r, and all other slicers that I saw, have an option called Skirt that enables your printer to print a number of lines around your object before it starts ...
6
votes
How to switch motor outputs and use E1 as X, in Marlin firmware?
When using Marlin firmware you could easily change the pin layout of the extra extruder (E1) with the broken X stepper pins by changing the pins_RAMPS.h file.
Download the firmware and open the ...
6
votes
How can I add auto bed leveling before print?
Rather than modifying the firmware to handle this, have you considered a pre-processing script on your computer, greping for a G29 in the G-code, then adding a <...
6
votes
Hot end temperature varies during print
There could be a number of reasons for that behaviour:
Please check following items:
part blower/fan cools down the nozzle - stop the fan
material is extruded at high speed and takes the heat
loose ...
6
votes
Accepted
Setting custom x/y bed bounds for Anet A8/marlin
As you just flashed your own Marlin, you probably have the marlin.ino and its associated files in the Arduino IDE set for your Processor and board and know how to ...
6
votes
Accepted
How to enable EMERGENCY_PARSER in Marlin firmware?
The constant EMERGENCY_PARSER is located in the advanced printer configuration file Marlin/Configuration_adv.h:
// Enable an emergency-command parser to intercept ...
6
votes
Accepted
LCD full graphic smart controller, no character display and screen blinking
this problem can be solved by turning the slots on the display, as in the image below. Some Chinese displays are inverted from factory.
6
votes
What does a stand alone "T" index value do?
T stands for "Tool" and has its origin in the origins of .gcode being for other automated machine controls. Depending on the machine, everything could be a tool for ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
marlin × 524firmware × 97
creality-ender-3 × 70
bed-leveling × 63
g-code × 48
bltouch × 47
troubleshooting × 29
ramps-1.4 × 29
anet-a8 × 27
ultimaker-cura × 24
stepper-driver × 23
z-probe × 22
diy-3d-printer × 21
z-axis × 21
prusa-i3 × 20
homing × 18
creality-cr-10 × 17
extruder × 15
endstop × 15
octoprint × 14
calibration × 13
creality-ender-5 × 13
arduino-mega-2650 × 13
thermistor × 12
bigtreetech × 12