HMC5883L "strange" problem

Hi everyone (this is my first post)
I brought a 10Dof (the GY-80), all sensors work great exept HMC5883L
that return strange value

Raw:	-1   -2   0   	Scaled:	-0.92   -1.84   0.00   	Heading:	4.29 Radians   	246.05 Degrees   	
Raw:	-4   -1   1   	Scaled:	-3.68   -0.92   0.92   	Heading:	3.43 Radians   	196.65 Degrees   	
Raw:	-1   0   0   	Scaled:	-0.92   0.00   0.00   	Heading:	3.19 Radians   	182.62 Degrees   	
Raw:	-1   1   -2   	Scaled:	-0.92   0.92   -1.84   	Heading:	2.40 Radians   	137.62 Degrees   	
Raw:	-2   -1   1   	Scaled:	-1.84   -0.92   0.92   	Heading:	3.65 Radians   	209.18 Degrees   	
Raw:	-5   0   1   	Scaled:	-4.60   0.00   0.92   	Heading:	3.19 Radians   	182.62 Degrees   	
Raw:	-4   1   -1   	Scaled:	-3.68   0.92   -0.92   	Heading:	2.94 Radians   	168.58 Degrees   	
Raw:	-3   1   2   	Scaled:	-2.76   0.92   1.84   	Heading:	2.87 Radians   	164.18 Degrees   	
Raw:	-2   1   2   	Scaled:	-1.84   0.92   1.84   	Heading:	2.72 Radians   	156.05 Degrees   	
Raw:	-3   0   1   	Scaled:	-2.76   0.00   0.92   	Heading:	3.19 Radians   	182.62 Degrees   	
Raw:	0   0   -1   	Scaled:	0.00   0.00   -0.92   	Heading:	0.05 Radians   	2.62 Degrees   	
Raw:	-2   -1   0   	Scaled:	-1.84   -0.92   0.00   	Heading:	3.65 Radians   	209.18 Degrees   	
Raw:	-1   0   0   	Scaled:	-0.92   0.00   0.00   	Heading:	3.19 Radians   	182.62 Degrees   	
Raw:	-2   3   -1   	Scaled:	-1.84   2.76   -0.92   	Heading:	2.20 Radians   	126.31 Degrees   	
Raw:	-1   0   0   	Scaled:	-0.92   0.00   0.00   	Heading:	3.19 Radians   	182.62 Degrees   	
Raw:	-2   -1   2   	Scaled:	-1.84   -0.92   1.84   	Heading:	3.65 Radians   	209.18 Degrees

I'm using the internal pull-up and don't seem to be communication issue, in fact when I put a magnet near the sensor it stroke to the maximum value.
I've used different library but all with the same result anyone can help me?

How are the configuration registers set?

Register Address 0 = 1110000 = 112     
Register Address 1 = 11000000 = 192     
Register Address 2 = 0 = 0     
Register Address 3 = 11111111 = 255     
Register Address 4 = 11111111 = 255     
Register Address 5 = 11111111 = 255     
Register Address 6 = 11111111 = 255     
Register Address 7 = 0 = 0     
Register Address 8 = 0 = 0     
Register Address 9 = 1 = 1     
Register Address 10 = 1001000 = 72     
Register Address 11 = 110100 = 52     
Register Address 12 = 110011 = 51     
Register Address 13 = 0 = 0     
Register Address 14 = 0 = 0     
Register Address 15 = 111100 = 60     
Register Address 16 = 0 = 0     
Register Address 17 = 0 = 0

This are the values, but I think that is a faulty device because in another HMC5883L device the library works very well and the registers values are the same.