# Calibration Dump

This example shows how to read and display calibration data stored on the device. It retrieves both user calibration and factory
calibration data from the device's EEPROM and outputs them in JSON format.

## Similar samples

 * [Calibration Flash](https://docs.luxonis.com/software-v3/depthai/examples/calibration/calibration_flash.md)
 * [Calibration Load](https://docs.luxonis.com/software-v3/depthai/examples/calibration/calibration_load.md)
 * [Calibration Factory Reset](https://docs.luxonis.com/software-v3/depthai/examples/calibration/calibration_factory_reset.md)

## Demo

Example script output showing EEPROM availability check and calibration data:

```bash
~/depthai-core/examples/python/calibration$ python3 calibration_dump.py
    Is EEPROM available: True
    User calibration: {
      "batchName": "",
      "batchTime": 1734532871,
      "boardConf": "IR-C00M00-00",
      "boardCustom": "",
      "boardName": "NG9097",
      "boardOptions": 7,
      "boardRev": "R4M2E4",
      "cameraData": [],
      "deviceName": "",
      "hardwareConf": "F1-FV01-BC001",
      "housingExtrinsics": {
        "rotationMatrix": [],
        "specTranslation": {
          "x": 0.0,
          "y": 0.0,
          "z": 0.0
        },
        "toCameraSocket": -1,
        "translation": {
          "x": 0.0,
          "y": 0.0,
          "z": 0.0
        }
      },
      "productName": "OAK-D-PRO-W-POE",
      "version": 7
      ...
    }
    Factory calibration: {
      ...
    }
```

## Setup

This example requires the DepthAI v3 API, see [installation instructions](https://docs.luxonis.com/software-v3/depthai.md).

## Source code

```python
#!/usr/bin/env python3

import depthai as dai
import json

device = dai.Device(dai.UsbSpeed.HIGH)
print(f'Is EEPROM available: {device.isEepromAvailable()}')

# User calibration
try:
    print(f'User calibration: {json.dumps(device.readCalibration2().eepromToJson(), indent=2)}')
except Exception as ex:
    print(f'No user calibration: {ex}')

# Factory calibration
try:
    print(f'Factory calibration: {json.dumps(device.readFactoryCalibration().eepromToJson(), indent=2)}')
except Exception as ex:
    print(f'No factory calibration: {ex}')
```

### Need assistance?

Head over to [Discussion Forum](https://discuss.luxonis.com/) for technical support or any other questions you might have.
