Unable to infer homing_positive_dir in section 'stepper_x' Newbie Mistakes

Basic Information:

Printer Model: Ender 3 V2 Neo with sprite pro
MCU / Printerboard: 4.2.2
klippy.log
klippy.log (284.9 KB)

Fill out above information and in all cases attach your klippy.log file. Pasting your printer.cfg is not needed

Describe your issue:

Today I installed the sonic pad with the “klipper” firmware, I know its no the same but the code works a lot like it. I changed the BL Touch offset without issues, but I keep getting off center prints. They are closer to the front and to the left of the printer than they should. To the point the Y offset is such that its almost at the limit of the bed.

Wonder if anyone could direct me to what I’m doing wrong with the printer.cfg file while trying to set the min position x and y to 10 so the prints move 10mm “right and up”
printer.cfg (11.7 KB)

Hello @verce3d !

If the homing position is out of the printable area, try with negative values for the [position_endstop]. Like this for X and Y:

position_endstop: -10
position_min: 0

Besides this, please note:

This printer has an effective build volume of 220 x 220 mm. This means you need to enter this size in your slicer and not the max of 235 x 230

Thanks for the replay, I will try that. I understand its not real klipper, I said that on the post. But due to the severe lack of customer support from creality on the subject you guys are my best bet to get any orientation on how to solve my issue. I understand the basics of programming so any help comes handy when I get to mess with the config since I never used hand written gcode to the date

Thanks, the printing area in the slicer is 210x220 that’s the actual working area of the bed. there’s 10mm lost to the “sides” in the X axis that’s not printable unfortunately. I had tot use the 235x230 on the config because it wasn’t using the full Y axis in the bed when the sonic pad flashed the firmware.

I find its absurd that using a creality upgrade on a creality printer isn’t supported for their own products. sprite pro upgrade should be a plug n play product for any creality printer with support files to do it from the manufacturer

Just to give an update to the post, the solution of changing the position_endstop: -10 didn’t work, keeps saying "Unable to infer homing_positive_dir in section ‘stepper_x’ goes the same for the y axis.
should I use the homing_positive_dir true or false to maybe get this working? saying the

homing_positive_dir true so the position_min: 0 with the position_endstop: -10 would get the 0,0 to be away from the endstop?

The problem is not on the max position but on the 0,0. If I input 220x220 lets say to use the “whole” bed, the bedmesh has to be rebuild in positions and they won’t get the right places anyway, since the 0,0 is way off the bed. This is in part because the sprite pro on the ender 3v2 Neo needs a different X axis cover, wich I designed my own, that’s why probably my endstop isn’t in the 0 position but something like -10

Klipper does not know your bed or which part is usable.
Let’s take the following situation, where the red marked area isn’t usable:

In this case, you would set for the Y stepper:

position_min: -20
position_max: 180
position_endstop: -20
  • Now your Y=0 (from the slicer perspective) will be at Y=20 and the usable distance from there will be 180 mm
  • Set your slicer bed size to 200/180
  • Beware, you can still travel into the negative, so do not do this if it would cause a crash

Sineos thanks for the fast reply, the issue I’m having is that when trying to set the position_endstop to a negative number or the position min, it gives me the unable to infer homing_positive_dir warning, so I was wondering if I have to specify in the config which direction is positive using the homing_positive_dir to true to fix that.

If I manage to get this right and working I will share the printer.cfg file here so others with the same setup can get it running without any issues like I’m having

position_min must always be equal or less (more negative) than your position_endstop.

I understand that, when I tried endstop -10 position min 0 the message was still there after saving the mods. I will try something else I guess

If you set position_endstop to -10 then position_min must be -10 or more negative, e.g. -10.1, -11 etc

got it, will try it and get back to you, thanks for all the help

I got everything working, thanks to @Sineos and @EddyMI3D for all the help, as promised here’s the printer.cfg code that worked for me using a Ender 3 V2 Neo with the sprite pro upgrade, and the sprite pro fix for the small switch from printables (Printables)

https://pastebin.com/HuD1jqgn

Stupid question, why don’t you just post that printer.cfg here? It’s just a small text file?

It’s in the subforum Configs and in post #14

Too stupid to find that printer.cfg :no_mouth: Can you post a link?

I did post it in the first post in this thread, then the pastebin for fast copy and paste of the parts modified that worked, it depends if you have a different X Axis cover “fix” depending on the switch size. Its all explained on the posts

2 Likes