OK so starter motor runs
starter solenoid works
what is battery voltage when at high speed idle say 1500 RPM
IF around 7 to maybe 7.5 you are charging battery. If that is teh case then try a spare battery - maybe it is at end of life. If no joy then get out VOM and check volts to ground from neg and to starter motor terminal from pos when cranking. In either case you should get only about 1 volt at most. (assuming neg ground)
Dan Bentler