Initial Startup Checks[Nov/26]
Last updated
Last updated
Start by verifying that temperatures are being properly reported. Navigate to the Mainsail temperature graph.
Verify that the nozzle and bed temperatures are displaying correctly and are not increasing. If the temperatures continue to rise, disconnect the printer from power. If the temperatures are inaccurate, the issue may be due to wiring or hardware faults.
Navigate to the temperature graph and type in 50 followed by enter in the “Tool” temperature target field. The extruder temperature in the graph should start to increase (within about 10 seconds or so). Then go to the “Tool” temperature drop-down box and select “Off”. After several minutes the temperature should start to return to its initial room temperature value. If the temperature does not increase, Please check the wiring.
Perform the above steps again with the bed.
Why does the hot bed heat up but not warm up?
Check that the red and blck wires A1+ and A2- on the relay are not reversed
To verify that each stepper motor is operating correctly, send the following command in the terminal:
STEPPER_BUZZ STEPPER=stepper_x
The STEPPER_BUZZ command will cause the given stepper to move one millimeter in a positive direction and then it will return to its starting position. It will perform this oscillation ten times. we will verify direction again later, ideally all motors will be running correctly at the end of this test. See the list below for the expected motion for each command.
Note, if you have trouble seeing what direction a motor is rotating, try adding a small sharpy mark on the pulley. clockwise and counterclockwise are from the top down view looking at the X and Y motors.
Run this command for each of the motors,For example.:
STEPPER_BUZZ STEPPER=stepper_x
STEPPER_BUZZ STEPPER=stepper_y
STEPPER_BUZZ STEPPER=stepper_z
...
stepper_x
The motor will rotate clockwise first, then back counterclockwise
stepper_y
The motor will rotate clockwise first, then back counterclockwise
stepper_z
The front left corner of the gantry moves up, then back down
stepper_z1
The front left corner of the gantry moves up, then back down
stepper_z2
The front left corner of the gantry moves up, then back down
stepper_z3
The front left corner of the gantry moves up, then back down
extruder
Movement: Direction will be tested later.
If the specified motor is not turning, please check the wiring and ensure that it is connected to the correct port.
Make sure that none of the X, Y endstops are being pressed. Then send a QUERY_ENDSTOPS
command. The terminal window should respond with the following:
If any of them say “triggered” instead of “open”, double-check to make sure none of them are pressed. Next, manually press the X endstop switch, send the QUERY_ENDSTOPS
command again, and make sure that the X endstop says “triggered and the Y s stay open. Repeat with the Y endstops.
If it is found that one of the endstops has inverted logic (i.e. it reads as “open” when it is pressed and “triggered” when not pressed), Check if the Endstop is properly installed, the cables are secure and not damaged, and if they are connected to the correct port.
At this point everything is ready to home X and Y.
Important: You need to be able to quickly stop the printer in case something goes wrong (e.g. the tool head goes the wrong direction). There are a few ways of doing this:
There is a red emergency stop icon in the lower left corner of the display. Click on it to see what happens—Klipper should shut down, but the Raspberry Pi and Mainsail should remain running, although disconnected from Klipper. Press "Connect" in the upper left corner of Mainsail, then send a FIRMWARE_RESTART
command in the Mainsail terminal window to reboot the printer and get it running again.
Have a computer right next to the printer with the RESTART
or M112
command already in the terminal command line in Mainsail. When you start homing the printer, if it goes in the wrong direction, quickly send the restart command and it will stop the printer.
As a “nuclear” option, power off the printer with the power switch if something goes wrong. This is not ideal because it may corrupt the files on the SD card and to recover would require reinstalling everything from scratch.
Once there is a tested process for stopping the printer in case of something going wrong, you can test X and Y movement. note: you will need to test X AND Y before you can correctly determine what adjustments are needed. First, send a G28 X
command. This will only home X: The tool head should move up slightly and then move to the right until it hits the X endstop. If it moves any other direction, abort, take note, but still move on to testing Y. Next, test Y: run G28 Y
. The toolhead should move to the back of the printer until it hits the Y endstop. In a CoreXY configuration, both motors have to move in order to get the toolhead to go in only an X or Y direction (think Etch A Sketch). If the gantry moves downward first before moving to the right, you must reverse your z stepper directions in the config.
If either axis does not move the toolhead in the expected or correct direction, refer to the table below to figure out how to correct it. If you need to invert the direction of one of the motors, invert the direction pin definition by adding a !
to the pin name. For example, dir_pin: PB2
would become dir_pin: !PB2
. (if the entry already has a !
, remove it instead). If the motors are going in directions that match the lower row of the chart, physically swap your X and Y (A and B) motor connectors on the MCU.
[stepper x] = Motor B
[stepper y] = Motor A
Not only is it not moving in the expected direction, but it is also making a strong noise and shaking?
Repeat the Check Motor Operation procedure to ensure that all motors are turning in the direction shown in the documentation.
Identify all the fans inside the machine and check if the configured pins match the actual ones.
Hotend_fan
4010 FAN
EbbCan:gpio14
Hotend>50℃
Part cooling fan
5015 Blower fan
EbbCan:gpio13
Manually or in slicing software
Controller_fan1
6020 FAN
PE5
Heatbed>50℃
Controller_fan2
6020 FAN
PD12
Heatbed>50℃
Nevermore V5
5015 Blower fan ×2
PA8
Horend>200℃
Check Hotend_fan
Heat the hotend to above 50°C and check if the Hotend_fan is rotating correctly. When you stop heating and the temperature drops below 50°C, the fan will automatically turn off.
Check Controller_fan
Heat the heated bed to above 50°C and check if the Controller_fan starts rotating. When you stop heating and the temperature drops below 50°C, the fan will automatically turn off.
Check Part cooling fan
The Part cooling Blower can be directly controlled in Miscellaneous for on/off and speed settings.
What causes the hot end fan and blower to not spin?
Check that thepositive and negative terminals of the fan are not reversed.
Check that the jumper cap, which identifies the small blue rectangle on the EBBcan, is inserted
2.Check that the jumper cap, which identifies the small blue rectangle on the EBBcan, is inserted
Move nozzle to the center of the bed and approximately 5-10mm above the bed surface, then run:
PID_CALIBRATE HEATER=heater_bed TARGET=100
It will perform a PID calibration routine that will last about 10 minutes. Once it is finished, type SAVE_CONFIG
which will save the parameters into your configuration file.
Set the part cooling fans to 25% (M106 S64
) and then run:
PID_CALIBRATE HEATER=extruder TARGET=245
It will perform a PID calibration routine that will last about 5 minutes. Once it is finished, type SAVE_CONFIG
which will save the parameters into your configuration file.
Nov 26, 2024, Note: We have already upgraded the Cartographer Probe to Survey Touch mode in the previous section. If you have not yet completed this update, please follow this tutorial: Survey Touch Mode Update Guide.
Home the machine in X and Y:
Depending on the machine model, send the corresponding command below to move the toolhead above the center of the platform.
G0 X150 Y150
Send the following command to start the calibration process:
CARTOGRAPHER_TOUCH METHOD=manual
Place an A4 sheet on the platform.
Use the web interface to adjust the nozzle height relative to the bed.
The two blue buttons on the left (--/-) lower the toolhead, bringing it closer to the platform.
The two blue buttons on the right (++/+) raise the toolhead, moving it farther away from the platform.
The value at the bottom indicates the increment or decrement for each adjustment, measured in millimeters (mm).
Continue adjusting until you feel noticeable resistance when pulling the A4 sheet, but not enough to damage it. Once this condition is met, click ACCEPT to save the parameters.
Wait a few seconds, then send SAVE_CONFIG
to save the results to your configuration file.
Testing Cartographer Accuracy
Send the G28
command to home your printer.
Send PROBE_ACCURACY
to test the accuracy. Cartographer will automatically perform 10 measurements and provide a summary of the results.for example:
The meanings of the terms in the probe accuracy results:
Maximum: The highest value recorded by the probe during multiple measurements.
Minimum: The lowest value recorded by the probe during multiple measurements.
Range: The difference between the maximum and minimum values, indicating the measurement fluctuation. Smaller values mean better stability.
Average: The mean of all measurements, representing the overall central trend.
Median: The middle value of all measurements, less affected by outliers and reflects the true data distribution.
Standard Deviation: A statistical indicator of data fluctuation. Smaller values indicate more consistent measurements.
Summary: The probe shows a small range and low standard deviation, demonstrating high accuracy and stability.
Measuring Z-Axis Backlash
Run the command: CARTOGRAPHER_ESTIMATE_BACKLASH
to estimate Z-axis backlash.
The results will be displayed, for example:
Look for the "delta" value in the output, which represents the measured backlash.
In your Printer.cfg, find the section labeled for backlash compensation and input the delta value as follows:
Since the V2 uses 4 independent Z motors, the entire gantry system must be specially levelled. The macro to call this process is QUAD_GANTRY_LEVEL
(sometimes referred to in conversation as ‘QGL’). It will probe each of 4 points 3 times, average the readings, then make adjustments until the gantry is level.
If the process fails due to an “out of bounds” error, disable your stepper motors and slowly move your gantry or bed by hand until it is approximately flat. Re-home your printer (G28
) and then rerun the sequence. You may have to run it more than once. Make sure that the adjustment value for each stepper motor converges to 0. If it diverges, check to make sure you have your stepper motors wired to the correct stepper driver (check documentation).
Run a G28
command to home the printer since a SAVE_CONFIG
restarts the printer.
This will be the first time that a Quad Gantry Level has been run at a high chamber temperature. To ensure that the probe has stabilized with the heated bed at 100C and the hot end at 240C, run PROBE_ACCURACY
with the nozzle at the center of the bed. If the values are trending (increasing or decreasing) throughout the 10 probes or the standard deviation is greater than 0.003mm, wait another 5 minutes and try again.
Once the readings are stable, run QUAD_GANTRY_LEVEL
. Make a note of how long the probe readings took to stabilize for when starting prints - typically a cold printer takes 10-20 minutes to stabilize at temperature.
Common QGL Problems
If the QGL is having issues with too high of a standard deviation and the printer is heated and stable, check Z belt tension. Make sure they are reasonably tight and even.
If QGL fails with being unable to reach the probe in time, do a FIRMWARE_RESTART
, manually level the bed as closely as possible, then home (G28
) and re-attempt.
Perform a homing.
If using a printer that requires Quad Gantry Level or Z Tilt Adjust, perform that.
Once that is finished, do another home or G28 Z
Initiate a threshold scan. This will determine your threshold for cartographer. The threshold will determine how much force is required to touch your bed consistently.
Start by doing the generic scan
Visit here for an explanation of CARTOGRAPHER_THRESHOLD_SCAN
This should start a touch process that will move the toolhead into a starting position and then lower until it touches the bed, repeating itself. Its okay if at first it doesnt touch the bed at all, this is completely normal. It will eventually start touching.
If however you get a final IDEAL result and it didnt touch the bed, start the process again OR adjust the parameters as follows where MIN= the found threshold value of the false positive.
Once it finds an excellent or ideal threshold and you've seen the nozzle touching the bed. It will stop this process and move on.
Now do a touch calibration with the new threshold.
If everything went correctly the touch test should pass and you can now finish by saving these variables to your config.
On the HEIGHTMAP interface, first home all axes, then click CALIBRATE. The machine will begin probing the heated bed and generate a graphical representation of the bed mesh.
The normal deviation range should be between 0.05-0.15mm. If the deviation is too large, check the tension and alignment of the 4Z synchronized belts to ensure they are consistent.
Before modifying your Z Offset, make sure that you have set your Z position to 0, to do this you can run the following command.
G1 Z0 F1500
Once you have done all of the above, it is worth re-calibrating the Z-Offset. This can be done in Mainsail or Fluidd using the graphical interface. OR you can use G-Code in the window to console to do
SET_GCODE_OFFSET Z_ADJUST=+0.01 MOVE=1
SET_GCODE_OFFSET Z_ADJUST=-0.01 MOVE=1
Once the offset has been perfectly calibrated apply that offset using the following command
Z_OFFSET_APPLY_PROBE
And now save your config.
Before the first print, make sure that the extruder extrudes the correct amount of material.
Set the appropriate temperature for the hotend based on the type of filament. For example, for PLA, we use 210°C.
First, make sure the extruder is running the correct direction: heat the hotend, and extrude 10mm or so of filament:
If the extruder pulls the filament in, all is well.
If the filament gets pushed back out the top, , reverse the extruder in your printer.cfg by finding the [extruder]
dir_pin
, and adding a !
to the pin name. (if one is already present, remove it instead)
With the hotend at temperature, make a mark on the filament between the roll of filament and your extruder, between 120mm and 150mm away from the entrance to the extruder. Measure the distance from the entrance of the extruder to that mark.
In Mainsail, set the extrusion speed to 1mm/s, and extrude 50mm 2 times, (for a total of 100mm since Klipper doesn’t allow you to extrude more than 50mm at a time).
Why is my interface greyed out and unclickable? This happens because the nozzle is either not heated or hasn’t reached the target temperature. The extrusion function is locked to prevent filament from being forcefully extruded without proper heating.
Measure from the entrance of your extruder to the mark you made previously.
In a perfect world, assuming the mark was at 120mm, it would measure 20mm (120mm - 20mm = 100mm), but usually won’t be.
Update rotation_distance
in the extruder section of the configuration file using this formula:
New Config Value = Old Config Value * (Actual Extruded Amount/Target Extruded Amount)
Note: a higher configuration value means that less filament is being extruded.
Paste the new value into the configuration file, restart Klipper, and try again. Once the extrusion amount is within 0.5% of the target value (ie, 99.5-100.5mm for a target 100mm of extruded filament), the extruder is calibrated!
Typical rotation_distance
values should be around 22.6789511 for Stealthburner