Is there any reason GRBL uses timer3 with sleep.c and not timer 2?
All I can see is that timer 3 is 16bit with a prescaler of /64 which will overflow every 262.14mS (65535.0*64.0/F_CPU)
whilst timer 2 is 8 bit a prescaler of /1024 which will overflow every 16.32mS (255.0*1024.0/F_CPU)
so the TIMERnOVFvect is happening more often?