After reinstalling everything I found the RTC worked just fine until the point where I changed the hardware setting in sprinklers_pi to use the OpenSprinkler hardware.
As soon as that change is made the hwclock becomes unreachable and is no longer detected with i2cdetect.
I was only able to restore the hwclock by completely removing sprinklers_pi and rebooting.
I’ve raised it as a potential issue to the author…