Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Cam Test Fails on OAK-FFP-3P with 2x AR0234 and IMX378 #788

Closed
kneave opened this issue Mar 14, 2023 · 32 comments
Closed

[BUG] Cam Test Fails on OAK-FFP-3P with 2x AR0234 and IMX378 #788

kneave opened this issue Mar 14, 2023 · 32 comments
Labels
bug Something isn't working

Comments

@kneave
Copy link

kneave commented Mar 14, 2023

Check if issue already exists

I have found no reference by searching online or the forums

Describe the bug
I have an OAK-FFP-3P with the following configuration:
Left: AR0234
Centre: IMX378
Right: AR0234

When I try to run cam_test.py using the develop branch of depthai-python (which includes depthai-core) it fails. The AR0234 are also not detected. Note, if I switch to the ar0234_x3 branch, all the cameras are detected.

Image showing only the IMX378 detected when using the develop branch:
image

Image showing the same script reporting all three cameras, running from the ar0234_x3 branch:
image

Minimal Reproducible Example

python cam_test.py -cams rgb,c left,c right,c            

Enabled cameras:
    rgb : color
   left : color
  right : color
DepthAI version: 2.20.2.0
DepthAI path: C:\Users\keegan\Documents\GitHub\depthai-python\venv\lib\site-packages\depthai.cp39-win_amd64.pyd
Traceback (most recent call last):
  File "C:\Users\keegan\Documents\GitHub\depthai-python\utilities\cam_test.py", line 181, in <module>
    cam[c].setIsp3aFps(args.isp3afps)
AttributeError: 'depthai.node.ColorCamera' object has no attribute 'setIsp3aFps'

Expected behavior
I would expect cam_test.py to succeed and be able to stream all cameras.

Additional context
I have attached the simple preview script I've been using to test the cameras on each branch.
preview.zip

@kneave kneave added the bug Something isn't working label Mar 14, 2023
@SzabolcsGergely
Copy link
Collaborator

When you switch to a branch, you also need to run examples/install_requirements.py to install the library specific to that branch.
You are using latest release, which is older than what's available on develop.

@kneave
Copy link
Author

kneave commented Mar 14, 2023

I ran examples\install_requirements.py before running the above test, I just deleted and grabbed a fresh copy from git and the same holds true:

image

@SzabolcsGergely
Copy link
Collaborator

If you download as .zip it won't work, since it relies on git versioning to retrieve firmware version.
You need to clone it, together with all its submodules.

@kneave
Copy link
Author

kneave commented Mar 14, 2023

I cloned it using Git Desktop, I don't do zip downloads for that reason.

@kneave
Copy link
Author

kneave commented Mar 14, 2023

For reference:

image

@SzabolcsGergely
Copy link
Collaborator

What's the output of python3 install_requirements.py ?

@kneave
Copy link
Author

kneave commented Mar 14, 2023

Great minds, I was just grabbing that for you!

This is from examples\install_requirements.py image

@SzabolcsGergely
Copy link
Collaborator

Some of these commands fail:
https://github.com/luxonis/depthai-python/blob/develop/examples/install_requirements.py#L114
It's something related to your environment on windows.
Would you mind adding some debug prints and check?
E.g.

    except (OSError, subprocess.CalledProcessError) as e:
        print(e)
        git_context = False

@kneave
Copy link
Author

kneave commented Mar 14, 2023

You're right, I'm on a new laptop and it turns out git isn't accessible in PyCharm for some reason as it was on my old one. I ran install_requirements.py from the PyCharm git-bash and it updated correctly though.

The isp error has gone, the AR0234 are still not detected however.

image

@SzabolcsGergely SzabolcsGergely transferred this issue from luxonis/depthai-core Mar 15, 2023
@alex-luxonis
Copy link
Collaborator

@kneave This setup works for me, just tried on OAK-FFC-3P:

python3 utilities/cam_test.py -cams rgb,c left,c right,c -cres 1080
Enabled cameras:
    rgb : color
   left : color
  right : color
