Skip to content

d500: hide AE-Setpoint control in viewer and reject it via advanced-mode API - #15421

Merged
Nir-Az merged 1 commit into
realsenseai:developmentfrom
Binyaminp:remove-ae-setpoint-d500
Jul 21, 2026
Merged

Nir-Az merged 1 commit into
realsenseai:developmentfrom
Binyaminp:remove-ae-setpoint-d500

Conversation

@Binyaminp

@Binyaminp Binyaminp commented Jul 15, 2026 •

Copy link
Copy Markdown
Contributor

Overview: Hides the AE-Setpoint (Mean Intensity Set Point) control for D500-family devices in the RealSense Viewer, and makes the advanced-mode API reject it explicitly instead of silently no-op'ing.

Tracked on [RSDEV-12601]

Why

AE-Setpoint (STAEControl::meanIntensitySetPoint) only applies to the D400 AE V1 algorithm. D500-family devices (D555, D585, etc.) use a different enhanced/HKR Depth AE that ignores it, so changing the value from the viewer had no visible effect and read as a bug to customers (see RSDEV-11758).

Summary

  • Viewer: the "AE Control" section (setpoint slider) inside Advanced Mode's Advanced Controls is now hidden for D500-family devices, reusing the existing _is_d500_device check (previously only D457 was excluded).
  • SDK: ds_advanced_mode_base::set_ae_control() now throws for D500 product-line devices, so callers going through the C/C++ advanced-mode API directly (not just the viewer) get an explicit error instead of a silent no-op.

Test plan

  • Built realsense2 and realsense-viewer (Release, MSVC) successfully with the change.
  • Manual verification on D585S: confirm the AE Control/setpoint slider no longer appears in Advanced Mode.
  • Manual verification on D435I: confirm the AE Control/setpoint slider still appears in Advanced Mode.
  • Manual verification that set_ae_control() throws when called on a D500-family device via the API.

🤖 Generated by AI

…ode API

AE-Setpoint (STAEControl::meanIntensitySetPoint) only applies to the
D400 AE V1 algorithm; D500-family devices use a different enhanced
Depth AE that ignores it, so the value silently had no effect.
Hide the slider in the viewer's Advanced Mode dialog and make
set_ae_control() throw for D500 product line so non-UI callers get
an explicit error instead of a silent no-op.
@Binyaminp
Binyaminp requested a review from Nir-Az July 19, 2026 13:02
@Binyaminp Binyaminp closed this Jul 19, 2026
@Binyaminp Binyaminp reopened this Jul 19, 2026

void ds_advanced_mode_base::set_ae_control( const STAEControl & val )
{
if( _dev->get_info( rs2_camera_info::RS2_CAMERA_INFO_PRODUCT_LINE ) == "D500" )

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please make sure on D400 and D500
Visual preset change on viewer works well
Need to make sure this function is not called

@Nir-Az
Nir-Az merged commit a2db341 into realsenseai:development Jul 21, 2026
59 of 61 checks passed
@Binyaminp
Binyaminp deleted the remove-ae-setpoint-d500 branch July 23, 2026 05:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants