From what I am reading above, I'm guessing it's related to lack of ECM grounding. You provided solid bench power and ground and you're able to communicate with it over the class 2 data bus.
ECM is grounded by G102 which should be on the engine block. Check carefully for missed ground connections on the engine block.
Here's the starter schematic. Starter spins when ECM grounds the control side of the starting relay.
ECM is grounded by G102 which should be on the engine block. Check carefully for missed ground connections on the engine block.
Here's the starter schematic. Starter spins when ECM grounds the control side of the starting relay.