Compass error 99

I have APM 2.6 board and Ublox NEO M8n with built-in compass but i can’t calibrate compass> error 99.
Can someone help me?
I use USB connection and i connect GPS module in both GPS & I2C slots.

i know it is old but
OMG are you kidding me!!! Solved!! the PCB has TWO rows of THREE solder pads for UART 0 and UART 2. I desoldered the pads JUST BECAUSE and BAM!! Compass works. What in the hell does UART have to do with I2C? Nothing, they to completely different protocols. Whatever.
SO THE FIX IS NOTHING TO DO WITH I2C. MAKE SURE THE UART PADS ARE NOT CONNECTED. I hope this helps somebody because I have not seen this anywhere. I honestly can not believe it. Does anyone know what the UART pads would have to do with the I2C port?

Well done! I had that problem too . Thank you, i will try your sollution, hope to work. I really

If you get a chance can you report back? I am not and electrical engineer I was putting it back together and gave up but because I am weird I just didn’t like the looks of the solder. I had no idea that it would actually make it work. Dumb luck.