Delayed control?

Over the last few days I have been trying to get my Pixhawk rover working but its causing all sorts of headaches.

I have 2 24v wheelchair motors, and arduino and 2 h bridge motor controllers. the arduino accepts PWM input and controls the motor H bridge for speed control.

When i connect my radio RX directly to the arduino everything works well (i have a mix on my taranis to deal with the skid steering), but when its connected up to the pixhawk (and a new model on the taranis) everything is delayed, the steering overshoots and is very hard to control. Driving in a straight line can be done, but if you put a small amount of movement to turn the rover will overshoot and sometimes spin 180 degrees.

Any ideas why?