Auto Measuring Nozzle Probe Z-Offset

I have a Creality Ender 3 S1 Pro with BlTouch as probe.
What I want to achieve is to not manually run PROBE_CALIBRATE routine every time I have to remove the print head or change the nozzle.
So I thought I can use a system that I use daily on CNC machines, a tool zero setter, it’s just a micro switch that you put on the bed and then you slowly move z down until the nozzle touch it.
I tried with macro but I figured that variables in macro are evaluated just at the beginning so it’s not possible to manage the trigger of the micro switch.
What I want to do is a routine like PROBE_CALIBRATE, where first it will be measured the zero with the probe against the other switch, then the extruder is moved by the offset of the probe so it will be in the same position of the probe. Then Z axis will go down until it triggers the switch. The difference then it will be the Z-Offset with a fixed difference that is the travel of the switch and how much you want the nozzle to be high than the bed.

sounds like what voron 2.4 printers use and this software


Thank you very much, I will check if this will work for me.

Sadly is not working, because it’s not supported a Virtual Z Endstop as I have BLTouch as Z probe.