Inertial Sensor is not doing its job

So right now my robot is currently using one inertial sensor. However, some things are going wrong.
When I enter 90 in the “turn to heading” block, it always turns 92 degrees. It does a good 90 degrees, and then somehow screw it up the moment it moves.
The drivetrain is a six-wheel with two 4" flex wheels in the middle with omni wheels in front and back.

Is there something wrong?

First, try calibrating your inertial sensor. Also, do note that the inertial sensor isn’t always accurate and can give out false readings/turn the wrong amount.

If I interpret this correctly, the turn is a solid 90 degrees, but then when it begins to move forward it turns a bit more to 92 degrees.

This might be an imbalance in your drive train. Check to see if the frame is slightly bent or if you have an asymmetrical weight distribution? if one of your wheels has significantly reduced pressure on it, it may slip at first and cause a turn towards it. I see this a lot with the basic speed build robots. Usually you can twist their chassis back into alignment.

I’d also check to see if both sides of you drivetrain have the same amount of internal friction. If one side has more, it might take a bit longer to get up to speed and could cause a brief turn.