Can I switch my monitor’s picture preset with a shortcut?
Yes, if the monitor accepts a DDC command for that preset and your connection passes it through. BetterDisplay can send the command from a custom DDC control or the CLI, which you can then use in a keyboard shortcut. A preset being available in the monitor’s own menu does not guarantee that it can be selected through DDC.
Start with Settings > Displays > [display] > Device Control > DDC Control > Configure Controls… > Detect DDC Capabilities…. The capability report can help identify supported commands, but some monitors omit commands they actually accept. Use the monitor’s documentation or values verified for that exact model, rather than assuming the same code and values work everywhere.
For example, the ASUS PA32UCDM supports picture-mode command 0xdc, with decimal value 14 selecting User Preset 1 and 15 selecting User Preset 2. With a working DDC connection and BetterDisplay running, a CLI request for the first preset is:
betterdisplaycli set -name="ASUS PA32UCDM" -feature=ddc -vcp=0xdc -value=14
Replace the name with your display’s unique name. This is a model-specific example, not a universal picture-preset command. Check the monitor’s menu and visible result before assigning it to a shortcut. See CLI examples and Shortcuts integration for running the command from macOS Shortcuts.
For a custom DDC control, open Configure Controls… in the display’s DDC Control section, then choose Add Custom Feature…. Custom DDC features require Pro. The DDC configuration reference explains creating or selecting the shared custom control, assigning its hexadecimal command code, and setting the raw DDC data value.
Reading a preset and selecting it are separate operations. A reported value of 0 does not prove that writing 0 selects that preset. A monitor may report a value that it does not accept as a write command. In particular, do not rely on 0 to select the PA32UCDM’s User Preset 3. If a value has no effect, keep using the monitor’s menu for that preset until its writable command is established.