Hi,
First, M3PR is a correct part marking for the MPL3115A2.
Do you have a logic analyzer or an oscilloscope to know what is going on on the I2C bus when you read the WHO_AM_I register (0x0C)? It might also be helpful to see your source code (at least the initialization and data processing routines).
To achieve 30cm resolution, it is necessary to set max oversampling (OS[2:0] = 0x07).
Take a look at my example project for the MPL3115A2 and KL25Z, you might find it useful.
I hope it helps.
Regards,
Tomas
PS: If my answer helps to solve your question, please mark it as "Correct" or “Helpful”. Thank you.