When centered in the slicer correctly, without offsets defined in the slicer, the printer is most probably incorrectly configured! Luckily you can do something about that! Basically, you will have to calibrate the printer for a new center.
First of all, the firmware determines where your origin of the printer is. This implies that you need to ...
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.
For the printer to know the origin of the bed, offsets are defined in the firmware from the end stop locations to the actual origin of the heat bed.
The Y-Max setting does not help, because it is the software end stop for the other end of the axis.
The Y Home position also doesn't help as it only changes the coordinate that the printer assumes for when it hits the home position. That is used for printers (like deltas) that home to the max end switches.
What could help is a little bit of G-Code right ...
This is a consequence of enabling Z_SAFE_HOMING:
Z Safe Homing prevents Z from homing when the probe (or nozzle) is outside bed area by moving to a defined XY point (by default, the middle of the bed) before Z Homing when homing all axes with G28. As a side-effect, X and Y homing are required before Z homing. If stepper drivers time out, X and Y homing will ...
Once you pull the plug or disable power to the stepper motors, the printer forgets its location. That is perfectly normal and exactly how it is supposed to work.
The printer knows where the printer volume is once you have "homed" the printer. Homing is done prior to printing with G-code G28 which should be present in your start G-code script of ...
As to why this happens, particularly with a budget printer the end-stop mountings may not be particularly precisely located, or the moving part may actuate the endstop slightly differently in each build. In my case, replacing the hot end (and thus the whole carriage) gave me an offset of some cm. With this upgrade, it was impossible to retain the stock ...
As far as I can see on the attached videos your homing movement is reversed.
as per Marlin, the homing for X shall move towards the left side and for Y to the back of the printer.
That could occur when: cable connectors to stepper motors are reversed, or the motor is assembled the other way (you can set reverse direction in Marlin)
The other issue is steps/...
Now I've finally had time to look into this, since I knew it somehow existed, but wasn't sure how it worked:
Use the M206 G-code command in Marlin, Sprinter, Smoothie, or RepRap Firmware to offset the 0,0,0 coordinate of your printbed relative to the endstops.
The reprap.org wiki page says:
The values specified are added to the endstop position when the ...
Greenonline and I spent this evening hacking/reverse engineering the Ender3 to solve this. Greenonline also wrote about this in his blog.
Step 1 - Get the Firmware
To do this, there are basically two ways:
Find the a ready-to-use firmware
Make your own
Variant 1 would be to use the pre-supplied .hex files from Creality or some other manufacturer. Variant 2 ...
Following on from 0scar's answer
To change or obtain your EEPROM settings you need to open Repetier Host (for Linux or Windows, v2.1.3 - the OSX version I tried, v1.1.0, didn't seem to have this functionality).
To change existing settings
From How to make changes to the EEPROM data. Apparently there is an EEPROM editor available (in Repetier Host). From ...
Homing is the process where the machine finds all the limits of the 3 axis (at the endstop switches), to have a common reference point for each axis. From the endstops, firmware defined values exist to give the printer head the offset to the home position, also known as origin (X=0, Y=0). If the origin position is in front of the plate, wrong offsets may be ...
Touch sensors (or inductive or capacitive sensors) are generally used to probe the bed to determine the bed shape. For metallic beds that are not perfectly straight this works excellent. But, if your bed is straight and level (e.g. when you are using a straight slate of glass), you do not need to probe the surface as it is level. Instead you can use the ...
It is possible to "home a printer" without having endstops, technically, you don't require endstops, but it makes your job a lot easier if you want to print something!
Basically, when you don't have endstops or limit switches, you need to define where the head of the printer is located. E.g. you can set the nozzle at [0, 0, 0] (origin in [x, y, z]) and add ...
Personally, I have found that if you bend the arm of the limit switch out, it gets triggered earlier and solves this issue for good, (broke a switch clean off at the bend on the pins, soldered old switch back onto the pins in the board) bent the arm to a greater angle, so the striker triggers 3-5 mm earlier, problem averted!
(Summed up from several entries in this thread.)
It is untrue assumption that printer can't move back to home anymore, until the G-Code G28 is executed. Printer can home, but must be ordered to do it.
There are several ways to home printer (LCD hints are for Marlin firmware):
start the print, which (by the book) includes G28 in its initial part
use LCD ...
I've actually found what the issue was. It turns out that my Z steps were way out of whack (i.e. 4000 steps/mm instead of 400). Apparently, that's the default value in GitHub for version 2.0 of Marlin. Not sure if that's a typo or a valid value, anyhow setting it to 400 fixed it.
The Ender 3 has a printable area of 220x220x250 mm according to the specifications. So, there is nothing wrong. Sometimes heated beds are slightly larger than the actual print area. E.g. 235x235 mm or 310x310 mm. For centering the nozzle to the build plate, you should look into "How to center my prints on the build platform? (Re-calibrate homing offset)&...
Found the issue with help here! My Z-axis homing height was not set - I set it to 4 mm but found that the Z movement is way off (actual Z movement is more like 15 cm!).
I will update to the latest firmware as suggested.
I found the problem. I'm using an aluminum structure for my gantry. My Chinese power supply was in contact with this structure. There was a current leak from my power supply that was messing with the Z-probe signal.
I detached the power supply, everything's gotten back to normal, except it had my board and TMC2100 drivers fried a week ago.
For some reason the Z axis finishes homing with the extruder 6 mm above the bed.
If homing Z axes seems proper - i.e. nozzle is "touching" the bed during proces, and not going below the bed level) - then homing may be correct. Otherwise do troubleshooting, as has been suggested in comments. Check also the offset and backoff settings. All these ...
I had the same problem, solved it by inserting
// Move X and Y to 0 after homing
process_subcommands_now_P("G1 X0 Y0 F5000");
at the end of G28.cpp, just before ui.refresh();
This moves the print head to X0, Y0 and leaves Z untouched after the homing procedure. This way any oozing that might happen while the extruder heats up will be outside of ...
Just solved my own problem. Instead of looking in Marlin for the command, I found out the reason it was lifting up quickly was because of a custom command embedded in the G-code by the slicer. I got rid of the command and the problem was solved.
The issues you are facing can be caused typically by a defective X-axis endstop, an inverted logic of the X-axis endstop or a defective printer controller board.
When the X-axis endstop is reporting being triggered, it will not move. After "homing" it will only go to the right of the "home position".
There a couple of things to troubleshoot the X-axis ...
The original Anet A8 has:
// The size of the print bed
#define X_BED_SIZE 220
#define Y_BED_SIZE 220
// Travel limits (mm) after homing, corresponding to endstop positions.
#define X_MIN_POS -33
#define Y_MIN_POS -10
#define Z_MIN_POS 0
#define X_MAX_POS X_BED_SIZE
#define Y_MAX_POS Y_BED_SIZE
#define Z_MAX_POS 240
So in your case it would be:
// The ...
I would use both if I had a choice, but my stock "Melzi" board doesn't have enough inputs as near as I can tell. Most of the (scarce) instructions show to disconnect the Z switch and connect the BL Touch to the digital inputs in place of the switch.
I don't see any other connectors to wire up the EZ Touch to. Maybe the ICSP programmer, but I haven't messed ...
Or it might be fragility -- there is a little overshoot, i.e. the time between when the Z-stop sensor(whatever type) indicates zero is reached and when the stepper motor actually shuts down. The standard lever-switch has plenty of flexibility and "give" but the BL Touch may not, and may be damaged if the gantry tries to move a couple hundred ...
You can reconfigure marlin to use the MAXZ endstop instead of MINZ in Configuration.h, and then reflash it to your printer.
Now this is highly unusual, as most printers only have MIN endstops. If you post a pic of your faulty MINZ endstop, we can probably figure out how you ...
You should un-comment the following line to get rid of the Probing failed error message:
// #define MIN_SOFTWARE_ENDSTOP_Z // Line # 0907 Commented
You have basically disabled the use of the minimum Z endstop, while in fact you are using one, the difference is that it is a sensor now, not a mechanical switch.
I apologize I should have got back with you guys sooner. I downloaded a fresh copy of the Marlin firmware again and pulled up the Sprinter config.H folder. Since the firmwares are very similar I was able to just glance at my Sprinter firmware and noticed certain endstops for my optical endstops required "pull ups" to correctly work. I thought I had tried ...