Successful z offset with no probe and BL touch (only end stop switch) ender 3 basic printer

Dear Board

installation of Ender3 V1.1.4 board was successful with rpi 3b. i was so happy that it went well throughout the installation. But from past two days im suffering a lot for Z offset.
Here is my problem.
When i home the printer in fluidd, all X Y and Z are stopping after clicking the switch.
earlier in my ender 3 firmware - once z touches the limit switch it raises little and halts and ready for print.
but in klipper, unfortunately i have followed more than 5 times all the steps mentioned in manual but could nt able to lift the nozzle little after touching the switch.
my offset when i calculate was 0.519mm but no way i could raise that up after touching z stop limit switch.
after auto code generation in cfg file using Z_ENDSTOP_CALIBRATE, when i press home again the nozzle stops after clicking the end stop and when i fire a print the nozzle just scratches the surface of bed which is bad.
Mine is stock ender 3, i dont have any probe or BL touch attached. all i have is End stop limit switch.
Please support how to get rid of this issue.
should i need to buy one probe or BL touch because im using Klipper?
Please help me.
Thanks

Maybe I do not really understand the question but it seems that your basic setup is not really properly done. When you do not use a probe then you need to dial in your first layer with the endstop position and the leveling screws.

  1. Screw down your bed a tiny bit more than you usually would
  2. Mechanically tune your endstop so that the nozzle stops approximately 0.5 mm above your bed. Put the nozzle over one of the screws when doing this
  3. Use the Paper Test directly above each bed screw position to level your bed. You can use BED_SCREWS_ADJUST to support you (need to set the correct screw locations in your cfg)

EDIT:
4. Verify your setup in the center of your bed. The paper should have the same friction as at the screw positions

Given your bed is halfway straight you should now have a proper starting point at least for a layer height of 0.2 or above.

If you now need to do some minor adjustments you have various tools to do so:

  • Use the baby-stepping function, e.g. in fluid
  • Specify a z-offset in the slicer
  • Specify a z-offset in your start Gcode, e.g. using SET_GCODE_OFFSET