From b625a20aca9f6d99354a3b83eb32194abdea1b2a Mon Sep 17 00:00:00 2001 From: SamerKhshiboun Date: Wed, 31 Jan 2024 14:05:07 +0200 Subject: [PATCH] Remove SKU D465 --- src/ds/advanced_mode/advanced_mode.cpp | 4 +- src/ds/d400/d400-color.cpp | 20 +------ src/ds/d400/d400-device.cpp | 1 - src/ds/d400/d400-factory.cpp | 56 ------------------- src/ds/d400/d400-nonmonochrome.cpp | 10 ++-- src/ds/d400/d400-private.cpp | 1 - src/ds/d400/d400-private.h | 10 +--- src/ds/ds-calib-parsers.cpp | 7 --- .../live/dfu/test-device-fw-compatibility.py | 1 - 9 files changed, 10 insertions(+), 100 deletions(-) diff --git a/src/ds/advanced_mode/advanced_mode.cpp b/src/ds/advanced_mode/advanced_mode.cpp index ed723bb73b..bb7d05dfb1 100644 --- a/src/ds/advanced_mode/advanced_mode.cpp +++ b/src/ds/advanced_mode/advanced_mode.cpp @@ -42,7 +42,7 @@ namespace librealsense return results[4] > 0; }; - // "Remove IR Pattern" visual preset is available only for D400, D410, D415, D460, D465 + // "Remove IR Pattern" visual preset is available only for D400, D410, D415, D460 if (is_enabled()) register_to_visual_preset_option(); @@ -111,7 +111,6 @@ namespace librealsense case ds::RS430_PID: case ds::RS430I_PID: case ds::RS435_RGB_PID: - case ds::RS465_PID: case ds::RS435I_PID: default_430(p); break; @@ -179,7 +178,6 @@ namespace librealsense case ds::RS400_PID: case ds::RS410_PID: case ds::RS415_PID: - case ds::RS465_PID://TODO: verify d415_remove_ir(p); break; case ds::RS460_PID: diff --git a/src/ds/d400/d400-color.cpp b/src/ds/d400/d400-color.cpp index b8a9eaf7e8..f7c280b9bc 100644 --- a/src/ds/d400/d400-color.cpp +++ b/src/ds/d400/d400-color.cpp @@ -164,15 +164,7 @@ namespace librealsense // Currently disabled for certain sensors if (!val_in_range(_pid, { ds::RS457_PID})) { - if (!val_in_range(_pid, { ds::RS465_PID })) - { - color_ep.register_pu(RS2_OPTION_AUTO_EXPOSURE_PRIORITY); - } - // From 5.11.15 auto-exposure priority is supported on the D465 - else if (_fw_version >= firmware_version("5.11.15.0")) - { - color_ep.register_pu(RS2_OPTION_AUTO_EXPOSURE_PRIORITY); - } + color_ep.register_pu(RS2_OPTION_AUTO_EXPOSURE_PRIORITY); } _ds_color_common->register_standard_options(); @@ -187,7 +179,7 @@ namespace librealsense } // Currently disabled for certain sensors - if (!val_in_range(_pid, { ds::RS465_PID, ds::RS457_PID})) + if (!val_in_range(_pid, { ds::RS457_PID })) { color_ep.register_pu(RS2_OPTION_HUE); } @@ -241,13 +233,7 @@ namespace librealsense { color_ep.register_processing_block(processing_block_factory::create_pbf_vector(RS2_FORMAT_YUYV, map_supported_color_formats(RS2_FORMAT_YUYV), RS2_STREAM_COLOR)); } - } - - if (_pid == ds::RS465_PID) - { - color_ep.register_processing_block({ {RS2_FORMAT_MJPEG} }, { {RS2_FORMAT_RGB8, RS2_STREAM_COLOR} }, []() { return std::make_shared(RS2_FORMAT_RGB8); }); - color_ep.register_processing_block(processing_block_factory::create_id_pbf(RS2_FORMAT_MJPEG, RS2_STREAM_COLOR)); - } + } } void d400_color::register_metadata_mipi(const synthetic_sensor &color_ep) const diff --git a/src/ds/d400/d400-device.cpp b/src/ds/d400/d400-device.cpp index b2b33ae4f6..66846f4f5b 100644 --- a/src/ds/d400/d400-device.cpp +++ b/src/ds/d400/d400-device.cpp @@ -322,7 +322,6 @@ namespace librealsense case ds::RS400_PID: case ds::RS410_PID: case ds::RS415_PID: - case ds::RS465_PID: case ds::RS460_PID: preset_max_value = static_cast(RS2_RS400_VISUAL_PRESET_REMOVE_IR_PATTERN); break; diff --git a/src/ds/d400/d400-factory.cpp b/src/ds/d400/d400-factory.cpp index 9e95317542..72ae687670 100644 --- a/src/ds/d400/d400-factory.cpp +++ b/src/ds/d400/d400-factory.cpp @@ -867,50 +867,6 @@ namespace librealsense } }; - class rs465_device : public d400_active, - public d400_nonmonochrome, - public d400_color, - public d400_motion, - public ds_advanced_mode_base, - public firmware_logger_device - { - public: - rs465_device( std::shared_ptr< const d400_info > const & dev_info, bool register_device_notifications ) - : device( dev_info, register_device_notifications ) - , backend_device( dev_info, register_device_notifications ) - , d400_device( dev_info ) - , d400_active( dev_info ) - , d400_color( dev_info ) - , d400_motion( dev_info ) - , d400_nonmonochrome( dev_info ) - , ds_advanced_mode_base( d400_device::_hw_monitor, get_depth_sensor() ) - , firmware_logger_device( - dev_info, d400_device::_hw_monitor, get_firmware_logs_command(), get_flash_logs_command() ) - { - } - - std::shared_ptr create_matcher(const frame_holder& frame) const override; - - std::vector get_profiles_tags() const override - { - std::vector tags; - auto usb_spec = get_usb_spec(); - bool usb3mode = (usb_spec >= platform::usb3_type || usb_spec == platform::usb_undefined); - - int width = usb3mode ? 1280 : 640; - int height = usb3mode ? 720 : 480; - int fps = usb3mode ? 30 : 15; - - tags.push_back({ RS2_STREAM_COLOR, -1, width, height, RS2_FORMAT_RGB8, fps, profile_tag::PROFILE_TAG_SUPERSET | profile_tag::PROFILE_TAG_DEFAULT }); - tags.push_back({ RS2_STREAM_DEPTH, -1, width, height, RS2_FORMAT_Z16, fps, profile_tag::PROFILE_TAG_SUPERSET | profile_tag::PROFILE_TAG_DEFAULT }); - tags.push_back({ RS2_STREAM_INFRARED, -1, width, height, RS2_FORMAT_Y8, fps, profile_tag::PROFILE_TAG_SUPERSET }); - tags.push_back({ RS2_STREAM_GYRO, -1, 0, 0, RS2_FORMAT_MOTION_XYZ32F, (int)odr::IMU_FPS_200, profile_tag::PROFILE_TAG_SUPERSET | profile_tag::PROFILE_TAG_DEFAULT }); - tags.push_back({ RS2_STREAM_ACCEL, -1, 0, 0, RS2_FORMAT_MOTION_XYZ32F, (int)odr::IMU_FPS_100, profile_tag::PROFILE_TAG_SUPERSET | profile_tag::PROFILE_TAG_DEFAULT }); - - return tags; - }; - }; - class rs400_imu_device : public d400_motion, public ds_advanced_mode_base, public firmware_logger_device @@ -1118,8 +1074,6 @@ namespace librealsense return std::make_shared< rs435_device >( dev_info, register_device_notifications ); case RS435I_PID: return std::make_shared< rs435i_device >( dev_info, register_device_notifications ); - case RS465_PID: - return std::make_shared< rs465_device >( dev_info, register_device_notifications ); case RS_USB2_PID: return std::make_shared< rs410_device >( dev_info, register_device_notifications ); case RS400_IMU_PID: @@ -1240,16 +1194,6 @@ namespace librealsense return matcher_factory::create(RS2_MATCHER_DEFAULT, streams); } - std::shared_ptr rs465_device::create_matcher(const frame_holder& frame) const - { - std::vector streams = { _depth_stream.get() , _left_ir_stream.get() , _right_ir_stream.get(), _color_stream.get() }; - // TODO - A proper matcher for High-FPS sensor is required - std::vector mm_streams = { _ds_motion_common->get_accel_stream().get(), - _ds_motion_common->get_gyro_stream().get()}; - streams.insert(streams.end(), mm_streams.begin(), mm_streams.end()); - return matcher_factory::create(RS2_MATCHER_DEFAULT, streams); - } - std::shared_ptr rs416_device::create_matcher(const frame_holder& frame) const { std::vector streams = { _depth_stream.get() , _left_ir_stream.get() , _right_ir_stream.get() }; diff --git a/src/ds/d400/d400-nonmonochrome.cpp b/src/ds/d400/d400-nonmonochrome.cpp index 2b9fa2ba53..a4ae4e0c69 100644 --- a/src/ds/d400/d400-nonmonochrome.cpp +++ b/src/ds/d400/d400-nonmonochrome.cpp @@ -29,13 +29,13 @@ namespace librealsense auto pid = dev_info->get_group().uvc_devices.front().pid; auto& depth_ep = get_depth_sensor(); - // RGB for D455/D465 from Left Imager is available with FW 5.12.8.100 - if ((val_in_range(pid, { RS455_PID , RS465_PID })) && (_fw_version < firmware_version("5.12.8.100"))) + // RGB for D455 from Left Imager is available with FW 5.12.8.100 + if ((val_in_range(pid, { RS455_PID })) && (_fw_version < firmware_version("5.12.8.100"))) return; - if ((_fw_version >= firmware_version("5.5.8.0")) && (!val_in_range(pid, { RS_USB2_PID, RS465_PID }))) + if ((_fw_version >= firmware_version("5.5.8.0")) && (!val_in_range(pid, { RS_USB2_PID }))) { - if (!val_in_range(pid, { RS405_PID , RS455_PID, RS465_PID })) + if (!val_in_range(pid, { RS405_PID, RS455_PID })) { depth_ep.register_option(RS2_OPTION_ENABLE_AUTO_WHITE_BALANCE, std::make_shared>(get_raw_depth_sensor(), @@ -53,7 +53,7 @@ namespace librealsense depth_ep.register_processing_block(processing_block_factory::create_pbf_vector(RS2_FORMAT_UYVY, map_supported_color_formats(RS2_FORMAT_UYVY), RS2_STREAM_INFRARED)); - if (!val_in_range(pid, { RS405_PID , RS455_PID, RS465_PID })) + if (!val_in_range(pid, { RS405_PID , RS455_PID })) get_depth_sensor().unregister_option(RS2_OPTION_EMITTER_ON_OFF); if ((_fw_version >= firmware_version("5.9.13.6") && diff --git a/src/ds/d400/d400-private.cpp b/src/ds/d400/d400-private.cpp index cb083d6339..eda4f47a17 100644 --- a/src/ds/d400/d400-private.cpp +++ b/src/ds/d400/d400-private.cpp @@ -45,7 +45,6 @@ namespace librealsense case RS415_PID: case RS416_RGB_PID: case RS435_RGB_PID: - case RS465_PID: found = (result.mi == 5); break; default: diff --git a/src/ds/d400/d400-private.h b/src/ds/d400/d400-private.h index 71cea20fb9..8c035bc305 100644 --- a/src/ds/d400/d400-private.h +++ b/src/ds/d400/d400-private.h @@ -32,7 +32,6 @@ namespace librealsense const uint16_t RS435I_PID = 0x0b3a; // D435i const uint16_t RS416_PID = 0x0b49; // F416 const uint16_t RS430I_PID = 0x0b4b; // D430i - const uint16_t RS465_PID = 0x0b4d; // D465 const uint16_t RS416_RGB_PID = 0x0B52; // F416 RGB const uint16_t RS405_PID = 0x0B5B; // D405 const uint16_t RS455_PID = 0x0B5C; // D455 @@ -58,7 +57,6 @@ namespace librealsense ds::RS435I_PID, ds::RS416_RGB_PID, ds::RS430I_PID, - ds::RS465_PID, ds::RS416_PID, ds::RS405_PID, ds::RS455_PID, @@ -74,7 +72,6 @@ namespace librealsense ds::RS430_MM_RGB_PID, ds::RS435_RGB_PID, ds::RS435I_PID, - ds::RS465_PID, ds::RS455_PID, ds::RS457_PID }; @@ -82,7 +79,6 @@ namespace librealsense static const std::set d400_hid_sensors_pid = { ds::RS435I_PID, ds::RS430I_PID, - ds::RS465_PID, ds::RS455_PID }; @@ -92,9 +88,7 @@ namespace librealsense ds::RS455_PID }; - static const std::set d400_hid_bmi_085_pid = { - RS465_PID - }; + static const std::set d400_hid_bmi_085_pid = { }; static const std::set d400_fisheye_pid = { ds::RS400_MM_PID, @@ -125,7 +119,6 @@ namespace librealsense { RS435I_PID, "Intel RealSense D435I" }, { RS416_PID, "Intel RealSense F416"}, { RS430I_PID, "Intel RealSense D430I"}, - { RS465_PID, "Intel RealSense D465" }, { RS416_RGB_PID, "Intel RealSense F416 with RGB Module"}, { RS405_PID, "Intel RealSense D405" }, { RS455_PID, "Intel RealSense D455" }, @@ -153,7 +146,6 @@ namespace librealsense {RS435I_PID, "5.12.7.100" }, {RS416_PID, "5.8.15.0" }, {RS430I_PID, "5.8.15.0" }, - {RS465_PID, "5.12.7.100" }, {RS416_RGB_PID, "5.8.15.0" }, {RS405_PID, "5.12.11.8" }, {RS455_PID, "5.13.0.50" }, diff --git a/src/ds/ds-calib-parsers.cpp b/src/ds/ds-calib-parsers.cpp index aa1e478576..4403dd52b4 100644 --- a/src/ds/ds-calib-parsers.cpp +++ b/src/ds/ds-calib-parsers.cpp @@ -164,13 +164,6 @@ namespace librealsense _def_extr = { { 1, 0, 0, 0, 1, 0, 0, 0, 1 },{ -0.03022f, 0.0074f, 0.01602f } }; _imu_2_depth_rot = { { -1,0,0 },{ 0,1,0 },{ 0,0,-1 } }; } - else if (_pid == ds::RS465_PID) - { - // D465 specific - Bosch BMI085 - // TODO - verify with mechanical drawing - _def_extr = { { 1, 0, 0, 0, 1, 0, 0, 0, 1 },{ -0.10125f, -0.00375f, -0.0013f } }; - _imu_2_depth_rot = { { 1,0,0 },{ 0,1,0 },{ 0,0,1 } }; - } else // unmapped configurations { // IMU on new devices is oriented such that FW output is consistent with D435i diff --git a/unit-tests/live/dfu/test-device-fw-compatibility.py b/unit-tests/live/dfu/test-device-fw-compatibility.py index 8587886709..c705e72070 100644 --- a/unit-tests/live/dfu/test-device-fw-compatibility.py +++ b/unit-tests/live/dfu/test-device-fw-compatibility.py @@ -40,7 +40,6 @@ '0B3A': d400_fw_min_version_2, # D435I '0B49': d400_fw_min_version_1, # D416 '0B4B': d400_fw_min_version_1, # D430I - '0B4D': d400_fw_min_version_2, # D465 '0B52': d400_fw_min_version_1, # D416_RGB '0B5B': d400_fw_min_version_3, # D405 '0B5C': d400_fw_min_version_4 # D455