DepthAI version: 2.20.2.0.dev+f83c0e53fc8d44ff1b7006163a8f0994cab6f51d
DepthAI path: /home/user/.local/lib/python3.10/site-packages/depthai.cpython-310-x86_64-linux-gnu.so
[14442C10D16A93D600] [3.4] [1.716] [ColorCamera(6)] [warning] Unsupported resolution set for detected camera AR0234, needs 1200_P, defaulting to it
[14442C10D16A93D600] [3.4] [1.717] [ColorCamera(4)] [warning] Unsupported resolution set for detected camera AR0234, needs 1200_P, defaulting to it
Connected cameras:
[14442C10D16A93D600] [3.4] [1.763] [system] [warning] AR0234: mixing with IMX378/477/214 or OV9282/9782/7251 is not fully supported, image quality may be degraded
 -socket RGB   : IMX378 4056 x 3040 focus:auto  - COLOR
 -socket LEFT  : AR0234 1920 x 1200 focus:fixed - MONO
 -socket RIGHT : AR0234 1920 x 1200 focus:fixed - MONO
USB speed: SUPER
IR drivers: []
Cam:      rgb           left          right    [host | capture timestamp]
FPS:  11.83| 11.69  11.83| 11.72  11.83| 11.87

I suspect the EEPROM is not properly set on your device, to identify it as an FFC device, where more camera sensors are being probed. An empty EEPROM (not calibrated) would work too.
(by default, we don't probe all sensors, to not affect the application startup time on our standard OAK-1/OAK-D devices)
Could it be the case that the device was manually calibrated, and the boardName or productName fields don't contain FFC-3P or the board name 1090?
For a quick check:
python3 examples/calibration/calibration_dump.py

@kneave
Copy link
Author

kneave commented Mar 15, 2023

Calibration is something I've been having no end of trouble with so very likely is in an unknown state. For the name of the board, it was NEFIVE that I set it to. Do I need to change the filename of the board definition and the board name in it to append -FFC-3P at the end? What should I put as the revision?

For the eeprom, how can I do a reset to blank to test this?

@kneave
Copy link
Author

kneave commented Mar 15, 2023

Data from calibration dump is below in full, I think these are the important parts though:

  "batchName": "",
  "batchTime": 0,
  "boardConf": "",
  "boardCustom": "",
  "boardName": "",
  "boardOptions": 0,
  "boardRev": "",

No factory calibration: No or invalid EEPROM configuration flashed, error: EEPROM_INVALID_DATA

By the way, I have tried going back to the ar0234_x3 branch which has previously enabled me to at least see the cameras in the calibration.py script, if I try and run it now however I just get the following:
image

I am still able to preview the cameras fine with the script attached to the first post here so I've no idea what it's complaining about and I can't find an explanation here or on the forums.

I have previously been fighting to get this calibrated, more info on the history here, and it looks like this device is in an unknown state now. I've tried running the factory reset script but it says there's no factory calibration to use. This is an FFC-3P though so I wouldn't expect it to have one as it came without cameras.

If you're saying this should work on the develop branch then can you share the procedure to put this back to the factory state please? As you will see on the forum thread I've been trying to get this working for a long time now, I bought this device as I'd heard nothing but good things, I suspect that's for the preconfigured cameras though as the 3P really doesn't seem user friendly. I'm taking notes as I go so will be writing up a guide for newbies to get started and avoid all the problems I've hit. I need to fix them first though and that doesn't seem possible right now.

Full config as dumped:

{
  "batchName": "",
  "batchTime": 0,
  "boardConf": "",
  "boardCustom": "",
  "boardName": "",
  "boardOptions": 0,
  "boardRev": "",
  "cameraData": [
    [
      2,
      {
        "cameraType": 0,
        "distortionCoeff": [
          0.7016456723213196,
          0.09789543598890305,
          -2.0482420950429514e-05,
          -8.167795022018254e-05,
          0.0013215143699198961,
          1.0600999593734741,
          0.26497378945350647,
          0.012843688949942589,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0
        ],
        "extrinsics": {
          "rotationMatrix": [
            [
              0.9998937249183655,
              0.014151704497635365,
              0.003498660633340478
            ],
            [
              -0.014156349934637547,
              0.9998989105224609,
              0.0013065891107544303
            ],
            [
              -0.0034798167180269957,
              -0.001355978543870151,
              0.9999930262565613
            ]
          ],
          "specTranslation": {
            "x": 4.0,
            "y": 0.0,
            "z": 0.0
          },
          "toCameraSocket": 0,
          "translation": {
            "x": 3.989010810852051,
            "y": -0.5054824352264404,
            "z": -0.10272972285747528
          }
        },
        "height": 1200,
        "intrinsicMatrix": [
          [
            628.2872924804688,
            0.0,
            1041.1187744140625
          ],
          [
            0.0,
            628.2872924804688,
            549.2280883789062
          ],
          [
            0.0,
            0.0,
            1.0
          ]
        ],
        "lensPosition": 0,
        "specHfovDeg": 120.0,
        "width": 1920
      }
    ],
    [
      0,
      {
        "cameraType": 0,
        "distortionCoeff": [
          8.938774108886719,
          14.074850082397461,
          -0.000195886314031668,
          -0.00023015693295747042,
          10.906084060668945,
          8.955772399902344,
          13.584248542785645,
          11.580068588256836,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0
        ],
        "extrinsics": {
          "rotationMatrix": [
            [
              0.0,
              0.0,
              0.0
            ],
            [
              0.0,
              0.0,
              0.0
            ],
            [
              0.0,
              0.0,
              0.0
            ]
          ],
          "specTranslation": {
            "x": 0.0,
            "y": 0.0,
            "z": 0.0
          },
          "toCameraSocket": -1,
          "translation": {
            "x": 0.0,
            "y": 0.0,
            "z": 0.0
          }
        },
        "height": 1200,
        "intrinsicMatrix": [
          [
            1145.1165771484375,
            0.0,
            969.6947631835938
          ],
          [
            0.0,
            1145.1165771484375,
            582.4027099609375
          ],
          [
            0.0,
            0.0,
            1.0
          ]
        ],
        "lensPosition": 0,
        "specHfovDeg": 90.0,
        "width": 1920
      }
    ],
    [
      1,
      {
        "cameraType": 0,
        "distortionCoeff": [
          1.0231025218963623,
          0.17135770618915558,
          -3.523820123518817e-05,
          -3.414222737774253e-05,
          0.0023694520350545645,
          1.3884692192077637,
          0.44181621074676514,
          0.02262495830655098,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0
        ],
        "extrinsics": {
          "rotationMatrix": [
            [
              0.9999569058418274,
              0.003983873408287764,
              -0.008386572822928429
            ],
            [
              -0.003977048210799694,
              0.999991774559021,
              0.0008303489303216338
            ],
            [
              0.008389811962842941,
              -0.0007969593279995024,
              0.9999644756317139
            ]
          ],
          "specTranslation": {
            "x": -8.0,
            "y": 0.0,
            "z": 0.0
          },
          "toCameraSocket": 2,
          "translation": {
            "x": -7.940205097198486,
            "y": 0.0541897714138031,
            "z": 0.07038317620754242
          }
        },
        "height": 1200,
        "intrinsicMatrix": [
          [
            634.196044921875,
            0.0,
            987.4623413085938
          ],
          [
            0.0,
            634.196044921875,
            575.157958984375
          ],
          [
            0.0,
            0.0,
            1.0
          ]
        ],
        "lensPosition": 0,
        "specHfovDeg": 120.0,
        "width": 1920
      }
    ]
  ],
  "hardwareConf": "",
  "imuExtrinsics": {
    "rotationMatrix": [
      [
        0.0,
        0.0,
        0.0
      ],
      [
        0.0,
        0.0,
        0.0
      ],
      [
        0.0,
        0.0,
        0.0
      ]
    ],
    "specTranslation": {
      "x": 0.0,
      "y": 0.0,
      "z": 0.0
    },
    "toCameraSocket": -1,
    "translation": {
      "x": 0.0,
      "y": 0.0,
      "z": 0.0
    }
  },
  "miscellaneousData": [],
  "productName": "",
  "stereoRectificationData": {
    "leftCameraSocket": 1,
    "rectifiedRotationLeft": [
      [
        0.9998471140861511,
        -0.0028335603419691324,
        -0.017254995182156563
      ],
      [
        0.002840181114152074,
        0.9999958872795105,
        0.000359206780558452
      ],
      [
        0.017253907397389412,
        -0.000408159161452204,
        0.9998510479927063
      ]
    ],
    "rectifiedRotationRight": [
      [
        0.9999374151229858,
        -0.006824304815381765,
        -0.008863596245646477
      ],
      [
        0.006820903159677982,
        0.999976634979248,
        -0.0004139334487263113
      ],
      [
        0.00886621419340372,
        0.00035344981006346643,
        0.9999606609344482
      ]
    ],
    "rightCameraSocket": 2
  },
  "version": 7
}
No factory calibration: No or invalid EEPROM configuration flashed, error: EEPROM_INVALID_DATA
User calibration raw: [7, 0, 170, 85, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 251, 245, 127, 63, 65, 179, 57, 187, 89, 90, 141, 188, 85, 34
, 58, 59, 187, 255, 127, 63, 235, 83, 188, 57, 17, 88, 141, 60, 50, 254, 213, 185, 61, 246, 127, 63, 230, 251, 127, 63, 107, 158, 223, 187, 158, 56, 17, 188, 226, 129, 223, 59, 120, 254, 127, 
63, 53, 5, 217, 185, 153, 67, 17, 60, 59, 79, 185, 57, 108, 253, 127, 63, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 176, 4, 128, 7, 0, 187, 35, 143, 68, 0, 0, 0, 0, 119, 108, 114, 68, 0, 0, 0, 0, 187, 35, 143, 68, 198, 153, 17, 68, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 63, 56, 5, 15, 65, 150, 50, 97, 65, 213, 102, 77, 185, 72, 86, 113, 185, 82, 127, 46, 65, 216, 74, 15, 65, 21, 89, 89, 65, 246, 71, 57, 65, 0, 0, 0, 0, 0, 0, 0,
 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 255, 176, 4, 128, 7, 0, 140, 140, 30, 68, 0, 0, 0, 0, 151, 221, 118, 68, 0, 0, 0, 0, 140, 140, 30, 68, 28, 202, 15, 68, 0, 0,
 0, 0, 0, 0, 0, 0, 0, 0, 128, 63, 6, 245, 130, 63, 101, 120, 47, 62, 187, 204, 19, 184, 240, 51, 15, 184, 207, 72, 27, 59, 92, 185, 177, 63, 188, 53, 226, 62, 250, 87, 185, 60, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 66, 0, 1, 45, 253, 127, 63, 39, 139, 130, 59, 214, 103, 9, 188, 230, 81, 130, 187, 118, 255, 127, 63, 198, 171, 89, 58, 108,
 117, 9, 60, 9, 235, 80, 186, 172, 253, 127, 63, 41, 22, 254, 192, 24, 246, 93, 61, 14, 37, 144, 61, 0, 0, 0, 193, 0, 0, 0, 0, 0, 0, 0, 0, 2, 176, 4, 128, 7, 0, 99, 18, 29, 68, 0, 0, 0, 0, 205
, 35, 130, 68, 0, 0, 0, 0, 99, 18, 29, 68, 153, 78, 9, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 63, 13, 159, 51, 63, 103, 125, 200, 61, 170, 209, 171, 183, 132, 74, 171, 184, 170, 54, 173, 58, 9
1, 177, 135, 63, 165, 170, 135, 62, 86, 110, 82, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 66, 0, 2, 9, 249, 127, 63, 141, 220, 103, 60, 201, 73, 1
01, 59, 9, 240, 103, 188, 96, 249, 127, 63, 219, 65, 171, 58, 163, 13, 100, 187, 23, 187, 177, 186, 139, 255, 127, 63, 244, 75, 127, 64, 76, 103, 1, 191, 246, 99, 210, 189, 0, 0, 128, 64, 0, 0
, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]
Factory calibration raw: [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]

@Erol444
Copy link
Member

Erol444 commented Mar 16, 2023

cc also @njezersek on calibration part. @kneave shared on forum:

Apparently this combo of cameras should work but the config file on the 3P may now be in a bad state prevent calibration from working. I've tried running the factory_reset script and it just says the factory calibration isn't present, I've no idea where to find an empty one either.

@kneave
Copy link
Author

kneave commented Mar 16, 2023

Thanks Erik, any tips to get it back to a factory state would be greatly appreciated. I'm certain that a lot of this is me excitedly trying different things to get it working without really knowing what I was doing. I'll definitely be happy to share my notes once I get it working to help get others up to speed quicker.

@alex-luxonis
Copy link
Collaborator

I would recommend this slightly less dangerous approach, with lower permissions for accessing only the EEPROM user area protected fields. It will update in-place the existing user calibration, modifying just productName:

fix_calib_ffc.py from https://gist.github.com/alex-luxonis/c1755a1dc32af67cf9ab76182cdf1c02

DEPTHAI_ALLOW_FACTORY_FLASHING=235539980 python3 fix_calib_ffc.py -a FFC-3P

(the environment variable prepended to the command would work on Linux or MinGW, otherwise set for PowerShell similar to above, but use "235539980" as the value)

@kneave On the device you have, the factory calibration seems missing, it's probably a device from an earlier batch, but that should be fine.

@kneave
Copy link
Author

kneave commented Mar 17, 2023

Thanks folks.

Alex, what branch should I run your script against please? I'm getting the following error at the minute:

keegan@Surface MINGW64 ~/Documents/GitHub/depthai (UI-test-tools-Production-gen2)
$ DEPTHAI_ALLOW_FACTORY_FLASHING=235539980 python fix_calib_ffc.py -a FFC-3P
Traceback (most recent call last):
  File "C:\Users\keegan\Documents\GitHub\depthai\fix_calib_ffc.py", line 23, in <module>
    with dai.Device(dai.OpenVINO.VERSION_UNIVERSAL, dai.UsbSpeed.HIGH) as device:
AttributeError: type object 'depthai.OpenVINO' has no attribute 'VERSION_UNIVERSAL'

@alex-luxonis
Copy link
Collaborator

@kneave The script fix_calib_ffc.py should work on both main (most recent release currently: 2.20.2) or develop, no need to be on that UI-test-tools-Production-gen2.

@kneave
Copy link
Author

kneave commented Mar 17, 2023

Thanks for confirming, I've switched to develop in deapthai and run install_requirements.py. I'm still getting the openvino error
image

@alex-luxonis
Copy link
Collaborator

@kneave I think the old library is still installed. After switching branches, install the current one from the branch by running
python3 examples/install_requirements.py

Adding for reference how I tested, flashing the calibration data from your post above to my FFC device, saved to a custom_calib_dp788.json file:

python3 -c "import depthai as d; print(d.__version__)"

2.20.2.0

DEPTHAI_ALLOW_FACTORY_FLASHING=235539980 python3 examples/calibration/calibration_flash.py custom_calib_dp788.json

Calibration Data on the device is backed up at:
/depthai-python/examples/calibration/depthai_calib_backup.json
Successfully flashed calibration

DEPTHAI_ALLOW_FACTORY_FLASHING=235539980 python3 fix_calib_ffc.py -a FFC-3P

Modifying EEPROM board/product name for the device  with ID 14442C1071BD3FD700. Original:
   >>> Existing board name  : 
   >>> Existing product name: 
   >>> NEW board name       : 
   >>> NEW product name     :  FFC-3P

WARNING: Please confirm that the device addressed above is the correct one.
Use with caution, and only on FFC devices! Soft-bricking may occur otherwise!
    Type 'yes' and press Enter to continue... yes
Previous device calibration data backed up at: backup__14442C1071BD3FD700_20230317_182731.calib
Flashing new calibration... DONE!

@kneave
Copy link
Author

kneave commented Mar 17, 2023

I was running in depthai rather than depthai-python, I have updated the eeprom and cam_test.py now runs!

image

It's previewing the cameras all in colour but still listing them as mono. Not sure if this is actually an issue or not as it's at least functioning ok?

@kneave
Copy link
Author

kneave commented Mar 17, 2023

I was running -cams rgb,c left,c right,c as the option by the way

@alex-luxonis
Copy link
Collaborator

That's great!

It's previewing the cameras all in colour but still listing them as mono.

Yeah, that seems to be a bug in listing (which just shows features/capabilities), but shouldn't otherwise affect functionality or image quality. Thanks for catching that!
I'll check and fix this bug, normally it should list as:

 -socket RGB   : IMX378 4056 x 3040 focus:auto  - COLOR
 -socket LEFT  : AR0234 1920 x 1200 focus:fixed - COLOR MONO
 -socket RIGHT : AR0234 1920 x 1200 focus:fixed - COLOR MONO

(AR0234 has both color and monochrome variants, but I'm not aware if it's possible to query the actual type from the sensor registers. At least for OV9282(mono)/OV9782(color) which present themselves as the same type of device, we haven't found a way to differentiate)

Note about this warning:
[warning] AR0234: mixing with IMX378/477/214 or OV9282/9782/7251 is not fully supported, image quality may be degraded
You may check if it has a significant impact on your usecase, by comparing with AR0234 running alone (IMX378 not enabled):
python3 utilities/cam_test.py -cams left,c right,c
The issue is related to the camera tuning (need to select a single binary used by all enabled cameras), we have planned to look for a fix, to use multiple tunings in parallel.

@kneave
Copy link
Author

kneave commented Mar 17, 2023

Ah, that'll explain the much lower framerate I'm seeing. Before with just one or the others I was seeing 30/60fps and now it's at about 19 which is not ideal to say the least.

I actually chose the IMX389 because it was a tiny module and fit perfectly in the robot's head that I'm building. Previously he only had the two cameras so it wasn't an issue but for the third I needed one that was tiny to fit between and be able to maintain the aesthetic. Do you know of another similarly sized module that may not have the tuning issue? Alternatively, is there a way I could tune them myself or is that a bit hardcore?

Photos for context:

IMG20230317171220

IMG20230317171244

IMG20230317171252

@kneave
Copy link
Author

kneave commented Mar 17, 2023

Playing around in cam_test I've managed to get it to 30fps across the board. I've tweaked the code to change the resolution of the IMX378 to 1080p and also set isp_scaling to 2. I'm not sure if this will improve if I'm not viewing the images and just processing them on the FFC-3P or not but it's good enough for me right now.

Command line:
python cam_test.py -ds 2 -cams rgb,c left,c right,c

This is pretty much my use case at the minute by the way, having the two wide angle cameras to generate a colour point cloud with the centre much narrower to allow for closer views of whatever the robot is looking at. The next task is to figure out the calibration of cameras with such different angles, I suspect I'll treat them separately and calibrate left and right together with the centre calibrated by itself. I've no idea if this is realistic in practice as I've not got this far before, but thanks to your help I can at least run scripts again. :)

I'm happy for this to be considered closed, and thank you for your help with that, but if there is an issue for the AR0234/IMX378 combination for tuning performance I'd appreciate a link so I can follow progress and get updates.

image

@kneave
Copy link
Author

kneave commented Mar 19, 2023

I think I've got calibration working but I'm getting the following error trying to update the device:

No PROTECTED permissions to override protected EEPROM fields
Traceback (most recent call last):
  File "C:\Users\keegan\Documents\GitHub\depthai\calibrate.py", line 980, in calibrate
    self.device.flashCalibration2(calibration_handler)
RuntimeError: No PROTECTED permissions to override protected EEPROM fields

results of calibration_dump.py are below:

Is EEPROM available: True
User calibration: {
  "batchName": "",
  "batchTime": 0,
  "boardConf": "",
  "boardCustom": "",
  "boardName": "",
  "boardOptions": 0,
  "boardRev": "",
  "cameraData": [
    [
      0,
      {
        "cameraType": 0,
        "distortionCoeff": [
          8.938774108886719,
          14.074850082397461,
          -0.000195886314031668,
          -0.00023015693295747042,
          10.906084060668945,
          8.955772399902344,
          13.584248542785645,
          11.580068588256836,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0
        ],
        "extrinsics": {
          "rotationMatrix": [
            [
              0.0,
              0.0,
              0.0
            ],
            [
              0.0,
              0.0,
              0.0
            ],
            [
              0.0,
              0.0,
              0.0
            ]
          ],
          "specTranslation": {
            "x": -0.0,
            "y": -0.0,
            "z": -0.0
          },
          "toCameraSocket": -1,
          "translation": {
            "x": 0.0,
            "y": 0.0,
            "z": 0.0
          }
        },
        "height": 1200,
        "intrinsicMatrix": [
          [
            1145.1165771484375,
            0.0,
            969.6947631835938
          ],
          [
            0.0,
            1145.1165771484375,
            582.4027099609375
          ],
          [
            0.0,
            0.0,
            1.0
          ]
        ],
        "lensPosition": 0,
        "specHfovDeg": 90.0,
        "width": 1920
      }
    ],
    [
      1,
      {
        "cameraType": 0,
        "distortionCoeff": [
          1.0231025218963623,
          0.17135770618915558,
          -3.523820123518817e-05,
          -3.414222737774253e-05,
          0.0023694520350545645,
          1.3884692192077637,
          0.44181621074676514,
          0.02262495830655098,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0
        ],
        "extrinsics": {
          "rotationMatrix": [
            [
              0.9999569058418274,
              0.003983873408287764,
              -0.008386572822928429
            ],
            [
              -0.003977048210799694,
              0.999991774559021,
              0.0008303489303216338
            ],
            [
              0.008389811962842941,
              -0.0007969593279995024,
              0.9999644756317139
            ]
          ],
          "specTranslation": {
            "x": -8.0,
            "y": 0.0,
            "z": 0.0
          },
          "toCameraSocket": 2,
          "translation": {
            "x": -7.940205097198486,
            "y": 0.0541897714138031,
            "z": 0.07038317620754242
          }
        },
        "height": 1200,
        "intrinsicMatrix": [
          [
            634.196044921875,
            0.0,
            987.4623413085938
          ],
          [
            0.0,
            634.196044921875,
            575.157958984375
          ],
          [
            0.0,
            0.0,
            1.0
          ]
        ],
        "lensPosition": 0,
        "specHfovDeg": 120.0,
        "width": 1920
      }
    ],
    [
      2,
      {
        "cameraType": 0,
        "distortionCoeff": [
          0.7016456723213196,
          0.09789543598890305,
          -2.0482420950429514e-05,
          -8.167795022018254e-05,
          0.0013215143699198961,
          1.0600999593734741,
          0.26497378945350647,
          0.012843688949942589,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0
        ],
        "extrinsics": {
          "rotationMatrix": [
            [
              0.9998937249183655,
              0.014151704497635365,
              0.003498660633340478
            ],
            [
              -0.014156349934637547,
              0.9998989105224609,
              0.0013065891107544303
            ],
            [
              -0.0034798167180269957,
              -0.001355978543870151,
              0.9999930262565613
            ]
          ],
          "specTranslation": {
            "x": 4.0,
            "y": 0.0,
            "z": 0.0
          },
          "toCameraSocket": 0,
          "translation": {
            "x": 3.989010810852051,
            "y": -0.5054824352264404,
            "z": -0.10272972285747528
          }
        },
        "height": 1200,
        "intrinsicMatrix": [
          [
            628.2872924804688,
            0.0,
            1041.1187744140625
          ],
          [
            0.0,
            628.2872924804688,
            549.2280883789062
          ],
          [
            0.0,
            0.0,
            1.0
          ]
        ],
        "lensPosition": 0,
        "specHfovDeg": 120.0,
        "width": 1920
      }
    ]
  ],
  "hardwareConf": "",
  "imuExtrinsics": {
    "rotationMatrix": [
      [
        0.0,
        0.0,
        0.0
      ],
      [
        0.0,
        0.0,
        0.0
      ],
      [
        0.0,
        0.0,
        0.0
      ]
    ],
    "specTranslation": {
      "x": 0.0,
      "y": 0.0,
      "z": 0.0
    },
    "toCameraSocket": -1,
    "translation": {
      "x": 0.0,
      "y": 0.0,
      "z": 0.0
    }
  },
  "miscellaneousData": [],
  "productName": " FFC-3P",
  "stereoRectificationData": {
    "leftCameraSocket": 1,
    "rectifiedRotationLeft": [
      [
        0.9998471140861511,
        -0.0028335603419691324,
        -0.017254995182156563
      ],
      [
        0.002840181114152074,
        0.9999958872795105,
        0.000359206780558452
      ],
      [
        0.017253907397389412,
        -0.000408159161452204,
        0.9998510479927063
      ]
    ],
    "rectifiedRotationRight": [
      [
        0.9999374151229858,
        -0.006824304815381765,
        -0.008863596245646477
      ],
      [
        0.006820903159677982,
        0.999976634979248,
        -0.0004139334487263113
      ],
      [
        0.00886621419340372,
        0.00035344981006346643,
        0.9999606609344482
      ]
    ],
    "rightCameraSocket": 2
  },
  "version": 7
}
No factory calibration: No or invalid EEPROM configuration flashed, error: EEPROM_INVALID_DATA
User calibration raw: [7, 0, 170, 85, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 251, 245, 127, 63, 65, 179, 57, 187, 89, 90, 141, 188, 85, 34
, 58, 59, 187, 255, 127, 63, 235, 83, 188, 57, 17, 88, 141, 60, 50, 254, 213, 185, 61, 246, 127, 63, 230, 251, 127, 63, 107, 158, 223, 187, 158, 56, 17, 188, 226, 129, 223, 59, 120, 254, 127, 
63, 53, 5, 217, 185, 153, 67, 17, 60, 59, 79, 185, 57, 108, 253, 127, 63, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 176, 4, 128, 7, 0, 140, 140, 30, 68, 0, 0, 0, 0, 151, 221, 118, 68, 0, 0, 0, 0, 140, 140, 30, 68, 28, 202, 15, 68, 0, 0
, 0, 0, 0, 0, 0, 0, 0, 0, 128, 63, 6, 245, 130, 63, 101, 120, 47, 62, 187, 204, 19, 184, 240, 51, 15, 184, 207, 72, 27, 59, 92, 185, 177, 63, 188, 53, 226, 62, 250, 87, 185, 60, 0, 0, 0, 0, 0,
 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 66, 0, 1, 45, 253, 127, 63, 39, 139, 130, 59, 214, 103, 9, 188, 230, 81, 130, 187, 118, 255, 127, 63, 198, 171, 89, 58, 108
, 117, 9, 60, 9, 235, 80, 186, 172, 253, 127, 63, 41, 22, 254, 192, 24, 246, 93, 61, 14, 37, 144, 61, 0, 0, 0, 193, 0, 0, 0, 0, 0, 0, 0, 0, 2, 176, 4, 128, 7, 0, 99, 18, 29, 68, 0, 0, 0, 0, 20
5, 35, 130, 68, 0, 0, 0, 0, 99, 18, 29, 68, 153, 78, 9, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 63, 13, 159, 51, 63, 103, 125, 200, 61, 170, 209, 171, 183, 132, 74, 171, 184, 170, 54, 173, 58, 
91, 177, 135, 63, 165, 170, 135, 62, 86, 110, 82, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 66, 0, 2, 9, 249, 127, 63, 141, 220, 103, 60, 201, 73, 
101, 59, 9, 240, 103, 188, 96, 249, 127, 63, 219, 65, 171, 58, 163, 13, 100, 187, 23, 187, 177, 186, 139, 255, 127, 63, 244, 75, 127, 64, 76, 103, 1, 191, 246, 99, 210, 189, 0, 0, 128, 64, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 176, 4, 128, 7, 0, 187, 35, 143, 68, 0, 0, 0, 0, 119, 108, 114, 68, 0, 0, 0, 0, 187, 35, 143, 68, 198, 153, 17, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 63, 56, 5, 15, 65
, 150, 50, 97, 65, 213, 102, 77, 185, 72, 86, 113, 185, 82, 127, 46, 65, 216, 74, 15, 65, 21, 89, 89, 65, 246, 71, 57, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 180, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32,
 70, 70, 67, 45, 51, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]
Factory calibration raw: [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2
55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255
, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25
5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]

@themarpe
Copy link
Collaborator

@kneave which commit are you on?

Make sure calibration is first read - then modified - then flashed.

Otherwise above env var could be reapplied if there are still issues

@kneave
Copy link
Author

kneave commented Mar 19, 2023

I'm was switching between a few branches trying to get it to work but they were all throwing the eeprom permission error. I managed to get it to flash using the env variable but if I try running any of the demos I get permissions errors again. It says to check udev but I'm on Windows

image

I'll go through it again tomorrow and try again, I'm not quite sure what's going on at the minute.

@themarpe
Copy link
Collaborator

@kneave were you on modular-calibration branch?

Which script did you try that it prints the above? Is there anything else running in the background, using the device?

@kneave
Copy link
Author

kneave commented Mar 20, 2023

The script was the depthai_demo.py on depthai:develop, there wasn't anything else running against the device at the time.

Feel free to stand down for a while, I'm going to have a proper look at everything and make sure it's all in a sensible state before I take any more of your time. Thank you for the help so far :)

@alex-luxonis
Copy link
Collaborator

This issue:
[warning] AR0234: mixing with IMX378/477/214 or OV9282/9782/7251 is not fully supported, image quality may be degraded
should be fixed now on develop, multiple tuning binaries are used internally by firmware.

@kneave
Copy link
Author

kneave commented Nov 1, 2023

Amazing, I'll give it a go today and let you know how I get on. Would this update be compatible with the pointcloud branch too by any chance? I've been using that a lot recently with a triple AR0234 setup and if I can bring the IMX378 back in to play with it it'd be ideal. I'm not sure how the two interact though to be honest, I suspect they're both separate firmwares?
luxonis/depthai-core#791

@kneave kneave reopened this Nov 1, 2023
@kneave
Copy link
Author

kneave commented Nov 3, 2023

W00t! Finally been able to test this and it looks like it works a charm! Before, when I had the AR0234 and IMX378 enabled the white balance on the AR0234 was terrible, now it's identical with the IMX378 running!

For how it was before, please see this post:
https://discuss.luxonis.com/d/2160-image-quality-in-mixing-imx477-with-ar0234-stereo-pairs/13

and now, no difference!

Only AR0234
image

AR0234 with IMX378
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

5 participants