Getting the encoder info from the drivers isn't easy, getting it of the encoder would be easier, however the encoder data is typically just a pulse train so you'd need some external intelligence to use it. I think Mach3 can run its internal DRO off the encoder pulse train but whether it can use it for hard limits I don't know.