Appologies if this is not the "main thread" for limit switches, was the closest I could find.
I added limit switches to my L7 board. Recompiled Grbl 1.0c (after replacing bootloader on my Nano, and and telling Arduino IDE to treat it as an Uno. Arduino IDE sets max 30kB for the Nano due to old bootloader).
I just checked if the default Grbl pins were connected to anything else on the PCB, and solder on wires which I ran to a breadboard next to the L7. So I added probe, coolant, x,y,z limits and also step/dir for Z axis to my breadboard. Only wired up hardware for two limit switches for homing for now though, more will follow.
So the before mentioned limited capacity in the Nano I think could be an artifiact from outdated boards.txt in the Arduino Ide imposing a 30kB instead of 31.5kB firmware limit on a Nano. Instead of changing my boards.txt I just flashed the optiboot bootloader to the Nano with the settigns for a Uno as it solves the "problem" across all versions of the IDE.
I see most are talking about using a single pin for both axis, but this requires homing to be sequential instead of simultaneous. Using two pins makes much faster homing as both axes travel at the same time.
So I used (note i changed the optional HOMING_CYCLE_1 to HOMING_CYCLE_0, and left the other cycles commented out.
#define HOMING_CYCLE_0 ((1<<X_AXIS)|(1<<Y_AXIS)) // OPTIONAL: Then move X,Y at the same time.
instead of
#define HOMING_CYCLE_0 ((1<<X_AXIS))
#define HOMING_CYCLE_1 ((1<<Y_AXIS))