
# Error codes reference
During startup a number of error codes may be presented. This document serves as a reference for tracing the problem.

### height sensor
Errors are logged as "code @ position". Code is the status code as returned by the VL53L0X API, and position determines which API call during initialization failed. Test


| Code | Constant | Description |
|--|--|--|
| -1 | VL53L0X_ERROR_CALIBRATION_WARNING | Warning invalid calibration data may be in used VL53L0X_InitData(), VL53L0X_GetOffsetCalibrationData, VL53L0X_SetOffsetCalibrationData |
| -2 | VL53L0X_ERROR_MIN_CLIPPED | Warning parameter passed was clipped to min before to be applied |
| -3 | VL53L0X_ERROR_UNDEFINED | Unqualified error |
| -4 | VL53L0X_ERROR_INVALID_PARAMS | Parameter passed is invalid or out of range |
| -5 | VL53L0X_ERROR_NOT_SUPPORTED | Function is not supported in current mode or configuration |
| -6 | VL53L0X_ERROR_RANGE_ERROR | Device report a ranging error interrupt status |
| -7 | VL53L0X_ERROR_TIME_OUT | Aborted due to time out |
| -8 | VL53L0X_ERROR_MODE_NOT_SUPPORTED | Asked mode is not supported by the device |
| -9 | VL53L0X_ERROR_BUFFER_TOO_SMALL | ... |
| -10 | VL53L0X_ERROR_GPIO_NOT_EXISTING | User tried to setup a non-existing GPIO pin |
| -11 | VL53L0X_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED | unsupported GPIO functionality |
| -12 | VL53L0X_ERROR_INTERRUPT_NOT_CLEARED | Error during interrupt clear |
| -20 | VL53L0X_ERROR_CONTROL_INTERFACE | error reported from IO functions |
| -30 | VL53L0X_ERROR_INVALID_COMMAND | The command is not allowed in the current device state (power down) |
| -40 | VL53L0X_ERROR_DIVISION_BY_ZERO | In the function a division by zero occurs |
| -50 | VL53L0X_ERROR_REF_SPAD_INIT | Error during reference SPAD initialization |
| -99 | VL53L0X_ERROR_NOT_IMPLEMENTED |

<br>

| Position | Description |
|--|--|
| 1 | VL53L0X_DataInit |
| 2 | VL53L0X_SetDeviceAddress |
| 3 | VL53L0X_GetDeviceInfo |
| 4 | VL53L0X_StaticInit |
| 5 | VL53L0X_PerformRefSpadManagement |
| 6 | VL53L0X_PerformRefCalibration |
| 7 | VL53L0X_SetDeviceMode |
| 8 | VL53L0X_SetLimitCheckEnable(VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE) |
| 9 | VL53L0X_SetLimitCheckEnable(VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE) |
| 10 | VL53L0X_SetLimitCheckEnable(VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD) |
| 11 | VL53L0X_SetLimitCheckValue(VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD) |


### timing budget
Errors are logged as an VL53L0X API code. See the table above for reference.