Hi Simon,
To be honest, I haven't got the patience to check through your diagram, but I presume you have built it in parts and tested it. I used a 2nd BoB (5v) to do the limit switches as the LJ12A's don't work below 9 or 10v. and I wanted more inputs. I have modified all my proximity switches to work in pass-by as I got a bit fed up with crushing them. It doesn't need much force to push the end in and kill the device. Also be aware that you need a switch to deactivate the limit sensing, so you can reset MACH3 (if you use it), otherwise you can't jog off the limit switch.
Cheers, Rob

I retired in 1999 (health issues) so all I do nowadays is play CNC and electronics.