How can i track my vr helmet?

hi ,
i am making a vr game where the player is in a movable vehicle.
But when i play the game , the head have some really strange movement…
according to where i look , the camera have not the same way to move like : if i look forward all work but when i look backward , the Y and Z axy are inverted and make it impossible to play.
(the worst is that the glitch that happen when i look backward is random , it never do really the same thing)

I don’t know if the problem is the way i take the CFrame of the head or the way to make it follow the vehicle.

actualy i do it like that:

local VR = game:GetService("VRService")
local head = VR:GetUserCFrame(Enum.UserCFrame.Head)
workspace.CurrentCamera.CFrame = workspace.Interieur.VrPart.CFrame:ToWorldSpace(head)

so…
it seam the problem don’t come from

workspace.CurrentCamera.CFrame = workspace.Interieur.VrPart.CFrame:ToWorldSpace(head)

beacause i do test with a parton a test world and it track perfectly the part.
The problem come from the way i track the head… :frowning: