Check your connections from battery to starter. Have had the internal pieces of starter button corrode or have worn spot on the contacf on top of starter. Solved those problems by cleaning contact and/or replacing button assembly. You can bench test starter by removing button assembly and use jumper cables to ground case then touch positive to contact on top of starter. Starter should turn but gear will not slide out as you have to manually slide it via lever on top of starter.