I tried adding angular velocity and introduced a new K (kv) to the PID.
My dt is fixed at 10mS so it is omitted from the calculation.
pid_v = Kv *(angle-LastAngle);
pid_value = (pid_p + pid_i + pid_d + pid_v);
LastAngle=angle;
This did not work
I also tried the same with just the gyro value but no luck.
I just want to get the robot move faster when pushed faster so it will overshoot the balance point and brake.