Compass Inconsistency

Hello,

I am trying to use the Grove compass with a GoPiGo, but I can’t read any useful readings.

I am getting completely off reading, when I do a 360 with the compass, the heading only ranges on something like 40 to 180°, not 0 to 360. I tried the compass in two different rooms, one that might have a lot of EM interferences, and another that should have little to no EM interference, I had the same results. The tilt of the compass changes the values of the heading, but it still has the same comportment, it can’t detect more than 120° changes is the best cases, which are rare.

Is there another possible reason than EM interference and tilt that could cause this issue?