Skip to content

Commit 1536fe0

Browse files
lnotspotlmoratom
andauthored
Update StereoNode to facilitate DynamicCalibration for EEPROM v<6 (#1523)
* change EEPROM data default for stereoEnableDistortionCorrection to true * issue a warning instead of throwing * update rvc2 commit hash * formatting * bump rvc2 fw commit hash * Update src/pipeline/node/DynamicCalibrationNode.cpp Co-authored-by: moratom <[email protected]> * change defaults * bump rvc2 fw hash * bump rvc2 fw hash * fix macos integration errors --------- Co-authored-by: moratom <[email protected]>
1 parent f93dd69 commit 1536fe0

File tree

4 files changed

+8
-4
lines changed

4 files changed

+8
-4
lines changed

cmake/Depthai/DepthaiDeviceSideConfig.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
set(DEPTHAI_DEVICE_SIDE_MATURITY "snapshot")
33

44
# "full commit hash of device side binary"
5-
set(DEPTHAI_DEVICE_SIDE_COMMIT "6046548aea636182aa0b028aff7bf3ec4bdf6988")
5+
set(DEPTHAI_DEVICE_SIDE_COMMIT "913e44e627a6e24f794bce4c4eed2a94691072a4")
66

77
# "version if applicable"
88
set(DEPTHAI_DEVICE_SIDE_VERSION "")

include/depthai/pipeline/node/DynamicCalibrationNode.hpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,6 +198,9 @@ class DynamicCalibration : public DeviceNodeCRTP<DeviceNode, DynamicCalibration,
198198
* - Reseting of data
199199
*/
200200
bool runOnHostVar = true;
201+
202+
// When old calibration is encountered, issue a warning once
203+
bool oldCalibrationWarningIssued = false;
201204
};
202205

203206
} // namespace node

src/pipeline/node/DynamicCalibrationNode.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -417,8 +417,9 @@ DynamicCalibration::ErrorCode DynamicCalibration::initializePipeline(const std::
417417
calibrationHandler = daiDevice->getCalibration();
418418
auto eepromData = calibrationHandler.getEepromData();
419419
auto platform = daiDevice->getPlatform();
420-
if(platform == dai::Platform::RVC2 && (!eepromData.stereoEnableDistortionCorrection || eepromData.stereoUseSpecTranslation)) {
421-
throw std::runtime_error("The calibration on the device is too old to perform DynamicCalibration, full re-calibration required!");
420+
if(platform == dai::Platform::RVC2 && !eepromData.stereoEnableDistortionCorrection && !oldCalibrationWarningIssued) {
421+
logger->info("The calibration on the device is old (distortion correction is disabled), for optimal performance full re-calibration is recommended!");
422+
oldCalibrationWarningIssued = true;
422423
}
423424
auto [calibA, calibB] = DclUtils::convertDaiCalibrationToDcl(calibrationHandler, daiSocketA, daiSocketB, resolutionA, resolutionB);
424425

src/remote_connection/RemoteConnectionImpl.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -454,7 +454,7 @@ void RemoteConnectionImpl::exposeLibraryVersionService() {
454454
assert(ids.size() == 1);
455455
auto id = ids[0];
456456

457-
serviceMap[id] = [this](foxglove::ServiceResponse request) {
457+
serviceMap[id] = [](foxglove::ServiceResponse request) {
458458
nlohmann::json jsonRequest = nlohmann::json::parse(request.data);
459459
std::string responseMsg = std::string(build::VERSION);
460460
foxglove::ServiceResponse ret;

0 commit comments

Comments
 (0)