I prefer my machine to home the z-axis away from the workpiece so that homing is always a safe operation, regardless of what state the machine is in. The standard endstop bracket allows the opto to be mounted on the horizontal rails but for a bottom endstop it needs to be mounted off one of the vertical posts. I designed a new bracket and tab for this: -
The tab enters the opto from the side which gives the best resolution. Here it is installed :-
It can be mounted anywhere on the vertical post so could be used as a top endstop as well but I don't see the point of stops at both ends.
The way I calibrate HydraRaptor's z-axis for FFF is that I get the head somewhere near the table and measure how far away it is with a rule to get rough calibration. I then instruct it to go to 3mm above the table. I roll a 3mm bright steel rod under the nozzle and jog the axis up and down in s/w until it just touches. This has to be done with the nozzle fully warmed up to the working temperature because the PTFE expands about 0.5mm.
The calibration drifts on HydraRaptor because the frame is made from wood so the weather affects it, something that Darwin should not suffer from.
The files are here: www.thingiverse.com/thing:124.