This does not seem to match the implementation.
0 if detected, -1 if device_id mismatch, -2 no device at i2c address