Why do you need two PWMs per motor?It would be more usual to have one PWM and one direction pin (possibly plus brake).
Where do you get information on what the motors are supposed to be doing?
I used a logic analyzer to look at what is going on with the existing controller hardware.
I *think* the I in PID means ramping up, running, and slowing down during the movement.
So I guess a basic question is do I need PID? Do I need PD? Is there some other, simpler way?